bae-python架构升级了,性能提升较理想
:Baidu    :kukei    :2013-04-17 20:37:51
:评论(0)

上周bae-python架构升级了,就是在底层框架预加载各种类库,不需要每次访问都加在一次,这样页面的响应时间就打打提升了。根据我自己的感受,同一个应用,响应时间由2.5缩减到了500ms了。可是500ms的不是我想要的,因为在sae上这个应用耗时200ms不到,我希望优化后的耗时至少比sae的小。最后经过cache的优化我的应用耗时到了60ms。

同一个应用在sae上的地址http://quke.org,在bae上的地址://bae.quke.org,下面这张图片是在17ce.com上的速度比较的图片:


上图显示的应用为同一个程序,cache的缓存都打开了,缓存的内容也一样。我们可以看到大部分节点bae都比sae快,总体上bae获胜。

对于这次bae架构升级,虽然在速度上能让人满意,但是还是有几个担心:

1.应用需要预热,需要每个云上都在底层加在了共享的框架。但预热多少次不知道。

2.稳定性不足,就是预热以后仍然偶尔出现耗时2.5s打.....

SAE-Python版本正式对外开放了
:Python    :kukei    :2013-03-01 08:51:47
:评论(0)

昨天晚上登陆sae后得到一个推送的消息:

尊敬的用户,您好!
 SAE Python平台正式对外开放啦!
 SAE Python平台于2011年8月开始开发,2012年年初发布测试版,经过一年多的测试升级后,2013年2月底正式结束公测,对外开放。
 即日起,所有SAE用户均可自由创建Python应用。所有Python应用,除流量计费外,HTTP/HTTPS/Cron/TaskQueue的CPU计费项将完全免费。
 SAE Python平台具有以下特点:
  1,完全基于Python2.7,迁移成本低;
  2,完全支持主流框架,Django、Flask等;
  3,支持SAE所有服务,Cron、TaskQueue、KVDB、MySQL、Storage等;
  4,对于商业应用支持代码加密,用户可直接上传pyc;
  5,目前已经有近万应用在其上运行,经过SAE商业应用检验,可靠性高;
  6,低成本,目前仅针对流量做计费,而Python虚.....

SAE-Python版的静态文件终于支持gzip了。
:Sina    :kukei    :2012-12-21 23:16:29
:评论(1)

今天在邮件列表中看的有网友在讨论SAE-Python版的静态文件gzip问题,我以为还没支持,就呼吁了一下,谁知得到的回复是现在sae已经支持了gzip,在config.yaml中配置即可,而且文档上也有说明了,奇怪怎么没法更新列表呢?

地址:

http://appstack.sinaapp.com/static/doc/release/testing/runtime.html#id4

实现方式:

handlers:
- url: /static/
  gzip: on
  
- url: /a-big-file.txt
  gzip: on

我得到这个消息赶紧在sdlog上做了测试,很高兴确实gzip了。

看来我得向sae-python道歉,我错了。

sae-python加油。

扩展python版SAE的storage的api函数
:Sina    :kukei    :2012-09-30 18:07:10
:评论(1)

参考php版本的源代码http://apidoc.sinaapp.com/__filesource/fsource_sae__saestorage.class.php.html ,扩展读取目录,按目录读取文件,分页读取文件等功能。

REST操作地址:#define( 'SAE_STOREHOST', 'http://stor.sae.sina.com.cn/storageApi.php' );

这个地址是从php版本的库中找的,python库的源代码还看不到。

post上传文件插件:

https://github.com/seisen/urllib2_file

经验证使用urllib2_file插件上传文件没问题,使用代码如下:

postData = {'destfile':destFileName, 'srcFile':{'fd':srcFile.file, 'filename': destFileName}}
 
def open.....
我离开GAE后在SAE和BAE之间徘徊
:开发    :kukei    :2012-09-30 17:44:42
:评论(5)

08年谷歌开始提供GAE服务,我就开始接触了云计算和python,开发出了sdblog程序,以及一些周边的小工具,但是gae逐渐上不去之后,我也忙了一段其他事情,今年开始重新关注国内的云计算平台,比较知名的也就算sae和bae了。

sae:

网络:较快(我的是联通网络);

云存储:支持系统自带的云存储,支持按目录,按前缀,查询,支持分页查询,但是没看到缩略图的处理。这些操作都是基于REST的,但是没有见到操作协议或操作说明。另外python的api极其简陋,还好我们可以查看php的源代码重写python的storage的api。

