途牛系统架构演进:从垂直到微服务的实践经验

需积分: 10 4 下载量 11 浏览量 更新于2024-07-19 收藏 1.77MB PDF 举报
“赵国光途牛系统架构演化实践GITC-下载版.pdf” 这篇文档主要介绍了途牛系统架构从垂直架构向微服务架构演进的实践经验,由途牛的首席架构师和技术委员会负责人赵国光分享。以下是文档内容的详细阐述: 首先,途牛的业务与系统整体情况被详细描述,其产品构成复杂,涵盖度假、机票、酒店等多个领域,具有频繁的价格变化和复杂的业务逻辑。由于涉及多种售卖场景和对接多供应商,系统需要处理各种团期、库存和支付等问题。此外,途牛的服务覆盖了APP、WEB、M站等多个平台,包括零售平台、数据适配层、接口代理等组件,以及一系列如度假、机票、酒店等业务模块。 在系统演化过程中,赵国光指出,早期采用的是垂直架构,每个业务部门都有自己的应用和系统,导致重复建设、系统间数据难以打通以及资源共享困难。为了解决这些问题,途牛开始进行微服务化转型。这个过程中,他们经历了服务的抽象、服务管理平台的建立,以及对服务管理、问题排查和沟通协同的重视。微服务化带来了解耦和复用的好处,但也带来了服务管理的负担、职能细分挑战、数据完整性和一致性的维护问题。 微服务化过程中,赵国光强调“服务化不是无成本的”。服务的抽象意味着将原有的单一系统拆分成多个独立的服务,这会增加服务管理的复杂性。职能细分要求明确每个服务的职责,比如订单、合同和日历服务,它们各自负责特定的业务逻辑。同时,服务间的依赖关系变得复杂,需要处理数据变化通知和缓存一致性等问题。 最后,文档讨论了微服务化过程中的权衡,如重复与隔离的考虑,以及如何通过职责分散来降低复杂性。微服务架构使得途牛能够更好地应对业务增长和变化,但同时也需要投入更多的精力在服务治理和服务之间的协作上。 这篇文档提供了一家大型在线旅游公司如何逐步演进其架构以适应业务需求的宝贵经验,对于理解微服务架构的优势和挑战,以及如何在实践中推动架构变革有着重要的参考价值。