淘宝技术发展

行癫  Webx 是一个扩展性很强的框架,行癫在这个框架上插入了数据分库路由的模块、session 框架等. velocity 模版


一灯 类目属性合起来也是一个结构化的数据对象catserver 。类目属性合起来也是一个结构化的数据对象hesper(金星), 供淘宝的前后台系统调用。  


空闻大师   UIC(user information center),淘宝旅行(trip.taobao.com)和淘宝彩票(caipiao.taobao.com)两个新业务
五彩石项目发布之后,这帮工程师去三亚玩了几天。他们把淘宝的系统拆分成了如下架构:

淘宝技术发展_第1张图片

  其中 UIC 和 Forest 上文说过,TC、IC、SC 分别是交易中心(Trade Center)、商品中心(Item Center)、店铺中心(Shop Center),这些中心级别的服务只提供原子级的业务逻辑,如根据 ID 查找商品、创建交易、减少库存等操作。再往上一层是业务系统 TM(Trade Manager 交易业务)、IM(Item Manager 商品业务)、SM(Shop Manager,因为不好听,所以后来改名叫 SS:Shop System,店铺业务)、Detail(商品详情)。  

  拆分之后,系统之间的交互关系变得非常复杂,示意图如下:

淘宝技术发展_第2张图片

  系统这么拆分的话,好处显而易见,拆分之后每个系统可以单独部署,业务简单,方便扩容;有大量可重用的模块以便于开发新的业务;能够做到专人专事,让技术人员更加专注于某一个领域。这样要解决的问题也很明显,分拆之后,系统之间还是必须要打交道的,越往底层的系统,调用它的客户方越多,这就要求底层的系统必须具有超大规模的容量和非常高的可用性。另外,拆分之后的系统如何通讯?这里需要两种中间件系统,一种是实时调用的中间件(淘宝的 HSF,高性能服务框架)、一种是异步消息通知的中间件(淘宝的 Notify)。另外还有一个需要解决的问题是用户在A系统登录了,到B系统的时候,用户的登录信息怎么保存?这又涉及到一个 Session 框架。再者,还有一个软件工程方面的问题,这么多层的一套系统,怎么去测试它?

你可能感兴趣的:(框架,session,中间件,manager,velocity,服务框架)