当前位置:首页 > 开发教程 > 手机开发 >

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

时间:2019-08-24 10:12 来源: 作者:山东布谷科技 收藏

相信大家对高并发这个词并不陌生。其实高并发通常指通过设计保证系统能够同时并行处理很多请求,是直播源码系统开发过程中关于系统架构必须考虑的因素之一。所以,在直播源码开发过程中,关于高并发的问题也是开发者们必须重视的一点。 相信大家对高并发这个词并不陌生。其实高并发通常指通过设计保证系统能够同时并行处理很多请求,是直播源码系统开发过程中关于系统架构必须考虑的因素之一。所以,在直播源码开发过程中,关于高并发的问题也是开发者们必须重视的一点。
 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)数据层
在数据量很大的情况下,数据层(缓存,数据库)涉及数据的水平扩展,将原本存储在一台服务器上的数据(缓存,数据库)水平拆分到不同服务器上去,以达到扩充系统性能的目的。
高并发是网络直播开发过程中经常遇到的问题,但并不能对其掉以轻心。对于直播源码行业来说,解决高并发也是核实开发实力的标准之一,再加上对实时效果要求甚严的直播应用场景,高并发可以说是“刻不容缓”的。

手机开发阅读排行

最新文章