第1 章 携程整体技术架构 架构的意义在于确定"主绳"的位置。架构实际代表的是一个方法论,这个方法论的核心思想在于构建目标的主要环节,主要环节一方面可以带动次要环节,
另外一方面还可以对次要环节的作用范围进行限制。技术架构大体上可以划分为业务架构和整体技术架构两部分:1.业务架构更加关注业务流程的技术实现,比如用户下单流程的制定,以及各个环节需要用到的支撑系统;2.整体技术架构更加关注全局的技术解决方案,比如业务系统之间的通信方式,以及实时观测业务系统的运行状态。1.1 携程技术架构概览 1.1.1 分层架构 1.表现层(Presentation)2.业务层(Business)3.持久层(Persistence)4.数据层(Database)分层架构的每一个层次都有其固定的角色,并且承担着相应的职责。例如在经典的4层架构中,表现层负责与用户直接进行交互的逻辑,用户通过浏览器或者手机客户端看到界面或进行交互,都属于表现层的范畴;业务层则负责根据用户的请求,执行特定的业务逻辑。每一层的组件都围绕着这一层的职责范围来完成各自业务逻辑的抽象。例如,表现层不需要关心如何获取顾客数据,它需要做的事情仅限于在用户客户端上以特定的格式把顾客数据展示出来;同理,业务层既不需要关心数据展示,也不需要关心数据来源,它只需要向持久层获取数据,完成自己的业务逻辑(如数据聚合和计算),再将处理后的数据交给表现层即可。1.1.2 接入层技术 优秀的前端界面和交互设计可以带给用户美好的视觉体验,而支撑这些优质视觉体验的技术,就是接入层的移动大前端技术。所有涉及用户操作的终端都属于前端领域,在这个指到思想下,大前端的技术领域也从传统的PC浏览器前端,扩展到移动OS原生框架开发,跨平台前端框架开发,以及微信,小程序等框架开发。作为用户,除了最直接的视觉,其次就是速度。用户会通过各种网络接入环境和客户端设备,通过GSLB技术帮助用户连接到最合适的数据中心,再通过cdn技术,在尽量靠近用户的边缘网络将用户频繁访问的静态资源进行缓存,把用户和服务的距离尽量缩短,从而提高速度。呼叫中心为客服人员提供 多渠道,多地域,多业务,多语种及海量会话等全方位服务。相比传统的客服运营,携程云客服平台解决沟通单一,信息碎片化,智能化低,效率低,移动性不足,成本高昂等问题。1.1.3 后端技术 互联网领域的中间件,主要是指分布式系统中广泛使用的中间层软件,一般用于提供通信及数据管理服务。之所以使用中间件来与其他系统进行通信和数据访问,是因为中间件为调用方提供了更好的封装性:一方面封装了底层操作的复杂性,使调用方可以更专注于自身的业务诉求;另一方面封装了公共业务模型的具体实现,提升了调用方的业务逻辑表达能力,降低了业务系统架构的成本。DevOps 解决方案是 PaaS。从持续集成入手,打通了资源,版本和发布流程。1.1.4 技术保障 监控的重点在于发现问题。定位问题往往比解决问题更加困难。1.2 携程整体技术架构演进 1.2.1 呼叫中心时代 1.2.2 互联网和移动互联网时代 这个阶段各个应用是分层的。分层的优势:1.分层可以把每一层的业务进行隔离和透明化,可以更多的进行解耦,也可以很方便的部署。这样在流量大的时候,可以快速扩充,分担流量,进行负载均衡;2.分层支持高可用,每一层应用都部署在多个服务集群上,当其中一个集群意外宕机,另外一个集群可以很快的顶上。3.分层可以通过服务化进行子系统之间的解耦。这个阶段的理念就是"Open API Everywhere"分层带来的好处就是,目前大型互联网公司必须具备的3+1模式 --- 高并发,高性能,高可用,高扩展。痛点:1.业务快速发展跟不上2.子系统的拆分边界不清3.系统改造复杂4.分层体系架构的复杂1.2.3 大数据和人工智能时代 这个阶段主要依托 海量用户和海量数据,发展平台个性化和数字化。ABC 战略:A -- AI, 个性化,数字化和人工智能;B -- Bigdata, 整个集团数据集成,共享,交换,打通;C -- Cloud,计算,网络,存储云化。AI 赋能主要两个方面:1.精准化营销,个性化推荐,提升订单转化率,实现营收增长2.通过人工智能研发客服机器人和AI数据挖掘

