很多需要提高应用性能(提高立即响应速度(但不立即处理)、提高吞吐能力、提升用户体验)的场景,
都采用异步处理的机制,.Net 中可能用 MSMQ 的实现样例不少,其实自行实现异步队列并不复杂。

最近有两个项目组的同事向我要了类似的关于实现异步队列的方法,
于是翻出了两年以前写的实现 SP 与运营商短信网关通信的上下行短信队列处理相关的代码,
尽管不难,自觉多少有点儿技术含量,拿出来晒晒,

因此去掉了所有的与业务相关的逻辑,保留通用的异步处理功能,
提炼出一套完整的、通用的、核心关键代码,编译后即可运行,方便大家。

该 Remoting 异步队列的实现,主要使用的 .Net 技术是多线程、Remoting、泛型容器类...
流程如下
1.并发若干客户端程序通过调用 RemotingQueue Server 提供的公开远程方法 Enqueue 将数据元素入队尾
2.RemotingQueue Server 发现队列不为空,则并发若干(<n)多线程陆续 Dequeue 队首数据元素并处理

注意:
1.队列的数据元素定义需自行实现
2.对出列数据元素的处理程序需自行实现

本人手懒,就写这么多,不再多写废话!

完整代码如下,注释不多,手懒,请谅解!

 

利用 Remoting 实现异步队列机制// share.cs
利用 Remoting 实现异步队列机制
//Server、Client 均需引用此 share.dll
利用 Remoting 实现异步队列机制
利用 Remoting 实现异步队列机制
//C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\csc.exe /t:library share.cs
利用 Remoting 实现异步队列机制
//TO DO
利用 Remoting 实现异步队列机制
//队列的数据元素定义需自行实现,示例如下:
利用 Remoting 实现异步队列机制
namespace Microshaoft.RemotingObjects.Share
}

 

利用 Remoting 实现异步队列机制// client.cs
利用 Remoting 实现异步队列机制
//C:\WINDOWS\Microsoft.NET\Framework\v1.1.4322\csc.exe client.cs /r:share.dll
利用 Remoting 实现异步队列机制
namespace Microshaoft.RemotingObjects.Client

 

相关文章:

  • 2021-09-22
  • 2021-11-22
  • 2021-07-23
  • 2022-12-23
  • 2021-06-01
猜你喜欢
  • 2021-08-01
  • 2022-12-23
  • 2022-12-23
  • 2022-03-07
  • 2022-12-23
  • 2022-12-23
  • 2021-11-17
相关资源
相似解决方案