2881099 / FreeIM

.NETCore websocket 实现简易、高性能、集群即时通讯组件,支持点对点通讯、群聊通讯、上线下线事件消息等众多实用性功能.
MIT License
1.47k stars 432 forks source link

服务端应该怎么发布部署? #25

Open YoChen opened 4 years ago

YoChen commented 4 years ago

发布成web项目? Exe文件? Dll然后部署成服务? 看您写的可以发布成多个站点以支持高并发,是部署成web项目然后在IIS下运行么?

2881099 commented 4 years ago

分开部署的

ImServer 是独立的 .net core 应用服务,充当 websocket 服务端。

webapi 即你们开发的应用,可以是 .net core、.net framework,引用 ImCore.dll 他提供 ImHelper 静态类访问与 ImServer 进行交互。

YoChen commented 4 years ago

分开部署的

ImServer 是独立的 .net core 应用服务,充当 websocket 服务端。

webapi 即你们开发的应用,可以是 .net core、.net framework,引用 ImCore.dll 他提供 ImHelper 静态类访问与 ImServer 进行交互。

感谢您的回复。

有个疑问,如果我直接将ImServer部署成服务,例如按此方法:https://www.cnblogs.com/tangchun/p/10382215.html

那么服务器上也有IIS存在着网站访问服务,端口分别为80和443,此时的ImServer服务端口还可以设置成80和443吗?也绑定一个指向此服务器并且未被IIS使用的域名?

2881099 commented 4 years ago

@YoChen 换个端口,没必要纠结 80 还是 8081

终端访问:ws.baidu.com:8081

YoChen commented 4 years ago

收到,感谢您的耐心回复。开始尝试服务器端部署及测试。

YoChen commented 4 years ago

再次请教一下,@2881099 如果是发布成exe直接运行,在win10环境下用IP+端口方式运行,能在局域网中直接访问这个websocket服务吗?

2881099 commented 4 years ago

可以

Developer-echo commented 3 months ago

遇见个问题。 ImServer部署到pc1, cmd > dotnet ImServer.dll --urls http://*:6001 运行后。

PC2 debug WebApi 可以获取到token,链接ws状态码101,聊天室中发送消息PC1接收不到,但是可以接收到PC1在聊天室中发送的消息

PC1 debug Webapi 一切正常。

==================================== 2024 09/02 10:00 已解决此问题,还是一开始没搞清楚ImServer中的 Servers/Server 配置项的关键性。这个参数必须和client要访问的ws地址完全一致!