京东中间件应用实战

       在互联网应用研发过程当中,中间件扮演着极其重要角色,由于数据存取、服务划分、消息传递、mysql

负载均衡、DNS、CDN等等。redis

       中间件在互联网应用开发中有着重要做用,其中以微服务、数据存取、消息队列三大中间件最sql

为重要。docker

       微服务,最先程序研发是一个大的总体,存在问题研发困难,困难主要表如今修改后程序容易数据库

致使其余模块不可用,单体程序还存在一个流量预估难题,平时还好电商大促流量突增,单体程序缓存

流量预估难度极大,而微服务一会儿将问题简化多个量级,只要预估好每一个人维护微服务程序就可网络

以了。架构

       JD微服务是本身研发框架,与dubbo相比整个架构设计紧凑简洁,dubbo相比设计扩展性强,app

各有优劣。核心差别不大,线上有个大流量服务大促时6000万/分钟,100万qps 150台4核16G容负载均衡

器。dubbo是阿里开源好东西,对业界微服务化极大推进,感谢开源,dubbo可以支持千万级、亿

级每分钟掉用量处理,是极其优秀框架,最近又重启更新,须要用到微服务的能够放心用起来。

       微服务自己客户端实现软负载均衡,节省大量硬件做为负载均衡使用,缺点也是有的,微服务

横向扩展容易,纵向也可以方便分层,但尽可能不能分太多层,由于每层均存在网络耗时。

       记得app首页入口图第一版服务,单个容器规格4核8G内存50G硬盘,但个容器能处理请求10万/

分钟,并且还能够加量继续压,轻轻松松完成c100k处理。

       数据存取,存储读取是应用程序永恒主题,分布式缓存redis这篇文章介绍过大型电商互联网架构中redis运用

redis内存缓存是快,天下武功惟快不破,可是内存目前仍是极其昂贵资源,分布式文件系统,Google

大数据三架马车之一bigtable,能支撑Google搜索引擎对于网页存储与检索,感兴趣也可进行研究使用,

遗憾是google未开源,但百度开源了分布式文件系统BFS对应HDFS、以及分布式数据库TERA对应

bigtable,据官方公开文档查询性能在10ms如下,进行参数设置性能能到1ms。

       消息队列,消息队列在为复杂程序节藕,大公司不一样部门系统、模块之间数据通信,移动端数据上

报等多个重要流程,均离不开他,在数据通信传输占有核心地位。

       清晰记得新浪微博,在初期有一段时间点赞时响应极其慢,最尴尬的事还常常失败,用户体验极差,

简直让用户抓狂,后来看到网上分享了解到是由于点赞包含多个流程,在原微博上点赞加一,在本身用

户上增长和这条微博点赞关系,权重计算处权重加一用于微博feed分发这条用等等逻辑,再一次须要全

走完很是慢,用消息队列节藕,点赞发消息就能够给客户端反馈成功,性能呈指数级提高,各个模块取

消息进行消费处理进行相应操做就能够了,用户体验极大提高。

       对于数据交互通讯场景,了解到大数据那块数据分两块一个是离线hive表交乎一个是读取mysql或提

供微服务拉取数据交互,有前边这些还不够,由于又个须要及时增删改场景就须要消息队列进行处理,比

如评论或问答用户回答质量差这时就须要,删除消息将质量差评论、问答删除掉。对了目前各大互联网

公司用的比较多消息队列是Kafka以及ActiveMQ。

       数据上报场景,移动时代数据点击、浏览、GMV、转化率等各个指标都离不开数据埋点上报,个性

化推荐系统特征工程中数据汇总上报也离不开消息队列,上报流程通常是Storm实施消费消息数据落到大

数据HDFS、HBase等。这个过程当中消息队列都是必不可少的。

       互联网公司中间件占有重要地位,对于应用快速开发,数据稳定访问,数据上报等,服务高性能、高

可用发挥着重要做用。中间件之中又以服务划分、服务治理,数据存取,消息队列中间件最为重要。

        其余中间件,例如JD自己有本身研发UMP能方便监控应用性能、可用率、容器cpu、内存、线程等多

个指标,开源好比性能监控有大众点评CAT。再有智能DNS、CDN、负载均衡lvs、haproxy等等中间件也

在互联网架构中发挥这重要做用。

        容器自己在JD也发挥着重要做用,线上服务100%在容器中,大数据spark那些据了解也在容器化进行

中。以docker表明容器化技术,cpu、内存隔离性好,网络吞吐也极高,是一种极其优秀技术。

       docker目前存在问题,大促时有些个别机器,它的服务cpu、内存占用太高影响其余容器里面服务,这

种状况备战期间要仔细观察,尽可能和负载高应用避开,这种问题我的看到占比极其小,容器技术在互联网公

司目前发挥着重要做用。

        写出来记录一下,一是为后续查找方便,另外若是对读者若是遇到相应问题正在束手无策,文章若是能

带来一些启发那就更好了。

      扫码关注公众号

相关文章
相关标签/搜索