Tag Archives: 架构

高吞吐消息网关的探索与思考

一、背景介绍

唯品会是一家立足于“全球精选,正品特卖”的电商网站,拥有4亿注册会员,日活约2千万会员。随着会员数量的增多,公司业务部门的飞速发展,和用户的沟通变得日益重要。沿用至今的消息网关,面对多变的业务和爆发式增长的消息面前,显得力不从心,多次大促出现性能瓶颈,急需重构来跟上公司业务发展的需要。

下载PPT请直接拖到文章末尾。

阅读全文

Qunar全链路跟踪及Debug

随着公司业务的发展,支持业务的程序也会逐步发展;随着业务的复杂化和流量的增加,一般都会通过拆分的方式来分解不同的业务,将流量分摊到更多的机器上,从而支撑更复杂的业务和更大的流量。

这种分布式的系统会带来很多好处,也自然带来了一些问题。分布式意味着需要通过网络来进行调用,比如RPC调用、HTTPAPI调用、消息队列等;同时,不只是内部开发的程序是分布式的,程序依赖的很多服务也是分布式的,比如数据库、缓存、HBase、ES等。大量的分布式导致服务间的调用关系越来越来越复杂,处于分布式系统中某个节点的程序无法方便的掌握全局结构。

为了方便掌握分布式系统的全局情况,出现了一种分布式追踪系统,它能够将请求所经过的各个系统的操作用一个唯一ID标识并记录下来,便于查看和分析系统全局结构。QTracer就是Qunar内部开发维护的一套分布式追踪系统。

下载PPT请直接拖到文章末尾。

阅读全文

携程第四代架构探秘之运维基础架构升级

作为国内最大的OTA公司,携程为数以亿计的海内外用户提供优质的旅游产品及服务。2014年底携程技术中心的框架、系统和运维团队共同启动了架构改造项目,历时2年,涉及所有业务线。本文回顾了携程在整个技术架构改造过程中的一些实践和收获。

一、写在前面

随着携程业务量迅速增长、业务变化越来越敏捷,对于应用交付的效率也提出了更高的要求。根据统计,截止2014年底携程总应用数在5000个左右,平均每周约有3000次以上的发布需求。所以作为整体交付环节中极为重要的一环,应用的部署和发布是提高交付效率的关键,然而携程原来的发布系统Croller却成为了阻碍交付效率提升的一大瓶颈。 阅读全文

携程高可用架构的演变和迭代——应用开发者视角

前言

携程的架构经历了长期的演变和迭代,其中多个产品已经历了5次以上更新换代。每次迭代都有其背景和出发点,都解决了前一个版本的痛点又不可避免地带来一些新的问题或遗漏一些问题。这种迭代过去、现在,以及将来将一直持续,其中经历可圈可点,值得技术人细细品味。

本文会首先从总体介绍携程架构的组成,然后以发布系统、配置管理和SOA三个实际案例,详细介绍架构迭代,最后以UserProfile项目具体介绍携程架构亮点的点滴。 阅读全文

IMVC(同构 MVC)的前端实践

[作者简介] 古映杰,携程度假研发部前端和 node.js 架构负责人。开源库 react-lite 作者。热衷于研究如何让前沿技术落地,提高前端工程师的实际生产力和编程体验。目前致力于推广同构 MVC 的前端架构模型。业余时间喜欢玩《守望先锋》。本文来自古映杰在“携程技术沙龙——新一代前端技术实践”上的分享。

古映杰_meitu_1

导语

随着 Backbone 等老牌框架的逐渐衰退,前端 MVC 发展缓慢,有逐渐被 MVVM/Flux 所取代的趋势。 阅读全文

开源 | 携程Apollo配置中心

随着程序功能的日益复杂,程序的配置日益增多:各种功能的开关、参数的配置、服务器的地址……

对程序配置的期望值也越来越高:配置修改后实时生效,分环境、分集群管理配置,完善的权限、审核机制……

在这样的大环境下,传统的通过配置文件、数据库等方式已经越来越无法满足开发人员对配置管理的需求。

Apollo配置中心应运而生!

Apollo(阿波罗)是携程框架部门研发的配置管理平台,能够集中化管理应用不同环境、不同集群的配置,配置修改后能够实时推送到应用端,并且具备规范的权限、流程治理等特性。

阅读全文

携程上万坐席呼叫中心异地双活架构及系统设计

编者:本文为携程通信技术中心高级经理沈强,在GOPS 2016全球运维大会上的分享。

之前,我先拜读了《Google SRE》 这本书的几个章节,我对这些章节中的内容非常认同,特别是基于自动化运维以及故障响应时间的阐述,感同身受。

今天我讲的这个技术实现就是一个非常接地气的案例,很好了诠释了 Google SRE 的理念,下面我会结合携程实际的技术实现方案,进行详细的讲解。

今天演讲分为三块内容

  • 首先,介绍一下携程呼叫中心系统的整体架构,因为携程主要是以呼叫中心起家,当时呼叫中心占整个业务订单量70% 以上,因此呼叫中心在我们的业务里面,起到非常重要作用。
  • 其次,讲解一下携程呼叫中心异地双活的架构,整个过程中会涉及到各个层面的双活架构设计。
  • 最后,讲解一下座席介入端的异地双活的系统设计。

阅读全文

携程移动端架构演进与优化之路

导读: 目前携程 75% 以上订单来自移动端,App 几乎承载了整个集团的所有业务形态。那么无线服务端和客户端底层架构如何支撑如此复杂灵活多样多变的业务,并顺利接入整个集团十几个不同研发团队开发的代码,让这么多团队协同开发,无缝集成在同一个 App 内,还能确保其质量和性能?这对移动端架构提出了非常严峻的挑战。

从2013年开始,我们先后进行了不同路径的多样性架构探索,在实践过程中也经历了各种曲折与压力,最终实现了2015年的这个全新架构,实现了无线服务端基于API Gateway的架构框架、客户端的模块化开发、测试与部署,支持运行期间的模块实时加载、按需Lazyloding、Remote加载,从而实现模块级动态升级以及代码级热修复,并且逐步推动数百人的客户端研发团队由不堪重负、效率低下的大版本大火车开发模式向模块间独立迭代、发布轻量级的开发方向演进。

同时在架构探索期间,携程做了App相关的很多性能优化,比如底层网络通道治理的优化、应用层插件容器加载启动速度以及存的优化、业务中间件Hybrid的优化等等,逐步保证随着业务的不断的迭代,能保证用户的比较好的优化体验。

阅读全文

携程开源数据库访问框架Ctrip DAL

随着企业规模扩张和业务量的急剧增加,作为系统核心的数据库相关开发也会经历一个由单一团队发展为多团队;由单机扩张到集群;由单数据库发展为多数据库;由采用单一数据库产品到多种数据库产品并存的过程。

伴随这一过程的是如何管理数据库扩展,如何规范数据库访问,如何保护数据库投资,如何应对访问量增加,如何预防安全问题等一系列挑战。

作为国内在线旅游行业的翘楚,携程也曾经面对同样困扰。为了应对这些挑战,实现企业10倍速发展,携程开发了具有自己特色的数据库访问框架Ctrip DAL。

阅读全文

Copyright © 1999 - 2014 Ctrip. Powered by WordPress.