直播源码系统开发中重要一环“高并发”

  • 发布时间:2019-08-24 14:35:05,加入时间:2018年09月07日(距今2126天)
  • 地址:中国»山东»泰安:山东省泰安市泰山区灵山大街梦想谷产业园318
  • 公司:山东布谷鸟网络科技有限公司, 用户等级:普通会员 已认证
  • 联系:孙先生,手机:17501015742 微信:bogo18 QQ:2814674725

相信大家对高并发这个词并不陌生。其实高并发通常指通过设计保证系统能够同时并行处理很多请求,是直播源码系统开发过程中关于系统架构必须考虑的因素之一。所以,在直播源码开发过程中,关于高并发的问题也是开发者们必须重视的一点。

1、怎样提升系统的并发能力

要想提高直播系统的并发能力,主要可以分为两种:垂直扩展与水平扩展。

(1)垂直扩展

即提升单机处理能力,垂直扩展的方式又分为两种。

增强单机硬件性能,比如增加CPU核数,扩充硬盘容量和系统内存。

提升单机架构性能,比如使用Cache来减少IO次数,使用异步来增加单服务吞吐量。

不足的是,单机性能总是有极限的,所以大部分高并发的解决方案还是会选用水平扩展,也就是我们下面要提到的。

(2)水平扩展

即只要增加服务器数量,就能线性扩充系统性能。水平扩展对于系统架构设计是有一定的要求的,关于如何在架构各层进行可水平扩展的设计,在此就不多做赘述了。

2、常见的分层架构

(1)客户端层(2)反向代理层(3)站点应用层(4)服务层(5)数据-缓存层(6)数据-数据库层

3、水平扩展在各分层中的实践

(1)反向代理层

反向代理层的水平扩展,是通过“DNS轮询”实现的,每次DNS解析请求来访问dns-server,会轮询返回这些ip。当nginx遭遇瓶颈时,只要增加服务器数量,新增nginx服务的部署,增加一个外网ip,就能扩展反向代理层的性能,做到理论上的无限高并发。

(2)站点层

是通过“nginx”实现的,通过修改nginx.conf,可以设置多个web后端。当web后端遭遇瓶颈时,只要增加服务器数量,新增web服务的部署,在nginx配置中配置上新的web后端,就能扩展站点层的性能,做到理论上的无限高并发。

(3)服务层

服务层的水平扩展,是通过“服务连接池”实现的。当服务遭遇瓶颈时,只要增加服务器数量,新增服务部署,在RPC-client处建立新的下游服务连接,就能扩展服务层性能,做到理论上的无限高并发。

(4)数据层

在数据量很大的情况下,数据层(缓存,数据库)涉及数据的水平扩展,将原本存储在一台服务器上的数据(缓存,数据库)水平拆分到不同服务器上去,以达到扩充系统性能的目的。

高并发是网络直播开发过程中经常遇到的问题,但并不能对其掉以轻心。对于直播源码行业来说,解决高并发也是核实开发实力的标准之一,再加上对实时效果要求甚严的直播应用场景,高并发可以说是“刻不容缓”的。

联系我时请说明来自志趣网,谢谢!

免责申明:志趣网所展示的信息由用户自行提供,其真实性、合法性、准确性由信息发布人负责。使用本网站的所有用户须接受并遵守法律法规。志趣网不提供任何保证,并不承担任何法律责任。 志趣网建议您交易小心谨慎。