微票 Cloud Native 实践之路

导语

2017年“云+未来”峰会即将在深圳盛大举行,本次峰会Cloud Native技术专场将在7月6日下午举行。Cloud Native 专场给各家提供了针对 OpenStack 应用以及背后填坑之路作深度探讨的机会。现在让我们一起回顾下去年各位嘉宾在在现场分享了哪些云上的心得体会以及Cloud Native云原生架构上的亲身实践。

本文是微影时代技术中心副总裁杨森淼在2016年腾讯“云+未来”峰会Cloud Native专场有关《微票儿的 Cloud Native 实践之路》分享的回顾。

杨森淼:《微票儿的 Cloud Native 实践之路》

微影时代技术中心副总裁杨森淼在2016年腾讯“云+未来”峰会Cloud Native专场,分享了国内首个O2O领域的Cloud Native实践分享。微票儿是今年备受关注的互联网购票平台:估值近百亿、年增长率超4000%、覆盖全国500个城市4500多家影院,日出票达100万张,峰值200万张。而在其业务迅猛增长的背后,一个高速、敏捷、弹性、灵活的技术架构必不可少。

微票儿的Cloud Native实践,采用的是微服务+Docker的方式,以实现从研发测试到部署运维的全系列DevOps。其技术部分构建在传统Cloud的IaaS、PaaS、SaaS三个层面。在实践的过程中其优点非常明显:业务逻辑简单、耦合小、独立部署、方便隔离、使用不同的技术栈……但是另一方面,该系统也存在调用开销增加、服务依赖复杂、难以保证数据的一致性、运维成本增加等问题。

为了解决这些问题,微票儿在做微服务的时候针对组织结构进行了变革,2015年研发管理就是前端、平台、运维,到了2016年变成了打散的方式。

微服务对运维的成本成倍的增加,微票儿通过敏捷的基础设施,为微服务提供弹性,按需计算、储存和网络资源能力,所以又有了三个相应的微服务需要执行的点:

第一个是有支撑微服务的平台,我们选择的是OpenStack+Docker+Mesos;

第二个是有符合微服务平台的规范;

第三是有微服务的核心技术点,需要配置、代码分离、服务注册和发现,路由和容错,还有API的边缘服务,这又增加了很大一部分的工作量。

以上是微票儿整个微服务的平台,将开发、发布、运行这三个阶段严格地做了一个拆分,在不同的环境使用不同的相应的服务。

关于微服务平台规范的APP要符合 12 因子的规范,杨森淼对此举了几个例说明。首先,对不同的环境参数的配置是通过环境变量进行注入的,代码和配置分离,代码中不允许出现在生产环境的配置信息中,部署相关的 playbook 的时候是公开的,配置中的隐私是不能公开的,部署的过程中经过代码和配置的合并。本身这样又会造成 playbook 也变成了代码,它也需要一定的测试和维护。

其次,日志作为统一的事件流,统一处理服务和进行收集、聚合、搜集、分析,每个程序的开发都要看到数据,他们每天要看所有的数据是否打算,自己的请求耗时大概是多少,自己的请求返回时间是多少,它吃的带宽是多少,都可以通过自己的数据和日志查找到相应的自己服务的相关报表,整个后面还有一系列的报警。

微服务的技术特点 Devops,是版本控制的分布式配置中心,服务注册和发现,尽早发现问题,尽早解决,成本越小。持续集成保证代码始终处于可用的状态。

微票儿借助于微服务和Docker,实现从研发到运营的全系列DevOps流程,支撑高速增长过程中的敏捷的产品迭代 ,从而提高整个系统的可维护性和稳定性。

微服务还有很重要的核心技术点就是监控,微票儿有业务单元的监控,红包是否存在异常,是否有黄牛每天不断地在领红包,订单的状态是否一致,是否微信支付会有延长,是否微信支付的回调会有异常。然后还有接口级别的监控,每个接口的成功、错误率,调用的时间。通过业务、接口、基础监控和日志处理分析来监测服务是否异常。

微票儿通过使用Docker,其运维团队可以在某一天随机干掉某几个微服务,还不影响到其它服务。好处就是微服务给我们造成了这样好的环境,能提高你的断路和降级。不再担心它是一条链,没办法隔离。因此提高了断路和降级。

以上所有的Cloud Native实践,都是通过腾讯云来实现的。有人会说,你本身的虚机再铺一层会不会把资源浪费,可能会浪费,但是通过你整体的服务来讲,杨森淼认为资源是在下降的,服用是在下降的,而且这里可以看到我们所有的资源开销的占比,看起来最贵的还是带宽,但是这一块就是因为我要有很多的调度系统去实现我的微服务调度和使用资源的调度,都会使用带宽,这一块的成本会增加,但是储存成本和主机成本都在下降。

原创声明,本文系作者授权云+社区发表,未经许可,不得转载。

如有侵权,请联系 yunjia_community@tencent.com 删除。

编辑于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏安恒信息

【连载】2016年中国网络空间安全年报(四)

2016年中国网络空间安全年报 1.5. 网站安全管理问题深度分析案例 本章节重点选取站点管理中其中较为典型的三类问题,如基础备案信息、钓鱼站点、僵尸站点等...

2937
来自专栏IT技术精选文摘

小程序开发指南

3307
来自专栏企鹅号快讯

数字货币可不只是区块链的全部!聪明人已经把它用到了业务中

接收程序员的 8 点技术早餐 人类的历史,即分久必合,合久必分。 2017 年,比特币因行情疯长火热一时。2018 年伊始,其使用的底层技术区块链又迎来狂欢:从...

18510
来自专栏Rainbond开源「容器云平台」

【干货下载】谷歌、亚马逊等十大公司精选微服务案例

1466
来自专栏IT大咖说

如何支撑微服务架构落地

编辑IT大咖说 阅读字数: 2265 用时: 7分钟 ? ? 摘要 如今微服务如日中天,优势和弊端也有各种描述,那么我们是否应该采用微服务架构?如何规避微服务的...

3409
来自专栏华章科技

详述从IaaS到PaaS的三种实现方法

随着云计算平台的优势变得越来越清晰,从IaaS到PaaS似乎是一项比较轻松的工作了。但是,方法各有不同,而找到实施PaaS最好的方法就意味着在三个可能的选项中进...

734
来自专栏大数据文摘

深度解析12306数据泄露之谜

1422
来自专栏FreeBuf

Android手机恢复出厂设置后,数据依然可恢复

如果你打算卖掉你的旧Android手机,建议你还是多考虑考虑……Android恢复出厂设置功能有一个漏洞,即使你恢复了出厂设置,黑客依然可以恢复你的登录密码、短...

2115
来自专栏漫漫全栈路

R.I.P. :传统整体式架构 VS 微服务

我咨询了十几个微服务项目。有些人表示,微服务真棒(这是未来!),而有些人很沮丧(谁发明了这个废物?)

1242
来自专栏FreeBuf

欧洲信用卡终端机仍存在严重漏洞

当美国准备转向使用“芯片和密码”模型的信用卡交易时,欧洲还在开心的使用传统的更加安全的人工方式进行交易。但是,欧洲现在的信用卡交易方式出现问题是迟早的事。 摘...

1848

扫码关注云+社区