Web 2.0 早已不是什么新话题。过去的几年内,知名度高如 Google、Yahoo、MySpace、PayPal 等大站,也都无法完全免疫,而陆续爆发过各种攻击事件(钓鱼、虫…)。Web 2.0 网站不管是选择用 AJAX 、Flash,还有逐渐风行的离线解决方案,如 Dojo Offline、Google Gears 、Adobe AIR 等,来提供互动性更高的 UI,只要一不小心,这些 Web 应用出现安全漏洞、被坏人占便宜的机率,其实是很高的。有时候不仅是自己的 code,而问题也可能出现在第三方提供的现成工具箱、API。
要如何防范?对网站开发人员而言,在过去,对这个主题的探讨,往往比较零散,要不就偏学术,要求较高的门槛(例如 OWASP 发表的文献),一直缺乏系统化,全面性,且深入浅出的探讨。不久前终于出了一本好书 — AJAX Security,作者为 Billy Hoffman 和 Bryan Sullivan 这两位 Web 2.0 安全的专家(过去在零星的安全相关报道中,也常出现他们两位的影子)。在此强烈推荐这本书,给所有从事与 Web 2.0 开发相关的网友。尽管书名选择叫 "AJAX" Security,但事实上,除了 AJAX 之外,Flash 安全,甚至于如何将 CSS 这种看似无害、展现层的东西,拿来攻击的方法,在书中都有深入探讨(第十二章)。尽管这样的书,早该出现,但出版时间晚,反而也做出一些额外的贡献 — 比较新的科技,如上述的 Google Gears 和 Dojo 离线工具箱的安全弱点,在书中都涵盖了。希望它尽快能被翻译成中文,以造福更多大众。
more »
无巧不成 blog。
大约在半年前写过关于 PaaS (Platform as a Service) 和亚马逊的 AWS (可谓 PaaS 鼻祖)。上周有位记者朋友向我询问相关信息,打算做个深入报道。同样在上周,看到有篇 blog,谈到一个马路消息,说 Google 很快就要开始“抢亚马逊” 的午餐了。当时看了以后,只觉得这个可能性的确存在,但不知何时才会发生。没想到来得这么快 – 几个小时前,华尔街日报报道,Google 也将开始做基础设施租赁的生意。
亚马逊最早开发 AWS 的念头来自于 — 既然我自己能把基础设施玩得这么好,为什么不干脆把它松耦合化,当成一门生意 outsource 出去?Google 玩基础设施、计算机中心这方面的效率是出了名的(之前也写过),这是他们的核心竞争实力,对公司财务报表的 bottom-line,带来很大的贡献,放眼 Web 的世界,可说无人能敌。所以本着同样的论点,Google 可说非常有资格做 PaaS 这门生意。
more »
REST 是好东西,但受到两个问题的拖累。
之前已经写过一些对 REST 的简介和看法。不久前恰好又在中文版的 infoQ 网站上看到一篇刚翻译成中文的文章,发现一些问题,于是又把整个 REST vs. SOAP 的论战再仔细看过一遍,刀光剑影,娱乐性十足。好消息是,最近这几个月,比较耸动或炒作性的 REST 话题似乎开始从网站、杂志头版消失。就来回顾和总结一下,事情其实很简单,REST 是被两个问题给害了。
more »
注:这阵子参与编写一本专为下个月在上海的 BEAWorld 大会所准备的 SOA 专刊,因篇幅关系,部分内容无法纳入,在此将其以博客形式发表。
SOA 参考架构 (Reference Architecture) 是一个框架,使各个项目都有一个遵从的依据,借以促进一致性、最佳实践典范,和标准化。参考架构并不受限于目前的 IT 现况,而应该针对一个经过深思熟虑的愿景目标,可以说是 IT 指导未来所有的新开发工作,借以实现该目标的参考依据。一般来说,2-3 年的规划,是一个比较合适的涵盖范围,既能提供足够的时间来达成面向服务的转型,而又不至于过于长远而虚幻。因此,参考架构提供了一个沟通目标愿景的方法,协助部门和角色各异的 IT 人员,逐渐朝向该目标会合。
高效的 SOA 需要采用新的方法来对待 IT 基础设施,并且根据个别企业的需求来量身定做,并将服务基础架构、共享的技术服务、安全服务,以及信息/数据、和遗留系统访问服务等,全部定义在内。
more »
注:这阵子参与撰写一本专为下个月在上海的 BEAWorld 大会所准备的 SOA 专书,以下将我所写的部分整理摘录。

