github开源推荐:SuperSocket, 可扩展的 Socket 服务器框架
1、簡介
SuperSocket 是一個輕量級, 跨平臺而且可擴展的 .Net/Mono Socket 服務器程序框架。你無須了解如何使用 Socket, 如何維護 Socket 連接和 Socket 如何工作,但是你卻可以使用 SuperSocket 很容易的開發出一款 Socket 服務器端軟件,例如游戲服務器,GPS 服務器, 工業控制服務和數據采集服務器等等。
2、特性
高性能的事件驅動通信;
非常簡單易用; 你只需要通過創建幾個類就能獲得一個健壯的 Socket 服務器;
內置的命令行協議讓你能夠迅速創建一個網絡命令行接口服務器;
強大且高性能的協議解析實現工具幫你簡化了網絡數據的分析工作;
靈活的配置功能和友好的配置 API;
多監聽器支持; 讓你在一個服務器實例內監聽多個端口;
多服務器實例托管的支持讓你從容面對復雜的部署需求;
應用程序域和進程級別的隔離能夠滿足你大部分的宿主場景;
內置的 SSL/TLS 加密支持;
會話級別的發送隊列能夠讓你通過會話并發的發送數據,并保持高性能和可控性;
SuperSocket 的命令處理模式讓你的業務邏輯更清晰,更有條理;
優良的可擴展 API 支持: Command Filter, Connection Filter, Command Loader;
可替換的日志架構允許你使用你喜歡的日志組件;
動態語言的支持; 允許你用 Python 之類的腳本語言來實現命令;
與 Mono/Linux 保持二進制級別的兼容;
Windows Azure 的支持;
內置你可以直接用于 Flash 或 Silverlight 客戶端的 Socket 策略服務器;
3、集成
與 ASP.Net Core 網站集成
是的,SuperSocket 可以與 ASP.NET Core 網站并排運行。您應該做的是將 SuperSocket 注冊到 ASP.NET Core 的主機構建器中,并將選項留在配置文件中或通過代碼。
在 Program 類中,為 SuperSocket 添加更多代碼行:
//don't forget the usingsusing SuperSocket;using SuperSocket.ProtoBase;public static IHostBuilder CreateHostBuilder(string[] args) =>Host.CreateDefaultBuilder(args).ConfigureWebHostDefaults(webBuilder =>{webBuilder.UseStartup<Startup>();}).AsSuperSocketHostBuilder<TextPackageInfo, LinePipelineFilter>().UsePackageHandler(async (s, p) =>{// echo message back to clientawait s.SendAsync(Encoding.UTF8.GetBytes(p.Text + "\r\n"));});并在配置文件“appsettings.json”中保留服務器選項:
{"Logging": {"LogLevel": {"Default": "Information","Microsoft": "Warning","Microsoft.Hosting.Lifetime": "Information"}},"serverOptions": {"name": "TestServer","listeners": [{"ip": "Any","port": 4040}]},"AllowedHosts": "*"}4、開源地址
地址
https://github.com/kerryjiang/SuperSocket
總結
以上是生活随笔為你收集整理的github开源推荐:SuperSocket, 可扩展的 Socket 服务器框架的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 在业务层实现记录请求日志
- 下一篇: .NET GC 实时监控工具 dotne