supersocket缓冲区_Super socket 记录知识

supersocket缓冲区_Super socket 记录知识在 SocketServic 中运行你的 AppServerSup 提供了一个名叫 SocketServic 的项目 它是一个能够让 AppServer 运行于其中的容器 SocketServic 能够使你的 AppServer 以控制台或者 windows 服务的形式运行 需注册 有两种方法可以让你的 AppServer 运行于 SocketServic 之中 复制你的 AppServer 的 d

在SocketService中运行你的AppServer

SuperSocket 提供了一个名叫”SocketService”的项目,它是一个能够让AppServer运行于其中的容器。 SocketService能够使你的AppServer 以控制台或者windows服务的形式运行 (需注册)。

有两种方法可以让你的AppServer运行于SocketService之中:

复制你的AppServer的dll输出到SocketService的编译输出目录

在你的AppServer项目中引用SocketService项目。如果你是用这种方式,你需要新建一个名为”SuperSocket.SocketService.exe.config”的配置文件,并且设置这个文件的Build Action为Content和Copy if newer。新建此文件的原因是VS.NET不会复制SocketService项目的配置文件到此项目的输出目录,但最终运行的程序是SuperSocket.SocketService.exe,所以文件SuperSocket.SocketService.exe.config是必须的。QuickStart中的示例项目都是通过这种方式构建。

不管你用哪一种方法,在你运行SocketService之前,必须添加你的socket服务器定义到配置文件SuperSocket.SocketService.exe.config之中。

这里有一个配置示例:

serviceName=”BroardcastService”

ip=”Any” port=”911″ mode=”Async”>

type=”SuperSocket.QuickStart.BroadcastService.BroadcastServer, SuperSocket.QuickStart.BroadcastService” />

同时,将SuperSocket提供的log4net配置文件(Config/log4net.config)包含到你的启动项目里面(同样是Config目录下),并确保它编译时被输出。

定义你的SocketServer时候主要有两个地方需要注意:

1)  定义你的服务:

type=”SuperSocket.QuickStart.BroadcastService.BroadcastServer, SuperSocket.QuickStart.BroadcastService” />

服务是指你在此程序中能运行的的类型,你应该将你实现的AppServer的完整类型名称和简称添加到你的服务节点。

2) 定义你的服务器实例

serviceName=”BroardcastService”

ip=”Any” port=”911″ mode=”Async”>

在你添加完服务节点之后,你就可以基于你刚添加的服务来添加你的服务器实例。一个Server xml节点代表了一个服务器运行实例。Server节点的属性”serviceName” 被用来确定一个服务器实例运行的AppServer的类型。Server节点还有其他必填属性,例如: name, ip 和 port。你还可以定义其他的可选属性,相关的属性介绍你可以在下面的链接中找到:http://www.cnblogs.com/jzywh/archive/2011/04/20/2022946.html

你完成的配置之后,你就可以启动你的SuperSocket了。

1)  以控制台的形式启动

运行输出目录的批处理文件 “RunServer.bat” 就可以让你的SuperSocket 以控制台程序的形式运行

2) 以Windows服务的形式启动

SocketService项目提供了两个批处理文件用于windows service,InstallService.bat用于安装SuperSocket服务,UninstallService.bat 用于卸载服务。因为SocketService默认的启动方式是手动启动,所以在安装完服务之后请手动启动服务。

你也可以在你自己的应用程序容器中运行SuperSocket.

添加SuperSocket相关的引用到你的项目,然后添加下面的代码到你的应用程序入口:

LogUtil.Setup();

SocketServiceConfig serverConfig = ConfigurationManager.GetSection(“socketServer”) as SocketServiceConfig;

if (!SocketServerManager.Initialize(serverConfig))

{

return;

}

if (!SocketServerManager.Start())

{

SocketServerManager.Stop();

return;

}

无论怎样,在应用程序配置文件中添加SuperSocket相关的配置都是必需的, 同时确保把SuperSocket提供的log4net配置文件log4net.config输出到目录/Config也是使日志功能正常工作的必要条件。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/213702.html原文链接:https://javaforall.net

(0)
上一篇 2026年3月18日 下午5:50
下一篇 2026年3月18日 下午5:50


相关推荐

  • windows日志转发到服务器_windows查看日志

    windows日志转发到服务器_windows查看日志配置windows日志事件转发详细教程

    2025年10月7日
    5
  • 设备树详解

    设备树详解在Linux3.x版本后,arch/arm/plat-xxx和arch/arm/mach-xxx中,描述板级细节的代码(比如platform_device、i2c_board_info等)被大量取消,取而代之的是设备树

    2022年6月29日
    27
  • 设计模式 | 适配器模式及典型应用

    设计模式 | 适配器模式及典型应用适配器模式适配器模式(AdapterPattern):将一个接口转换成客户希望的另一个接口,使接口不兼容的那些类可以一起工作,其别名为包装器(Wrapper)。适配器模式既可以作为类结构型模式,也可以作为对象结构型模式。在适配器模式中,我们通过增加一个新的适配器类来解决接口不兼容的问题,使得原本没有任何关系的类可以协同工作。根据适配器类与适配者类的关系不同,适配器模式可分为对象适配器和类适…

    2022年7月25日
    12
  • 清除浮动的4种方式

    清除浮动的4种方式为什么要清除浮动 清除浮动主要是为了解决 父元素因为子级元素浮动引起的内部高度为 0 的问题如下 给父盒子设置一个 boder 内部放两个盒子一个 big 一个 small 未给 big 和 small 设置浮动 则他们会默认撑开父盒子 当我给内部两个盒子加上 float 属性的时候底部的 footer 盒子就会顶上来 然后父盒子因为没设置高度 变成一条线 big 和 small 已经浮动了清除浮动的方法 最常用的 4 种 一 额外标签法 给谁清除浮动 就在其后额外添加一个空白标签 优点 通俗易懂 书写方便

    2026年3月17日
    2
  • DB2常用命令总结

    DB2常用命令总结

    2021年5月6日
    114
  • 银行家算法c语言代码运行界面,银行家算法C语言模拟程序[通俗易懂]

    银行家算法c语言代码运行界面,银行家算法C语言模拟程序[通俗易懂]银行家算法C语言模拟程序这个最简单的模拟程序,为了完成操作系统作业而做的。大家放心,绝对可以运行,呵呵!有什么不完善的地方请提出!(在计数器的运用上比较乱,希望大家看的明白)作者:luo卢丹)源程序:#include#include#includeintAvailable[10];//可使用资源向量intMax[10][10];//最大需求矩阵i…

    2022年7月22日
    14

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号