ESFramework 通訊框架

2021-05-28 16:37:27 字數 2202 閱讀 5061

esframework

是一套效能卓越、穩定可靠、強大易用的跨平台通訊框架,支援應用伺服器集群。其內建了

等功能。基於esframework,您可以方便快捷地開發出各種優秀的網路通訊應用。此外,我們在長期實踐中所積累的豐富經驗,更將成為您強大的技術保障,從開發到上線直至後續運維,全程為您保駕護航,讓您高枕無憂。具體而言,esframework 具有如下特性:

esframework效能測試

esframework起始於2023年,從0.1版本不斷完善和優化到今天4.0版本已經有8年時間,其核心(esframework.dll)已經相當成熟穩定,所有已經發現的核心bug都已被解決,而且自2023年以來,沒有新的核心的bug被發現。另外,esframework只會在需要時才使用必要的資源(如cpu、記憶體),並且會及時釋放持有的資源,不會有記憶體洩露等情況發生。如果您的業務邏輯**沒有bug,那麼基於esframework的服務端正常執行一年,都不用重啟一次。

現有的大多數通訊框架僅僅解決了通訊層的問題,而且幾乎都是部分地解決。而esframework不僅僅完整地解決了通訊層的需求,並且也解決了絕大多數通訊系統中都關注的應用層的重要問題,這使得基於esframework開發分布式通訊系統更迅速、更高效。

在通訊層:esframework 支援tcp/udp、文字協議/二進位制協議、服務端/客戶端以及它們組合的任意方式,並提供多種通訊引擎供服務端開發人員和客戶端開發人員使用。

在安全性:esframework 內建了常見的重要安全機制以防止惡意使用者在應用層對服務端進行試探或攻擊。這些機制有:訊息格式完整驗證、訊息加密、驗證未繫結的訊息、繫結連線、關閉空連線等。

esframework提供了基於tcp和udp的p2p通訊(不僅是區域網,還支援廣域網p2p通訊),而且基於udp的p2p做了增強,以保證基於udp的p2p通訊也像tcp一樣可靠。在客戶端之間需要高頻通訊的分布式系統中(如im系統等),可靠的p2p通訊將為您節省巨大的頻寬和伺服器成本。

esplatform平台支援基於esframework的應用程式的cluster(群集),其內建了3種最常用的負載均衡策略。僅僅通過修改幾行**就可以將乙個基於esframework的應用程式平滑遷入到

esplatform

平台中,以實現多台應用伺服器的cluster,從而應對日益增長的巨大併發。使用esplatform群集,我們可以非常方便地在執行時動態新增/移除應用伺服器(as)例項節點。

跨平台是esframework體系的重要目標之一,esframework通過提供多平台的客戶端引擎來實現這一點。 當跨平台全面實現後,基於esframework開發的不同平台的客戶端之間可以相互通訊,如此,異構環境將變得透明化。

目前提供的客戶端引擎包括:.net客戶端引擎是基於.net 2.0構建的,可直接在windows應用程式和wpf應用程式中使用;esframework.sl 是基於silverlight 3.0構建的,esframework.wp 是基於windows phone os 7.1構建的。我們盡可能地採用較低版本的執行庫構建客戶端引擎,利用執行庫的向下相容性,使esframework能被盡可能多的開發者使用。

另外,esframework的flash客戶端引擎、iphone 客戶端引擎、android客戶端引擎正在開發中,敬請期待。

esframework規定了訊息處理的骨架流程,並在骨架中提供了足夠多的擴充套件點,使您可以輕鬆地掛接您自己開發的元件(比如加密/解密元件、或訊息監控元件等)。另外,esframework在設計和實現時採用了介面分離原則,使得大多數內建元件都可以被自定義的元件所替代。

esframework提供的所有介面和api都具有良好的編碼風格,與.net framework完全一致。我們提供了msdn風格的幫助文件、demo原始碼、esframework開發手冊系列文章供您研究和學習使用esframework進行開發。

esframework 雖然功能強大豐富,但是使用非常簡單,因為其採用了優秀的架構設計和實現,將複雜性都遮蔽在了框架的內部,暴露給使用者的都是簡單易用、清晰明確的api。而且,esframework還提供了rapid引擎給使用者進行快速開發,從未接觸過esframework的人,也可以在1-2個小時之內便上手使用rapid引擎開發分布式通訊系統。

閱讀更多esframework開發手冊及相關文件

通訊框架選型

最近想選擇乙個通訊框架,net體系裡,大概在網上找到dotnetty,akka.net和國產的supersocket。最先看了supersocket,基本接受他的api設計。但最後評估了一下開源生態,supersocket更新的好像比較緩慢,重要的是還不支援.net core,最後還是放棄了。另外看...

ESFramework 4 0 效能測試

本實驗用於測試esframework服務端引擎的效能,測試程式使用最新發布的esframework 4.0.7.0版本。測試的機器總共有3臺,都是普通的pc,一台作為伺服器,兩台作為客戶端。作為伺服器是pc配置如下 作業系統 windows server 2003 enterprise editio...

ESFramework 4 0 效能測試

本實驗用於測試esframework服務端引擎的效能,測試程式使用最新發布的esframework 4.0.7.0版本。測試的機器總共有3臺,都是普通的pc,一台作為伺服器,兩台作為客戶端。作為伺服器是pc配置如下 作業系統 windows server 2003 enterprise editio...