簡悅聯合創始人云風:Skynet——一個基於Actor模式的開源並發框架

2020-12-13 CSDN技術社區

【CSDN報導】 2013中國軟體開發者大會(以下簡稱SDCC)於8月30-31日在北京新雲南皇冠假日酒店舉辦。作為CSDN和《程式設計師》雜誌傾力打造、千人規模以上的頂級技術盛會,今年SDCC 2013以「軟體定義未來」為主題,來自於國內外一線的技術精英,就大數據分析與BI、架構實踐、研發管理、IT基礎設施與運維、產品與設計、開放平臺等專題和參會者進行了深入的分享和探討。此外,32小時編程馬拉松、CTO論道論壇等量身定製的特色環節也受到了參會者的強烈關注。

簡悅聯合創始人 雲風 

在第二天的程式語言與工具專題論壇上,簡悅聯合創始人云風帶來題為《Skynet:一個基於Actor模式的開源並發框架》的主題演講。雲風認為,Actor方式就是你需要把在伺服器並行處理的任務分成很多更細小的單元,每個單元有個程序來考察。這些Actor之間為了共同做一件事情,它並不是用傳統的多線程方式來工作的,所有的Actor之間都是相互傳遞消息的方式,每個actor都可以看成是一個獨立的進程去處理一個消息隊列。

「現在CPU的核數越來越多,但CPU的主頻卻沒有上升。在傳統並行編程中,兩核或者四核的時候,大家都做多線程的編程,在多線程的編程中用的最多的就是如果幾個核心同時要改一個數據,我們會給這個數據上鎖,然後處理完後再解鎖。這種方式我覺得有一定麻煩。後來在做Skynet的時候我自己受Erlang影響較多,Erlang是一個比較高可用性的並且分布式的處理,可以把Erlang節點部署在很多機器上,所以Skynet最初在設計時我們是在Erlang的基礎上來做一些開發,當然現在是完全用C語言編寫的一個框架了。」雲風介紹說。

分布式處理可能需要很多的數據,要處理很多東西,它們很大程度上可以分開來完成。但是並行處理則需要使同一臺物理機器上有很多的核心,協作完成原來要完成的事情,且需要很快的完成。雲風表示,Skynet發展到今天,是更想強調它的並行處理能力,可以更好的運行同一臺機器上的更多的核心來更高效完成任務。在做網路遊戲的時候,它處理的業務量沒有搜尋引擎或者其他處理的數據量那麼大,但是它需要所有用戶連到伺服器上,需要有更快的響應速度。比如玩遊戲的時候,打一個怪,在0.5秒鐘之內都不知道打到這個怪沒有,這個玩家體驗就是非常差的,所以要使計算能力提高,滿足所有的響應速度。「最開始我們只想做一個函數庫,並不是做框架。我們後來發現,還是做一個框架更方便一點。」雲風說。

據云風介紹,Skynet這個項目是開源的,也非常簡單。它的核心代碼只有2900多行,當然現在還有一些額外的庫是必備的,全部加起來也不超過1萬行。此外它的licence也是開放的。

回看Skynet的誕生史,雲風表示最初是從2010年開始考慮做Skynet,到2011年實現基於Erlang的第一版,2012年又用C語言重寫,同年8月1日開源發布。

更多精彩內容,請關注 @CSDN研發頻道,「 2013中國軟體開發者大會圖文直播」專題 。

本文為CSDN原創文章,未經允許不得轉載,如需轉載請聯繫market#csdn.net(#換成@)

