淘宝网启动开发平台战略及 TOP 应用大赛

  • 霍泰稳

2009 年 9 月 2 日

话题:JavaREST架构语言 & 开发

昨天淘宝网在北京召开“赢在淘宝——TOP 应用大赛暨淘宝动力启动大会” 活动,对外宣布了其开放平台战略,以及和该战略相配合的应用大赛。自今年 6 月初淘宝开放平台试开放以来,注册人员已经超过 1 万,提交了上千个新应用,API 数据的调用也超过 7000 多万次,并产生了一些受欢迎的插件,比如“店掌柜”、“淘里淘外”、“好店铺”统计软件和基于移动设备的购物等。

2009 年也是阿里巴巴创立的第十年,而淘宝网自 2003 年成立以来,目前的年营业额已经超过 2000 亿,马云在年初也决定对淘宝网再追加 20 亿的投资。在大会上,淘宝网副总裁路鹏也谈到口碑网现在也已经被纳入其“大淘宝战略”,他表示大淘宝将打造一个完整的生态环境:

淘宝网的下一步是从一个网站到一个平台,成为电子商务领域的一个基础服务商。淘宝网变革的原因在于整个互联网大环境已有巨大的变换,而大淘宝战略的核心是开放,大淘宝将打造一个完整的生态环境,和合作伙伴一起共生共荣。

作为整个大淘宝战略的技术支持平台,TOP(Taobao Open Platform,淘宝开放平台)是原 JBoss 核心团队成员王文彬博士加入淘宝网并主持其技术研发工作的重心,在演讲中,他将淘宝开放平台归纳为两个平台和三条业务线:

针对普通用户和开发者的开放平台Open.taobao.com,以及将在年底发布的针对商家及社区的应用平台 App.taobao.com。三条业务线包括开放业务——以 OpenAPI 形式开放的淘宝网电子商务基础服务(如用户、产品、类目、交易和评价等),开放自有软件——淘宝网自有的开放式应用平台(如旺铺插件平台、淘江湖插件平台等),和开放对外接入标准——对第三方应用平台的开放式基础支持(如现有 SNS 网站、社区等)。

在大会间隙,InfoQ 中文站编辑也就 TOP 相关的几个话题独家采访了王文彬博士。在谈到整个 TOP 研发团队的组成、开发环境和开发过程时,他解释说:

TOP 所用的语言是 Java,这算是一个独立的项目。要知道,单纯地开放数据很简单,但淘宝开放平台的开放是综合性的,包括数据,包括流程,包括业务等。相比于国外的交易系统,我们国内还是比较复杂的,比如一定要有一个担保流程等。我们现在就是要将这个流程也开放出去。另外我们要支持插件,比如在淘江湖平台,你可以自己选择所需要的插件。第三点就是 TOP 还要支持外部的网店,还包括无线等。TOP 的开发环境和设计方法,都是典型的 Java 环境,没有什么特殊的,不同之处只是交互性比较多,验证和安全性考虑的比较多。

对于用户比较关心的数据和系统的安全性,TOP 通过沙箱模式给开发人员提供一个不影响正常系统运行的测试环境:

沙箱模式看起来不是很复杂,但事实上它就是一个小淘宝的环境,“麻雀虽小五脏俱全”。在正式上线之前,你的任何应用和功能都可以在里面自己玩,淘宝网给你提供一个隔离的环境,以保证整个系统的安全性。

那么 TOP 和国外其他的平台,如 Facebook、OpenSocial、Twitter 等在技术层面上有何异同?王文彬谈到了淘宝网的技术选项之路:

淘宝网的这个开放平台是调用自己的服务框架,这个服务框架也是我们综合了多种方案,根据淘宝网的需求而开发的。决定研发和推出 TOP 之前,我们也研究了国际上比较流行的平台,但只是在产品层面上,对于技术层面上了解的很少。比如我们研究亚马逊的流程是如何处理的,Facebook 的插件机制是如何做的等等,而至于如何去实现这些产品,都是我们自己一步一步摸索出来的。

说到技术选型,我们开始是希望基于 REST 实现 TOP,但真要实现起来不是一件容易的事情。讨论来讨论去,意见从开始时的支持多种形式,到最后决定先实现 REST,然后就是做一些具体的东西。开放平台中有一个需要注意的地方,就是如何让要参与其中的人走通流程,比如一个开发者,他如何进来?如何去做开发?开放后的应用又如何上线?等等。虽然我们的 TOP 有些成绩,但还是有人提到不足之处,我们还需要加强。最终的效果是让开发者感觉 TOP 非常简单,遇到任何问题,都可以非常容易找到合适的人,比如技术支持,比如分成机制等。

对于淘宝开放平台的下一步目标,王文彬提到,在接下来的一段时间,他们首先会对目前的一些接口进行包装,让开发人员能够更容易地开发。对 TOP 团队来说,技术很重要,但是产品的易用性更重要,因为只有平台好用,对用户才更有用。另外,为了凸显技术支持的价值,在未来,淘宝网开放平台团队还有可能模仿国外技术厂商的通常做法,对技术支持等服务进行收费。

在 9 月 1 日的北京活动和 9 月 8 日的上海活动之后,淘宝网还将于 15 日在深圳举行“赢在淘宝 -TOP 发布暨淘宝动力启动大会”,欢迎 InfoQ 中文站的读者报名参加

JavaREST架构语言 & 开发