程立谈架构、敏捷和SOA实践
支付宝首席架构师程立在本文分享了支付宝技术架构的发展,对架构的认识,成功架构的特点,如何避免架构设计的失败,以及在敏捷和SOA方面的实践等。
作者 Moxie Zhang译者 祁飞 发布于 2008年5月13日 上午8时55分
最近发布的Google 应用程序引擎预览版和AdobeOpen Screen项目的宣布引发了大家对Python和RIA的兴趣,上周发布的PyAMF 0.3.1,正好及时迎合了我们对这两者越来越浓的兴趣。
PyAMF是个开源项目,为Python提供了Action Message Format(AMF)的支持。这就可以在Python驱动的Web服务器和使用Flash、Flex或AIR的RIA(rich Internet application)客户端之间进行基于AMF的通信。
Google应用程序引擎(Google App Engine ——GAE)可以使开发者在与Google所使用的具有相同可伸缩性的系统上构建各种Web应用,这样一来,无需重建底层架构,Web应用就可以从单个用户扩展到上百万用户。PyAMF 0.3.1 的发布提高了对GAE的支持力度,同时还为GAE的Web应用引入了新的AMF网关。
Adobe的Open Screen项目进一步开放了核心的Adobe数据/文件格式(如SWF和FLV),以及基于Flash/Flex的RIA应用程序的基础元素。Adobe Integrated Runtime和Flash播放器使用AMF来在应用程序和远程服务器之间进行通信。AMF对远程过程调用(RPC)进行编码,编码后的压缩二进制表示方式能够在 HTTP/HTTPS或RTMP/RTMPS协议之上进行传输。PyAMF使得基于Flex的RIA应用程序的开发能够以GAE作为后端,这样就使RIA融入到了Google的云计算平台。
此次发布的PyAMF 0.3.1 还拥有许多特殊的特性,包括:
ARP Flex框架的创建者Aral Balkan已经开始重视PyAMF、GAE和Flex。Balkan宣布了一个使用PyAMF的GAE SWF 项目,该项目“既是一个Flash和Flex相关的知识资源,这些资源专门让你熟悉并开始迅速上手使用Google应用程序引擎;同时也是一个构建和部署可伸缩性极强的Flash与Flex应用程序的强大平台。”
其他有关PyAMF/GAE的项目包括Flex Python Shell和PyAMF Test Suite。
查看英文原文:New PyAMF Release Improves Support for Google App Engine
支付宝首席架构师程立在本文分享了支付宝技术架构的发展,对架构的认识,成功架构的特点,如何避免架构设计的失败,以及在敏捷和SOA方面的实践等。
作为一个有别于Java、Ruby等语言的一个特性,C#可以用索引器(Indexer)将类型本身以对象数组的形式供外部使用。同时,把索引器和LINQ结合使用倒是一个非常不错的组合,索引器做接口、LINQ完成内部检索逻辑,客户程序在无需记住具体方法名称的前提下,按照键值检索即可,索引器内部则依托LINQ to系列的基础,提供对各种异构数据源的访问。
Scrum中,产品负责人这个角色具有很大的影响力,能够带来很高的价值。但要想运用得当,可没那么轻而易举。如果做得好,就可以在客户和开发者之间建立更为融洽的关系,并能够增加组织的竞争优势。
在本书中,作者Henrik Kniberg讲述了他在一年的时间里,带领40人的团队实施Scrum的过程。他们试过了多种团队尺寸(3~12人)、sprint长度(2~6星期),定义“完成”的不同方式,不同的backlog格式,各种测试策略,在多个Scrum团队之间进行同步的多种方式。他们还尝试过XP实践——持续集成、结对编程、测试驱动开发等等,还试过了把XP跟Scrum组合。
准时化生产(Just In Time)是精益生产(Lean Production)和丰田生产系统(Toyota Production System)中的概念,敏捷开发与准时化生产中的很多观点和实践是一致的,精益思想作为精益生产背后的指导思想也正在积极地影响着软件开发领域,向其中不断注入创新与活力。
I. Drobiazko和R. Zubairov合作撰写了一篇文章,详细介绍Apache Tapestry 版本5——一个面向组件web框架。文章向读者展示了创建组件方法,并谈到了Tapestry中的IoC以及Ajax的相关特性。
没有回复
回复