剖析短迭代
敏捷教练Dave Nicolette提出:我们应该如何设定迭代长度?是要根据发布周期的时间么?使用短迭代又有哪些好处?
作者 Moxie Zhang译者 郭晓刚 发布于 2007年12月12日 上午12时39分
Zoho是一家在线办公及生产力软件公司,他们最近给基于AJAX的RIA旗舰产品Zoho Writer加上了离线能力。InfoQ采访了Zoho的Raju Vegesna,以了解增加离线功能的动机,技术平台的选择理由,得到的经验,以及未来无论在线还是离线的Zoho产品线。Raju认为,对Zoho来说,向离线发展的原因很简单:
我们估计有一成的在线用户希望在离线的时候也能继续工作。我们希望支持这一成Web用户。
接着,Raju介绍了对Zoho Writer进行离线扩展的一些背景信息:
在决定将Zoho Writer向离线发展之后,我们仔细研究了可行的技术选择和平台,包括Adobe AIR、Microsoft Silverlight,甚至包括还没发布的Firefox 3,它也带有离线能力。不过,作为基于AJAX的RIA Web应用提供商,我们认为一个真正的Web应用应该从本质上就支持HTML、CSS这些Web标准。我们当初选择JavaScript的最大原因就是它是天生属于Web的——我的意思是JavaScript的核心对象模型就是HTML/CSS文档对象模型。Flash虽然有优势,但它是属于浏览器之外的一个空间。从这个意义上说,Flash和客户端的Java没有太大不同。实际上,可以说要是客户端Java做对了,就是Flash这个样子。而且开源库对我们来说很重要。JavaScript库的深度和多样性也越来越好。
因此我们决定开发自己的一套东西,利用像SQLLite这样的技术。刚好这个时候Google Gears发布了。它是开源的,而且也是基于JavaScript的。我们也特别喜欢它的BSD许可。于是我们想与其开发新的一套东西,不如就用Google Gears,同时也可以给它做贡献。Google Gears就这样成了我们的离线平台,我们对这个决定很满意。
认识到RIA技术正在打破Web应用在线/离线的屏障,InfoQ向Vegesna询问什么是增加离线支持的最佳途径:
阶段性的、增量的方式对我们的成功很关键。我们没有一下就跳到离线。在第一阶段,当离线的时候Zoho Writer就变成只读的。然后我们进行第二阶段,允许编辑离线文档,也就是我们最近发布的。Zoho产品是基于服务器的Web应用。很多功能都依靠服务器端的处理。为了不走上歪路,小心地设计,逐步增加离线特性是很重要的。我们不会用别的方式来做。
Zoho也是SaaS的一员,除了Zoho Writer这样的终端产品,它也是通过Zoho APIs提供了应用开发平台。对于向离线发展会给使用Zoho APIs开发应用程序带来什么影响,Vegesna回答说:
目前,离线特性在API中是屏蔽掉的。也就是说所有第三方应用都只是在线的。即便在Zoho Writer中,也有一些特性是不能离线使用的,比如导出成PDF文件。作为一个Web应用,我们很重视用户体验。我们不希望为了让所有特性都能离线使用,而把产品搞得太复杂。
谈到将来:
我们会一直用Google Gears。我们有两个主要的产品类别,一个是以文件为中心的应用,另一个是以数据库为中心的应用。当完成Zoho Writer之后,我们的下一步是给这一类的其他产品也增加离线扩展。以数据库为中心的产品,比如CRM产品,也会经历同样的过程。
最后,Vegesna谈了对他们的服务端环境的看法:
在服务端我们都是用开源软件。我们用MySQL管理数据。服务端处理程序都是用Java编写的。应用服务器是Apache Tomcat的一个高度定制过的版本。我们在大约400台服务器上自己运营我们的应用程序,它们是64位的Linux。
Zoho,作为一家办公和生产力系列工具的提供商,他们将用户体验和平台开发都向前推进了一步。InfoQ将会继续关注他们的平台的新发展。
查看英文原文:Zoho Leverages Google Gears to Provide Offline Support for Ajax Applications本文主要讲述了如何用JBoss Portlet Container 和JBoss Portlet Bridge创建新项目,怎样配置一个JSF应用去使用JBoss Portlet Bridge,以及JBoss Portlet Bridge所具备的功能。
在这篇文章里,Bryon Jacob和Chris Berry将和我们继续探讨AtomServer,它是基于Apache Abdera的完整Atom存储实现。作者还创建了几个Atompub规范扩展,其中包括自动标记、批处理和Feeds聚合。
InfoQ中文站的电子杂志《架构师》试刊第二期出版了!相比于上期,我们在内容的选择安排和版式上都根据读者的意见重新做了修正。“细节决定成败”,我们希望基于InfoQ中文站的专业内容,《架构师》能逐渐成为大家喜欢的电子刊物!
在本文中,Steven Haines探讨了Web应用性能调优问题。该领域过去更像是一门艺术而不是一门科学。他提出了一种称为基于等待调优的方法,使整个调优过程更加可度量,也因此更具科学性。
通常来说,改变技术路线时最艰难的部分是辨别语言语法之间的不同。这篇文章就为Java开发者提供了一份如何转向Flex基础语言ActionScript的指南。
本视频主要以财帮子为例,介绍了如何创建一个PV为百万级的Rails应用。其中包括:Rails应用的服务器架构、Rails Cache的优化、负载均衡的处理、Web服务器的调试、分布式解决方案、Open API的设计等等。
InfoQ首席架构师Alexandru Popescu在采访中谈论了InfoQ架构、Webwork与DWR、Hibernate与JCR、Hibernate可扩展性、最新的InfoQ视频流系统和InfoQ的未来规划。
1 条回复
回复