1. 首页>
  2. 腾讯云代理

华尔街见闻:基于腾讯云容器服务的微服务架构实践

腾讯云 2017年05月12日 浏览1160

    腾讯云代理 腾讯云新闻 腾讯云代理 腾讯云直播申请 游戏上云

摘要: 昨天,腾讯云正式加入CNCF和Linux基金会,不仅希望在国际开源圈进一步发声、扩大腾讯云在技术领域和开源领域的影响力,同时也意味着将承担更多的责任,我们将从产品出发,基于大量用户在产品使用中的感受,以及腾讯云的服务实践,将有价值的特性推送和反馈给社区,与社区一起完善相关特性,同时我们从社区中获得广泛的用户反馈,再次回到产品。

昨天,腾讯云正式加入CNCF和Linux基金会,不仅希望在国际开源圈进一步发声、扩大腾讯云在技术领域和开源领域的影响力,同时也意味着将承担更多的责任,我们将从产品出发,基于大量用户在产品使用中的感受,以及腾讯云的服务实践,将有价值的特性推送和反馈给社区,与社区一起完善相关特性,同时我们从社区中获得广泛的用户反馈,再次回到产品。


在这样的互动中,我们从社区中来,到用户中去,目前在CNCF的技术领域,华尔街见闻已经用上我们的容器服务,华尔街见闻的技术团队亲自撰稿向业界分享真实的实践经验,经华尔街见闻的授权,我们将这个实践分享给大家:


华尔街见闻的运营方上海阿牛信息科技有限公司是全球金融信息服务提供商,每天全平台为近200万用户提供资讯、数据、研究等服务。旗舰产品华尔街见闻APP长期位居各应用市场财经资讯类客户端第1位。由于将重大事件、市场的基本面变化和100多种全球资产价格紧密关联,在金融领域具有极高渗透率。首创的7x24快讯模式已经成为在中文世界理解全球市场的最快来源。也因此,该产品有技术架构复杂,需要高并发承载能力等特性。



老系统日益臃肿

原先的系统是PHP monolithic架构,功能按模块划分,日积月累,最后模块达到60+个,新人接手项目会拿到一整个系统的代码,以及需要整个系统的配置,而他可能只需要专注开发不到1/10的业务。


伸缩性

我们的主要业务是即时资讯,资讯具有时效性,网站的访问量会呈现锯齿形分布。当遇到特大新闻如英国退欧、美国大选、法国大选等,我们要能弹性地通过增加服务资源,提高服务的容量。


容错性

我们希望一个低优先级服务出现问题之后,不影响主要服务;一个主要服务能保证更高的可用性,就算出现问题,也要保证优雅降级。

比如在重大事件发生的时候,我们希望文章API保证不会受到影响。


单体应用

PHP单体应用在生产环境服务的时候,所有业务都跑在一个程序里,增加了系统的脆弱性,一个隐藏的性能问题,能在服务量激增的时候成为压垮骆驼的一根稻草。


云服务商成本

由于架构落后于需要,我们不得不用硬件弥补性能上的问题,导致云服务器成本不断增加。


线上运维

由于没有方便的监控和运维工具,导致排查问题的效率低,使得在系统遇到问题的时候排查困难,耗时过长。


开发新功能

开发新任务的同时,我们需要修复原有系统的性能问题。


每台服务器部署相同的服务端PHP代码,由PHP-fpm解释执行,通过Nginx进行反向代理。


华尔街见闻微服务架构设计

因此,在2016年11月至2017年3月,我们采用微服务架构启动重构,尝试解决一部分上述问题,在伸缩性上能以服务为单位进行拓容,同时,这一设计会在某些方面增大我们的开发成本和运维成本。


错误排查复杂

很显然,以前在单体应用中能直接登录服务器,查看出错日志,现在错误散落在不同的服务中,为我们的错误排查带来了困难。


日志源增加

如何把服务的日志收集并分析。


基础设施增加

每个服务有互相独立的MySQL、Redis,公共服务方面需要高可用的服务发现,调用链路分析,日志收集储存设施等。

关联腾讯云服务商,为您提供云计算产品及本地化上云服务。

点击关联:http://partners.qcloud.com/invitation/99377079157835da208bd0

auto_1452.png

腾讯云技术交流群

相关文章

在线客服
淘宝购买
腾讯云直播申请 title=
+成为腾讯云VIP客户 腾讯云直播申请 客服电话

15818558013

0755-33940501-803

0755-33940501-808