CDN:对企业用户开放,需要1万豆才能用。

交流:依靠自有论坛,邮件列表。不过论坛每天发贴不超过200,不活跃。

优点:稳定,未备案域名政策明确,收费策略明确。

缺点:storage不够强大,比bae差。mysql不支持事务。


bae:

网络:时而很快,时而超时(最近发现超时的原因是memcache的初始化问题,也可能是.....

使用新浪微博账号做登陆验证
:Sina    :kukei    :2012-09-20 17:19:57
:评论(1)

敞开资料及使用的sdk

Sina Weibo 验证 Python客户端

http://michaelliao.github.com/sinaweibopy/

OAuth 2使用方法

https://github.com/michaelliao/sinaweibopy/wiki/OAuth2-HOWTO

http://code.google.com/p/sinaweibopy/wiki/OAuth2

技术文档

http://open.weibo.com/wiki/API%E6%96%87%E6%A1%A3_V2

注意问题:

1.本地调试时需要修改本机的host,xp的地址在“windows\system32\drivers\etc“目录。比如我要调试本站的微博登陆,就添加了一条记录127.0.0.1 test.quke.org,然后使用test.quke.org来登陆本地调试程序即可做本地的验证服务了,加端口也没问题。

2.所有API调用均为.....

收到SAE的中级开发者证书
:Sina    :kukei    :2012-09-13 14:43:54
:评论(4)

今天终于通过EMS收到了SAE的中级开发者证书,高兴中。

当时提供的程序就是现在用的这个博客程序,是用python语言开发,使用了django框架,运行在SAE云计算平台上开源博客程序SDLog。这个程序本来是在我的vps上开发测试的,用了SAE后就移植过来的,能得到认可很高兴,show下证书吧。


SAE上Storage的防盗链问题
:Sina    :kukei    :2012-09-03 18:02:44
:评论(1)

sae的Storage开启了防盗链功能以后发现UEditor中的图片无法显示了,这个问题已将发到Sae和Ueditor的论坛上了等待回复。

我初步估计是Ueditor编辑器在请求图片时没有提交求情者的域名,白名单中不允许这个网站的显示storage中的图片,我发现baidu空间的图片在编辑器中可以显示,反而在页面中无法显示,初步推断是防盗链设置的问题。

我不启用防盗链在Ueditor中是可以正常显示的。

原因

经过使用chrome的开发工具跟踪,比较,发现在编辑器中插入图片时是用javascript实现,此时的请求中没有包含“Referer“参数,而在能正确显示图片的地方都包含了此参数,而且此参数的域名内容都在Storage的白名单中,依次推断防盗链时应该是依据此参数来判断的。那么什么是Referer呢?

简言之,HTTP Referer是header的一部分,当浏览器向web服务器发送请求的时候,一般会带上Referer,告诉服务器我是.....

SAE的storage服务本地调试方式
:Python    :kukei    :2012-08-31 20:36:24
:评论(1)

sae发布了本地开发环境,但是不知道是我不会用还是本来就不支持,一直没法进行调试,所以我还一直使用pydev进行调试,但是pydev又不支持sae的一些参数,比如storage的host_name,文件本地目录等参数。经过扒代码,原来将这些放在环境变量中即可。

准备工作:

1.本地要有一个web服务,我装了个phpnow,在htdocs目录下建立stor-stub目录作为storage目录;

2.在eclipse的调试服务器中配置环境变量

变量名称变量值
HTTP_HOST127.0.0.1
STORAGE_PATH
F:/MyFiles/Php/PHPnow1.5/htdocs/stor-stub

具体参数值依赖你的web服务器和目录地址。

配置eclipse的图片如下:


SAE之Python版本上的gzip问题
:Web开发    :kukei    :2012-08-16 18:38:10
:评论(0)

django有gzip功能,因此由django负责生成的页面都没问题,可以进行gzip压缩,css,javascript,图片等静态文件就无法进项gzip压缩了。

sae的AppConfig虽然有gzip压缩的配置,可惜在文档中有说明“ 需要特别注意的是,SAE的AppConfig目前只适用PHP语言。”。

最近在sae-python的邮件列表中有人反馈,最近在考虑增加python版本的静态文件的gzip压缩功能,希望能尽快提供。

其实我隐约的感觉新浪对sae至少是python版本的重视不足。