今天干了两件事情,第一件使用fetch_url抓取快递公司数据的时候增加了memcache的操作。fetch_url比较昂贵,另外接口api的响应状况不是很好。代码大致是这样子。
$mmc = memcache_init();
$key = hash("sha512", $url);
$content = $mmc->get($key);
if (!$content) {
$f = new SaeFetchurl();
$content = $f->fetch($url);
if ($content === false) {
var_dump($f->errno(), $f->errmsg());
} else {
$mmc->set($mmc, $key, $content, 60);
}
}
第二件,定时任务走task queue。SAE的task queue api和GAE的类似,不过现在有点不给力的是并发Queue长度太小,第二传递的参数的类型定义的是一个string,而不是一个array。
express.sinaapp.com是在我在SAE做的一款应用,主要是用来跟踪快递,结合现在的sina微博账号,进行反馈通知。呃,其实PHP对于我来说完全是从零开始,个人基本上是Java后端为主。呃,幸好PHP上手还算容易。
使用了SpeedPHP框架,差强人意。显然一开始就陷入框架里并不是一个什么好主意,不过PHP里面的框架要比Java里面的小的多。前端Javascript库使用了JQuery,恩,文档很多。
快递数据使用快递100提供的api,呃,不得不说快递公司的这些系统真是太烂了,接口稳定性很差,凑合着用。
SAE现在的在线编辑不支持版本管理,本地呢又没有开发工具,这个真是有点猥琐。提了建议给他们,据说是以后会支持git,不知道有没有打算支持本地开发环境。系统如果规模大一点,直接线上测试实在是有点不靠谱。
标签:
前不久拿到了一个SAE的邀请码,终于能够体验一把。不知道有多少人是和一样是为了用SAE而去学PHP。不过好在咱背景还过得去,好歹现在随便写写也没什么大问题。
GAE也尝试过,但是基于国内GAE访问的不稳定(这个GAE本省没关系,都是墙的问题),所以没办法把GAE当成正事来用。从基础服务上来说,SAE还是没有GAE够硬,但是它也有自身的优势。
第一个PHP,相对与JAVA和Python来说,PHP要更简单,而且PHP本身在web开发普及度就比较高。LAMP一直是原来的“黄金组合”。
第二个MySql,虽然SAE也是对数据库访问做了一层封装,但是它底层还是mysql。这和GAE的不同,GAE是基于google自己的Bigtable的,所以用惯了关系数据库的人要适应下BigTable的。
第三个就是国内访问的速度和稳定性了。
第三个与新浪自身的平台相结合,比如微博,SAE里面都提供了便利的封装。
云平台对于个人开发者和起步阶段的小公司都是一个很好的选择,在精力和经费都不足的情况下能有一个稳定专业的运行环境是很重要的一件事情。现在就是要看SAE的稳定性是不是能够经受的住考验。13号就被攻击了。另外就是看开始正式收费之后,是不是真的划算了。
今天本来是要在myopera里面把微博挂件加上去,结果发现其限制的太死了。想起了曾经的yo2,于是杀回来。自己写blog也没有什么坚持。偶尔为之,微博流行了,平时说说够了,100多个字很锻炼表达能力。哈哈,想起了韩峰的日结体。
标签: