QQ登录

只需要一步,快速开始

APP扫码登录

只需要一步,快速开始

查看: 2363|回复: 0

[C#/.NET] SuperSocket----可扩展的 Socket 服务器框架

[复制链接]

等级头衔

积分成就    金币 : 2859
   泡泡 : 1516
   精华 : 6
   在线时间 : 1320 小时
   最后登录 : 2025-6-15

丰功伟绩

优秀达人突出贡献荣誉管理论坛元老活跃会员

联系方式
发表于 2021-11-24 10:44:50 | 显示全部楼层 |阅读模式
1、简介
0 k" v3 Y+ C2 y! `2 ?1 T       SuperSocket 是一个轻量级, 跨平台而且可扩展的 .Net/Mono Socket 服务器程序框架。你无须了解如何使用 Socket, 如何维护 Socket 连接和 Socket 如何工作,但是你却可以使用 SuperSocket 很容易的开发出一款 Socket 服务器端软件,例如游戏服务器,GPS 服务器, 工业控制服务和数据采集服务器等等。9 G: b% ?. Q# }* ^
2、特性) H  _. ~6 c' k1 u
  • 高性能的事件驱动通信;
  • 非常简单易用; 你只需要通过创建几个类就能获得一个健壮的 Socket 服务器;
  • 内置的命令行协议让你能够迅速创建一个网络命令行接口服务器;
  • 强大且高性能的协议解析实现工具帮你简化了网络数据的分析工作;
  • 灵活的配置功能和友好的配置 API;
  • 多监听器支持; 让你在一个服务器实例内监听多个端口;
  • 多服务器实例托管的支持让你从容面对复杂的部署需求;
  • 应用程序域和进程级别的隔离能够满足你大部分的宿主场景;
  • 内置的 SSL/TLS 加密支持;
  • 会话级别的发送队列能够让你通过会话并发的发送数据,并保持高性能和可控性;
  • SuperSocket 的命令处理模式让你的业务逻辑更清晰,更有条理;
  • 优良的可扩展 API 支持: Command Filter, Connection Filter, Command Loader;
  • 可替换的日志架构允许你使用你喜欢的日志组件;
  • 动态语言的支持; 允许你用 Python 之类的脚本语言来实现命令;
  • 与 Mono/Linux 保持二进制级别的兼容;
  • Windows Azure 的支持;
  • 内置你可以直接用于 Flash 或 Silverlight 客户端的 Socket 策略服务器;
    1 L+ t9 I; d0 ^2 C% h* u: d$ k" [
3、集成3 T2 k# y% g" {3 Z5 ?
       SuperSocket 可以与 ASP.NET Core 网站并排运行。您应该做的是将 SuperSocket 注册到 ASP.NET Core 的主机构建器中,并将选项留在配置文件中或通过代码。7 |+ H' \1 F3 H0 R9 L& n: o5 h
在 Program 类中,为 SuperSocket 添加更多代码行:
2 N" P$ Z' O. K! x$ y
    //don't forget the usings
    using 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 client
                await s.SendAsync(Encoding.UTF8.GetBytes(p.Text + "\r\n"));
            });
并在配置文件“appsettings.json”中保留服务器选项:8 p' n' Q5 e- b2 x: R& w
    {
        "Logging": {
            "LogLevel": {
            "Default": "Information",
            "Microsoft": "Warning",
            "Microsoft.Hosting.Lifetime": "Information"
            }
        },
        "serverOptions": {
            "name": "TestServer",
            "listeners": [
                {
                    "ip": "Any",
                    "port": 4040
                }
            ]
        },
        "AllowedHosts": "*"
    }
4、开源地址9 s: E( x0 V. R6 N
地址 https://github.com/kerryjiang/SuperSocket
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|手机版|小黑屋|paopaomj.COM ( 渝ICP备18007172号|渝公网安备50010502503914号 )

GMT+8, 2025-6-17 10:36

Powered by paopaomj X3.5 © 2016-2025 sitemap

快速回复 返回顶部 返回列表