首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >编写主题发布/子系统

编写主题发布/子系统
EN

Stack Overflow用户
提问于 2009-06-24 15:58:58
回答 2查看 335关注 0票数 0

我正在编写一个客户机/服务器应用程序,它将发布和订阅主题。关于这个项目的架构和实现,我很少有疑问。

首先,为了建立基础,我将使用c# ( .NET 3.5 ),并且我希望显式地使用原始套接字/AIO/线程(一开始没有WCF,因为我想根据我的需要对服务器和客户端进行微调)。客户端主要订阅主题,但有时会向服务器发送命令,甚至发布数据。有些客户可能也只是出版商。

  1. 您认为什么应该是我的服务器的基本构建块(每个客户端线程,iocp,.
  2. 客户端是否应该使用相同的NetworkStream来侦听订阅的主题并向服务器发送命令/发布?如何在等待数据的同时将数据写入流,这是否应该在同一个线程中完成?

(示例代码将不胜感激:)

EN

回答 2

Stack Overflow用户

发布于 2009-06-24 16:05:29

  1. I将尽可能多地使用异步套接字,这样就不需要管理自己的线程池来处理请求了。客户机
  2. 应该使用两个流--一个用于列表,另一个用于发送。这将大大简化客户端和服务器端的操作。同样,使用异步套接字来避免管理多个线程.

只需确保小心地管理异步回调使用的共享资源的锁定。如果可能的话,尽量避免共享资源。对事物的并发访问通常是像这样的应用程序中最糟糕的部分。

票数 0
EN

Stack Overflow用户

发布于 2009-06-24 16:06:53

你查过ActiveMQ了吗?我相信它已经做了一些主题,并且C#有能力通过他们的NMS与它交谈。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1039282

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档