Google Appengine是要闹哪样?

之前一个多月,我无意间发现ghs.google.com被解封了,虽然这导致俺的blog被各种国内的爬虫拿走去挂广告了,但也确实重燃了我好好写写这个blog的欲望。

有点小小奇怪的是,这件事情仿佛在墙 内并没有掀起多大波澜,看来ghs实在是被封了太久了,加上云计算服务现在日新月异,半死不活的Appengine看来是被大多数人忘记了吧……

然而前几天又收到了Appengine官方的信, 说“Google App Engine Leaving Preview”。

然后就公布了新的计价表,令我吃惊的是,就Perlfect这么一个根本没人访问的blog居然在新的计价机制下面一天也得产生0.5美元左右的费用,还不包括所谓的9刀每月每app的固定费用。看到这信,我心里只有一个想法,太坑爹了……

app_billing

难不成今年Amazon AWS的事故频出让Google看到了商业化云计算平台的希望,在Appengine上又加了一把力?可现阶段来说,Appengine确实很难用,离Amazon的AWS的距离也不是一两天的事。何况,在Appengine平台上目前根本就没有杀手级应用的情况下,急匆匆地开始收费只会赶跑用户。

倒不是说我这个中国网民习惯了免费不愿意付钱,问题就在于以Appengine目前的用户友好程度和可扩展度,根本不会有人愿意一年掏超过180刀的费用。就拿写blog来说,Appengine不支持php,所以没法用Wordpress,我现在用的micolog使用python写得,虽然还算好用,但是跟Wordpress比,无论是既有功能还是可扩展性方面都差了不止一点。更不用说ghs三天两头被封,又不支持绑定顶级域名……真要让我花这么多钱,肯定考虑加点钱自己租空间了。

 

闲话不多说,在不甘心也不想花时间折腾换主机之类的事情的情况下,查看了一下新的定价和billing history,发现Perlfect Blog的主要的费用都花在Frontend Instance Hour上了,我想这个其实是之前的CPU-time的一部分,奇怪的是之前我的CPU使用一向离免费的限额还有很远,现在居然天天超……

看了一下Pricing的FAQ

Frontend Instance: An instance running your code and scaling dynamically based on the incoming requests but limited in how long a request can run.

也许micolog的实现确实代码不算太高效,但我的这个blog其实基本上没有流量……

于是有查看了一下Appengine发来的email里的一篇关于优化和降低成本的文章:Optimization Article

发现一些tips,给其他使用micolog的同学们参考:

  • Set the X-AppEngine-FailFast header on tasks that are not latency sensitive. This header instructs the Scheduler to immediately fail the request if an existing instance is not available. The Task Queue will retry and back-off until an existing instance becomes available to service the request. However, it is important to note that when requests with X-AppEngine-FailFast set occupy existing instances, requests without that header set may still cause new instances to be started.
  • Configure your Task Queue's settings(Java, Python).
    • If you set the "rate" parameter to a lower value, Task Queue will execute your tasks at a slower rate.
    • If you set the "max_concurrent_requests" parameter to a lower value, fewer tasks will be executed simultaneously.
  • Use backends(Java, Python) in order to completely control the number of instances used for task execution. You can use push queues with dynamic backends, or pull queues with resident backends.

 

这里面看起来最容易的就是第二条了,于是改改queue.yaml:

Index: queue.yaml
===================================================================
--- queue.yaml  (revision 10)
+++ queue.yaml  (working copy)
@@ -1,8 +1,8 @@
 queue:
 - name: default
-  rate: 1/s
+  rate: 1/m
 - name: mail-queue
-  rate: 2000/d
+  rate: 24/d
   bucket_size: 10
 - name: import
-  rate: 1/s
\ No newline at end of file
+  rate: 1/m

希望至少还能让我先免费用着把……

当然,新的价目表上依然还有Free的选项,而且我也没有升级到收费账户,就是不知道真正开始实施之后还有没有免费账户这么一说了,还是说免费的流量用光了之后自动被停。

至少目前在我看来,在目前的情况下,我唯一能接受的就是让Google在我的blog上免费挂一个Adsense,你不找我收钱,我也不靠着这个赚你的钱,行么?

 

---------------

PS:写完这个发现ghs好像又被封了……法克GFW…

本文网址:http://blog.perlfect.me/2011/09/10/google-appengine-leaving-preview.html

comments powered by Disqus