當前位置:
首頁 > 知識 > 默默前行的livego——基於go語言的rtmp直播伺服器

默默前行的livego——基於go語言的rtmp直播伺服器

為什麼go語言,原因太多了!

  • 輕量級協程,隨時goroutine
  • 方便的channel
  • 方便的interface
  • 強大的伺服器性能

簡單點GO語言---為伺服器而生!

我們來看看: livego--基於go語言的rtmp直播伺服器

github地址: https://github.com/runner365/livego


什麼是livego

livego是基於golang開發的rtmp伺服器


為什麼基於golang

  • golang在語言基本支持多核CPU均衡使用,支持海量輕量級線程,提高其並發量當前開源的缺陷:
    • srs只能運行在一個單核下,如果需要多核運行,只能啟動多個srs監聽不同的埠來提高並發量;
    • ngx-rtmp啟動多進程後,報文在多個進程內轉發,需要二次開發,否則靜態推送到多個子進程,效能消耗大;

      golang在語言級別解決了上面多進程並發的問題。

  • 二次開發簡潔快速golang的開發效率遠遠高過C/C++

livego支持哪些特性

  • rtmp 推流,拉流
  • 支持hls觀看
  • 支持http-flv觀看
  • 支持gop-cache緩存
  • 靜態relay支持:支持靜態推流,拉流(支持對rtmp/http-flv拉流)
  • 動態replay支持:支持http動態控制拉流、推流
  • 支持push,push_done事件的外掛進程啟動
  • 統計信息支持:支持http在線查看流狀態

livego性能有多強

go語言為伺服器性能而生,看看性能有多強吧!

測試機型:阿里雲32核64G獨享伺服器

測試方法:

  1. 用ffmpeg向livego的rtmp服務推流:ffmpeg -re -i source.200kbps.768x320.flv -c copy -f flv rtmp://10.111.59.49/live/stream
  2. 啟動3個sb_rtmp_load的拉流進程,每個進程拉流10000路

./objs/sb_rtmp_load -c 10000 -r rtmp://127.0.0.1:1935/live/stream&

測試結果:

30000路並發拉流,cpu佔用率不到50%!

默默前行的livego——基於go語言的rtmp直播伺服器

喜歡這篇文章嗎?立刻分享出去讓更多人知道吧!

本站內容充實豐富,博大精深,小編精選每日熱門資訊,隨時更新,點擊「搶先收到最新資訊」瀏覽吧!


請您繼續閱讀更多來自 科技優家 的精彩文章:

原型原型鏈學習記錄
iOS用域名或主機名獲取IP地址
JStorm與Storm源碼分析(四)——均衡調度器,EvenScheduler
編寫使用多線程的希爾排序(shell sort)
ABP從入門到精通(2):aspnet-zero-core 使用MySql資料庫

TAG:科技優家 |

您可能感興趣

首款基於Pascal腳本語言的全功能Web伺服器Moon Http Server即將上線
為什麼成立中韓語言交流會?The Language Exchange of Dreamtalk in Shanghai
vscode寫c語言(windows)
Salmon:一個基於Python語言的郵件伺服器
大師語言 | John William Godward
Semantic Experiences網站:用自然語言同AI交流
Facebook Libra的Move語言與其他語言有什麼不同?
用R語言的Blogdown+Hugo+Netlify+Github建博客
身體的語言 ya.tender
對話 Salesforce 首席科學家 Richard Socher:選擇 ML 是出於對數學和語言的熱愛
Swift for TensorFlow 已在 GitHub 上開源,Tensor 成為 Swift 語言裡面的一等公民
用深度學習實現自然語言處理:word embedding,單詞向量化
VSCode 引入 Python 語言伺服器;Canonical 請求幫助測試 Ubuntu 伺服器安裝程序
Canonical宣布Kotlin編程語言Snap包格式上線
使用PaddleFluid和TensorFlow訓練RNN語言模型
Firefox Reality VR瀏覽器支持7種新語言,書籤等
Google Assistant 語音助手將支持更多語言,比 Siri 更加智能
Google Assistant大升級:新增多種語言
微軟推最新程序語言Bosque 以Functors取代Loop循環
走向世界 Google Assistant新增30種語言