既作为客户端又作为服务端消息如何调度

勤奋的执着 2014-07-06 11:43:48
客户端A -> 服务器B1,客户端B2->服务端C

这里面的客户端A连接服务器B1为长连接,客户端B2连接服务端C也是长连接。

这时候服务器B1收到消息,如何调用客户端B2将消息转发到服务端C呢??

这时候如何不破坏服务端,而又能找到客户端B2,将消息发送到C呢,求解。。

没分了,都在这了,见谅。。
...全文
335 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
勤奋的执着 2014-07-07
  • 打赏
  • 举报
回复
引用 1 楼 sp1234 的回复:
B1直接发消息给C就行了,找B2干什么?
不是,b1是服务端监听端口,b2是客户端端口,两个不一样,我现在问题就是想从第一个端口收到消息,通过第二个端口转发, 现在有两个类,一个监听类,一个客户端类,我需要从监听类对象中获取到的消息,通过客户端类对象转发
勤奋的执着 2014-07-07
  • 打赏
  • 举报
回复
引用 3 楼 caozhy 的回复:
既当服务器,又当客户端,这不就是per to per(p2p)么。说那么邪乎干嘛。
当服务端收到消息时,怎么找到它的客户端呢??都是长连接的,我不想破坏封装,所以没把客户端对象传进去。服务端类,客户端类相互独立
勤奋的执着 2014-07-07
  • 打赏
  • 举报
回复
理解错了吧,这完全就是两个端口啊,这就是既做客户端,又做服务端。。
threenewbee 2014-07-07
  • 打赏
  • 举报
回复
既当服务器,又当客户端,这不就是per to per(p2p)么。说那么邪乎干嘛。
  • 打赏
  • 举报
回复
所谓服务器,它当然既可以收消息也可以发消息(不然如何发送返回信息?)。 通常客户端都是在多层 NAT 路由设备的后边,服务器不可能直接发送信息给它。这才是服务器跟客户端的区别。 而服务器之间,直接发信息就行了。
  • 打赏
  • 举报
回复
B1直接发消息给C就行了,找B2干什么?

110,539

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