SRS多核优化

最近看到csdn上,还有网友问为什么不更新了,看来这个多核优化还是很有用的,有时候写代码比写文章更麻烦,事情多就给忘了,而且是多以前的代码,要重新看一遍,还是找个时间提交到git吧,搬地方:

相信来到这里的读者,都是对SRS有一定的认识的同道中人,那应该都清楚SRS采用了单线程多协程模型,所以它在效率上比NGINX的RTMP模块(采用多进程模型,具体我也没读过)要高。

但是,想必SRS的单线程只能使用单核,而目前服务器大都是多核,直接使用SRS源码编译的版本,利用不上多核,简直是暴殄天物,虽然有一些其他解决手段:

比如开多个SRS进程,然后每个进程监听不同端口,但是这样返回给前端需要不同的端口,总感觉非主流;
亦或者在SRS初始化阶段,在listen 1935端口后,fork出多个进程做accept,但是这样存在客户端观看时,可能连接的进程非推流端所在进程的问题。
基于上述弊端,作者做了将SRS进行多核扩展的优化,具体优化方法在下一章详述,后续章节计划:

1、st协程库优化思考;

2、srs调用st库优化方法;

3、github优化后源码分享。


作者:hijiang1
来源:CSDN
原文:https://blog.csdn.net/jbl5501328/article/details/81107025
版权声明:本文为博主原创文章,转载请附上博文链接!

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。