阅读心得11:《【解密】京东B2B业务架构演变 》
本周阅读了老师推荐阅读的公众号:架构师中的推文《【解密】京东B2B业务架构演变》,感想如下:
前三周的阅读感想已经介绍了京东,在这里不在介绍京东了。那么什么是B2B呢,通过阅读百度百科得知:B2B(也有写成 BTB,是Business-to-Business的缩写)是指企业与企业之间通过专用网络或Internet,进行数据信息的交换、传递,开展交易活动的商业模式。它将企业内部网和企业的产品及服务,通过 B2B 网站或移动客户端与客户紧密结合起来,通过网络的快速反应,为客户提供更好的服务,从而促进企业的业务发展。
B2B 是指进行电子商务交易的供需双方都是商家(或企业、公司),她(他)们使用了互联网的技术或各种商务网络平台,完成商务交易的过程。电子商务是现代 B2B marketing的一种具体主要的表现形式。
B2B的模式只要有四种,垂直模式,综合模式,自建模式,关联模式。
正如文章中所提到,京东的B2B业务的定位是让各类型的企业都可以在京东的 B 平台上进行采购、建立采购关系。
京东和淘宝的区别就在于,京东有自己经营的商城,自营店,通过自己管控来保证商品的质量,而这就需要京东必须要有自己的业务系统做支撑,比如订单、商品、价格、用户、权限、审核等系统。
正如之前所提到的有关京东的技术,本次阅读这篇推文时,还是比较轻松,容易理解的,在京东搭建的B2B平台时,京东的架构不断升级,
在最新版的业务3.0架构中可见,多个业务功能模块公用一个数据库,虽然不同的业务系统有独自的数据库,但是有关公用的数据,如一些商品订单,商品价格。购物车等,都有自己的SOA服务的数据,单独存储在自己的数据库,订单有订单专门的数据库、商品有商品专门的数据库,服务之间互相不受影响。
从这里的存储层中进行拆分,需要对表进行拆分,通过阅读得知,京东B2B平台采用 jproxy(不支持分表)进行分库,按业务的相关主键 id,进行 hash(id)%count(分库数量),支持水平扩展。
甚至,京东B2B平台在搜索方面也选择了分布式查询,采用的是 elasticSearch 搜索进行支持,大大加快了查询速度,降低了系统架构的负载。
3.0版本的京东B2B平台主要是修改,包含服务层的抽取、业务和 SOA 分离,同时引入业务和工具组件。
通过阅读整篇文章可知,B2B业务架构所遵循的原则有1.稳定性原则:以稳定为中心,架构尽可能地设计简单, 清晰,不使用过度设计。2.抽象化,应用抽象化+数据库抽象化+服务抽象化。3.松耦合,这里指的是跨域调用异步化,超时时间。4.拆分,这里又回到了王建民老师第一节课所讲的,分而治之原则,由大化小,把稳定性的系统和不稳定的系统分离,应用层与数据层分离。
文章地址:
https://mp.weixin.qq.com/s?__biz=MzU1MzE2NzIzMg==&mid=2247486624&idx=1&sn=1601d21c8a77dca44936f4c7a5be4b32&chksm=fbf7bc4fcc8035591ed2382f0b4ffc3e86e39aa585dcd790baeb16504699e00fb656e4ee0c22&scene=21#wechat_redirect