相關焦點

  • 10個最受歡迎的python開源框架,你最鍾意哪一個?
    如果你正在學習python,那麼這10個開源框架,你可千萬別錯過,這些框架包括事件I/O,OLAP,Web開發,高性能網絡通信,測試,爬蟲等。雖說不上是全都有,但也足夠滿足你了。0.Django: Python Web應用開發框架眾所周知,Python下有許多款不同的 Web 框架。而其中,Django是最具代表性之一,許多成功的網站和APP都基於Django。
  • 重磅發布開源框架、生物計算平臺螺旋槳,百度飛槳交了年終成績單
    飛槳是一個開源的平臺,既受益於開源,也反過來促進了開源社區的發展。在談到開源開放的重要性時,百度 CTO 王海峰表示,「開源開放對人類社會過去幾百年科學和技術的發展起到非常重要的作用,讓我們可以更快追蹤到最新的技術進展,並將改進意見以及創新思想迅速進行反饋,形成一個正循環,進一步推動科技的創新迭代。當下,中國開源力量正在影響全球的科技創新。
  • MoChat企業微信開源系統,能否成為企業微信開源框架項目中的獨角獸?
    儘管現在基於企業微信開發的產品處於一個百家爭鳴的時代,但仍舊未能看到一個開源的、真正為 企業微信應用 開發服務鋪路的框架&引擎。眾所周知。重點要提到的是在公眾號開發框架領域的開源項目,許多開源的公眾號開發框架都做的非常好,其中也不乏擁有幾十萬開發者的開源項目,甚至被併購。在企業微信生態,會不會出現像有贊、微盟這樣體量的公司呢?答案是肯定的!可能還會更大,因為企業微信的應用場景遠比目前我們看到的還要大,嚴重低估了企業微信未來的價值。那麼,基於企業微信的開源框架有沒有需求?
  • 開源前端框架Bootstrap中文翻譯版上線
    站長之家(chinaz.com)7月25日消息:知名開源WEB前端框架Bootstrap中文翻譯版昨日上線,該版本由wrongway開發者翻譯。據wrongway稱,翻譯Bootstrap的初衷是為其網站選擇一款能快速開發的前端框架,為了更廣泛的分享推廣Bootstrap,因此發布了中文版。
  • 基於開源軟體的嵌入式網絡列印伺服器
    為了在一個區域網環境中共享使用一臺USB口印表機,需要為該印表機配備一臺伺服器,然後通過共享設置實現印表機的網絡共享。這種方式有幾個方面的缺陷:需要佔用一臺伺服器資源;耗電;容易中毒導致無法正常列印;由於長時間不間斷運行,出現故障的概率高,導致無法列印;佔用辦公空間。
  • 飛槳深度學習開源框架2.0搶先看:成熟完備的動態圖開發模式
    允中 發自 凹非寺量子位 編輯 | 公眾號 QbitAI百度飛槳於近期宣布,深度學習開源框架2.0搶先版本正式發布,進入2.0時代。其中一項重大升級,就是推出更加成熟完備的命令式編程模式,即通常說的動態圖模式。
  • 擁抱開源,小米聯合中科院舉辦「第二屆中國開源科學軟體創意大賽」
    集微網8月20日 消息(文/葉子),由中國科學院計算機網絡信息中心和小米集團聯合舉辦的「第二屆中國開源科學軟體創意大賽」正火熱進行,本次活動以「人才創新、技術開源」為主題,以發展中國科學軟體生態為目的,舉辦方邀請了眾多科學軟體大師們參與評估,將在比賽中大力培養大學生們的科研素質、創新潛力
  • getty 發布,一個完全基於 java 實現的 aio 框架
    說說寫這個框架的原因:1、作者本人是一個碼農,比較喜歡研究技術,特別是網絡通訊。
  • 專訪《簡悅》:改善 318 類網站,只為做最好的「閱讀模式」
    我們邀請到了《簡悅》開發者 Kenshin,和他聊了聊這款主打「閱讀模式」的生產力工具背後的故事。認識 Kenshin我叫 Kenshin,也可以叫我 KS,一個「堅定」的遠程工作者。從 08 年開始陸續這種工作性質,最初從事 Flex 的開發,現在是 Web 端開發,當然也包括全棧開發。
  • 科學網—詳解國內首個開源自研深度學習框架
  • 攜程開源資料庫訪問框架 Ctrip DAL
    隨著企業規模擴張和業務量的急劇增加,作為系統核心的資料庫相關開發也會經歷一個由單一團隊發展為多團隊;由單機擴張到集群;由單資料庫發展為多資料庫;由採用單一資料庫產品到多種資料庫產品並存的過程。
  • 飛槳開源框架2.0四大亮點搶先看:全新升級的API體系,成熟完備的...
    5月20日的「WAVE SUMMIT」峰會上,飛槳開源框架發布了1.8版本。如今飛槳即將進入了2.0時代。飛槳2.0的四大創新帶來體驗變革,助力 AI 產業應用和科研創新再次升級!1.因此,API 是深度學習框架威力發揮的直接入口,對開發者使用體驗起著至關重要的作用,飛槳一直以來對 API 設計以及整體 API 體系的完善給予足夠重視,持續完善優化。飛槳開源框架2.0對 API 體系進行了全新升級,讓開發者們可以在使用飛槳研發探索的過程中體驗到隨心所欲、暢通無阻的愉悅感覺。
  • 荷蘭一大學合作TNO開源SIMarchitect框架
    (原標題:荷蘭一大學合作TNO開源SIMarchitect框架 可用於汽車工程應用系統建模/仿真) 核心提示:據外媒報導,當地時間5月8日,荷蘭漢恩應用科學大學(HAN
  • 百度重磅發布Apollo 3.5,全球首個自動駕駛高性能開源計算框架...
    而此次Apollo 3.5的升級主要體現在四大方面:城市駕駛能力提升、Apollo Cyber RT 框架、先進硬體平臺以及V2X 車路協同。Apollo 3.5框架Apollo 3.5框架圖從底層到頂層,分為四層構架,分別是:「開放車輛」 「硬體開發」 「開源軟體」 和「雲服務」。
  • 百度飛槳推出開源框架V2.0RC版本,帶來「編程一致、動靜統一」全新...
    12月20日,由深度學習技術及應用國家工程實驗室與百度聯合主辦的WAVE SUMMIT+2020深度學習開發者峰會在北京舉辦。百度飛槳作為國內開源最早、技術領先、功能完備的產業級深度學習平臺,繼520峰會之後,持續發布前沿產業洞察,重磅技術升級和開源生態成果。
  • 開源神經網絡框架Caffe2全介紹
    使用Caffe2移動端的GPU實現可以給你的網絡帶來實質性的加速和能耗上的優化,這一切都是開源的。在安卓設備上 我們用OpenGL來使用GPU加速神經網絡的執行。這之中我們有一整套基於OpenGL的GPU底層運算實現。CPU只需調度,無需處理數據。在部署產品的時候,有時用戶終端設備只有CPU的硬體支持。
  • 2018 年度新增開源軟體排行榜之國產 TOP 50
    項目主頁:http://www.xuxueli.com/xxl-sso/#/開源協議:GPLv3開發語言:Java項目作者:@許雪裡VNote 基於 Qt 框架,是一個受Roses 提供可靠消息最終一致性分布式事務解決方案,提供基於調用鏈的服務治理,提供可靠的服務異常定位方案(Log + Trace)等等,一個分布式框架不僅需要構建高效穩定的底層開發框架,更需要解決分布式帶來的種種挑戰!
  • 百度開源平臺上線,聚合百度開源項目
    百度公司近日上線「百度開源平臺」,該平臺主要用來展示百度的開源項目。 ,可用於集成測試或者系統級測試 UEditor:一款所見即所得富文本Web編輯器 ECharts:基於Canvas,純JavaScript圖表庫,可用來個性化定製數據可視化圖表 ESUI:一套簡單的UI Library,提供一系列的控制項,能滿足基本頁面交互功能 F.I.S: 全稱為Front-end Integrated Solution
  • 「樂享開源,創無止境」炬芯與樂美客聯合新品發布會
    「樂享開源,創無止境」炬芯與樂美客聯合新品發布會
  • jQuery 發布 3.4.0;谷歌雲聯手開源公司,挑戰亞馬遜
    這個新特性被稱為「Never Slow(永不減速)」的極速模式,它通過設置對加載資源大小的限制,然後捨棄會導致頁面讀入速度過慢的部分來幫助訪問速度較慢資源的用戶。這種新模式基於所謂的預算管理模式,谷歌Chrome處理可用頁面資源的方式。   Chrome近日正在內部測試"永不減速"模式(Never-Slow Mode),更多相關細節浮現於網絡。