SOA 承诺许多美好的愿景,IT 体质经过调养,转变成敏捷、灵活,能快速响应业务需求的有机体。但如果只有一个崇高的目标远景,却缺乏一套有效的体制和方法,千头万绪不知从何入手,那么愿景将持续是高远的愿景,依然是那么地遥不可及。
建设一个企业级的面向服务架构,不论在规划、施工、运维,乃至于监管和治理 (Governance) 这些关键课题上,都能从多年来在城市建设领域所积累的经验和教训中,得到许多借镜。
more »
[10/19/2007 更新]
以前写过一个关于 Amazon Web Services (AWS) 的帖子,这应该算是第一个对 Web 2.0/SOA 基础设施租赁市场的大规模尝试。不久前接受 iTHome 采访,起因于微软的 Internet Service Bus,一个小规模、提供给开发者作实验性的尝试。
我对 AWS 、以及它所试探的潜在市场,基本上乐观其成,自从 AWS 推出 S3, SQS 和 EC2 后,已经出现了许多有趣的加值应用,例如有人用它来建构新一代的 B2B/EDI VAN,Doug Kaye 在这个 podcast 中,则侃侃而谈,说明如何利用 AWS 的基础设施,设计出 GigaVox 这个 podcast 平台的架构。在 podcast 讨论中,Kaye 除了讲解他如何善用 Amazon 出租的数据服务 S3,中介消息服务 SQS,和建立在 Xen 上的虚拟化平台 EC2,来设计出他的应用架构外, 还谈到作为一个 early adopter,所遇到的种种限制问题,如何克服,更提供了 Amazon 未来对 AWS 的改进参考。不意外,就像所有软件一样,这种直接通过网络租用的软件服务,目前仍属于非常早的阶段,当然还有不少可进一步完善的空间。这类的案例,非常有助于我们对此类服务的完备和成熟程度,进行更客观的理解。
more »
观察过去一年 SOA 在美国的发展,一个愈来愈明显的趋势是,SOA 和传统 EA (Enterprise Architecture;企业架构) 领域逐渐在协作和融合。不久前,美国知名的 SOA 顾问大卫·林锡肯,David Linthicum 在一个由 The Open Group 主办的大会上预言:五年后,大家将不再像现在这么看待 SOA,因为 SOA 将逐渐融入 EA,变成只是 EA 实践中的一部份。此话一出,引发各方激烈的讨论。
对于绝大多数 IT 从业人员来说,”EA” 一直是个模糊而遥远的名词,尽管它已经悄悄存在约二十来年了(这点,从 EA 相关书籍数量之少,便可看出)。在许多世界五百强、一千强的大企业中,尽管在 IT 中存在着 EA 的组织,但这些架构师在组织外的其他 IT 同事眼中,往往是一小撮象牙塔里的文书官僚 (paper-pushers),对于他们实际的工作内容,往往非常陌生,也不关注;许多项目实施团队,对于 EA 架构小组所制定的各种标准和规范,甚至采取 “上有政策,下有对策” 的态度。
more »
去年我曾用 Google Trends(提供英文和简体中文两种接口),来一探 SOA 和 Web 2.0 的市场热度。今天再次利用 Google Trends,外加百度指数,来试探一下 SOA 和 EA(Enterprise Architecture;想在下篇探讨的主题)各自的温度,除了有些在去年就看到的趋势之外,另一方面也印证了我和同事刘松等在市场上观察到的现况,此外还有一个纯属巧合的有趣现象。

more »
2005 年底,著名 IT 分析机构 Gartner 的一个分析师 Nick Gall 发明了一个新词 — WOA (Web-Oriented Architecture) 。大家知道,发明新缩写字 (acronym) 一向是 Gartner 的绝活。几个月后,SOA 界著名的 blogger 和专栏作家 Dion Hinchcliffe 对它表示支持,他甚至画了一幅图,说明基于 SOAP 和 WS-* 的 Web services,和基于 REST、POX和 JSON 的 WOA,以及其他 SOA 相关科技,在复杂度和丰富程度上的比较。
本以为 “WOA” 的命运,差不多已经和先前广遭声讨的 “SOA 2.0” 一样,开始消声匿迹,但最近在一片大谈 REST 声中(前两篇帖子的主题),发现 WOA 已死灰复燃。
more »
REST 的最大价值,在于它的简约;只要遵循上回帖子中提到的几个基本原则,便可直接充分利用 HTTP 和 Web 服务器先天具备的架构优势,包括 GET 的请求会被 Web 服务器有效地缓存,和因不需要维系各别的会话状态,而达到非常高的伸缩性。Google 和 Amazon 等所提供的 Web services,是最好的明证。这是 REST 的拥护者津津乐道的论点。
但如果照目前的气氛继续发展下去,过分炒作“REST 是比 SOAP 更适合于 SOA 的技术实现手段”、“SOA 未来的希望在 REST”这类危险的观念(上回谈的主题),其最终的结果,可能是既伤害了 REST,又对 SOA 没好处的双输局面。
more »