登录    / 注册

微服务场景下的性能提升最佳实践

分享时间: 2016年12月9日 - 12日

分会场: 架构设计/技术战略

案例讲师

王启军

华为 架构部资深架构师

华为公司架构部资深架构师,负责华为公司的云化、微服务架构推进落地,前后参与了华为手机祥云4.0、物联网IoT2.0的架构设计。曾任当当网架构师,主导电商平台架构设计,包括订单、支付、价格、库存、物流等。曾就职于搜狐负责手机微博的研发。目前运营微信公众号“奔跑中的蜗牛”,热爱开源,热爱分享。

扫描二维码分享案例

 

案例简述

 

在微服务场景下,由于服务数量的爆炸性增长,导致架构的复杂度升高,其中最为关键的一个问题就是性能的问题。是否意味着选择微服务就要放弃一部分性能?在一致性、可用性、复杂度、性能之间如何去权衡?通过案例说明。

 

案例目标

 

单体架构拆分成微服务,随着服务数量的爆炸性增长,各种问题随之而来,其中一个比较关键的问题是性能问题,影响用户体验。
1、原本一次调用可以返回结果,现在需要流经几个或几十个服务才能返回结果,如何提升响应时间的问题;
2、由于拆分导致的吞吐量降低,如何补偿?云化就意味着可以横向扩展。架构如何实现扩展?提升整体的系统吞吐量。

 

成功(或教训)要点

 

1、读写分离,缓存,高性能的通信协议
2、MQ提升吞吐量,平衡数据库的压力
3、数据库水平、垂直拆分,实现性能提升
4、分析业务场景,并不是所有的地方都要求极致的性能

 

案例ROI分析

 

因为作者在华为负责微服务的推广与落地,
在实施微服务的过程中,性能问题是一个强大的绊脚石,特别是交付型的项目,如果指标上下降的比较厉害,非常影响最终的销售情况。可以通过此案例学习如何解决性能问题。

 

案例启示

 

几种常用的解决性能问题的模式

 

案例在团队中的意义

 

在微服务实施过程中,对于交付型的项目,如果指标上下降的比较厉害,非常影响最终的销售情况。