1.携程架构实践 --- 携程整体技术架构相关推荐

  1. 阿里内部中台战略思想与架构实战,一部互联网技术架构的实践与发展史

    移动互联网无处不在的今天,不同的学习方式让我们受益颇多.有人喜欢通过手机阅读各类技术专家的公众号分享:有人喜欢通过逛逛不同的博客,来了解当前时下的技术:也有人喜欢通过社区的形式,跟优秀的导师们一起梳理 ...

  2. java架构师入门教程,java技术架构师入门到精通高薪就业教程百度云下载

    java技术架构师入门到精通高薪就业视频教程百度云 课程目录: JAVA架构课开班典礼 JVM性能调优专题 JVM整体结构深度解析 JVM内存分配机制详解(此视频作废) JVM字节码文件结构深度剖析 ...

  3. 阿里架构师,谈对技术架构的理解,以及架构师角色的思考

    我叫道延, 2014 年加入阿里,在阿里通信工作了近两年.2016 年年底加入业务平台团队,当时 Leader 找我的第一件事就是要解决大促的问题,第二件事就是解决安全生产的问题. 我带着这个命题进入 ...

  4. java技术架构选型方案报告.pdf,技术架构选型方案报告

    <技术架构选型方案报告>由会员分享,可在线阅读,更多相关<技术架构选型方案报告(16页珍藏版)>请在人人文库网上搜索. 1.最高院执行项目 技术架构选型方案 Fantasy 2 ...

  5. 大型网站架构模式【大型网站技术架构.核心原理与案例分析】(阅读分享)

    这本书分几个章节,其中有一个值得和大家分享的技术知识. 大型网站架构模式中引入了模式概念:每一个模式描述了一个在我们周围不断重复发生的问题及该问题解决方案的核心.这样,你就能一次又一次地使用该方案而不 ...

  6. 【社区图书馆】JAVA开发与架构(携程架构实践)

    发这篇博文主要是想学习一下携程的架构.携程出了一本<携程架构实践>,无奈现在还没开源.看京东价大概109元人民币.如果看到次博文的网友能发我一本<携程架构实践>pdf.不胜感谢 ...

  7. 亿级日PV的魅族云同步的核心协议与架构实践

    声明:本文根据msup和魅族联合举办的<第三期魅族技术开放日-架构设计与优化>录音整理原创首发,转载或节选内容前需获授权.  嘉宾:沈辉煌,魅族高级架构师,魅族云同步负责人.2010年加入 ...

  8. 今日头条 字节跳动 Flutter架构实践

    今日头条 字节跳动 Flutter架构实践 1 移动跨平台技术探究 ◆ 为什么需要跨平台? 今日头条 字节跳动 Flutter架构实践 ◆ 跨平台技术是如何发展起来的? 今日头条 字节跳动 Flutt ...

  9. 架构设计实践五部曲(五):技术架构的战略和战术原则

    技术架构,是将产品需求转变为技术实现的过程.技术架构解决的问题包括了如何进行纯技术层面的分层.开发框架选择.语言选择(这里以 JAVA 语言为主).涉及到各自非功能性需求的技术点(安全.性能.大数据) ...

  10. java接口开放平台设计,OpenApi开放平台架构实践

    WebAPI 开放平台架构实践 导读 背景 需求 场景 架构设计 总结 背景 随着业务的发展,越来越多不同系统之间需要数据往来,我们和外部系统之间产生了数据接口的对接.当然,有我们提供给外部系统(工具 ...

最新文章

  1. linux快捷上传下载文件
  2. 面试官:什么是NIO?NIO的原理是什么机制?
  3. ajax实现动态及时刷新表格数据_如何爬取网页数据
  4. 反激式开关电源中PC817与TL431的配合电路探讨
  5. C#类中的internal成员可能是一种坏味道
  6. DOCTYPE html PUBLIC 指定了 HTML 文档遵循的文档类型定义
  7. Codeforces Round #541 (Div. 2) C.Birthday
  8. php 继承多个接口,PHP接口多继承及tarits实现多继承效果的方法
  9. 二元置信椭圆r语言_r语言二元期权barrier option实现案例
  10. STM32F103_ADC-DMA通道采集
  11. 模拟机安装linux教程,Windows 10利用虚拟机安装Linux图文教程
  12. 什么是三层架构?它的优点是什么?_三层实木和多层实木地板各有什么优劣点
  13. Python 实现校园卡目标检测与文字识别系统
  14. 软考网络工程师学习笔记
  15. Alexa技能开发从创建到发布
  16. 微信公众号开发之(35)地图导航
  17. 炒作与现实的博弈,厂商大肆宣传自动驾驶致司机陷入危险
  18. python画樱花(一)
  19. python win32gui+pynput 自动回复qq消息
  20. 软件测试 — 常见的端口整理

热门文章

  1. K个排序链表的合并(Hard)
  2. AngularJs自定义指令详解(10) - 执行次序
  3. Xshell连接不上行Linux系统
  4. ES6中的const命令【转】
  5. java音频播放(转)
  6. centos+nginx从零开始配置负载均衡
  7. javascript开发中的封装模式(转)
  8. 利用js排序html表格
  9. java程序(1016)
  10. Mangos导入AI的教学