一个简单通知服务的开发和搭建
2016-02-03 15:08
302 查看
系统主要是为了实现一个消息入口,多个服务能够接受处理。增加和删除消息处理服务通过订阅和取消订阅实现,尽量做到低耦合。
1、消息入口服务
消息入口服务采用支持跨平台的webService实现,该服务负责管理当前订阅的服务以及分发消息的管理。为了保证服务的及时响应,消息接收后直接存入队列,如果涉及到编码或者过滤的话,目前个人的思路放在队列后边,大量消息的处理可能会让消息堵塞,所以尽量让队列做下缓冲。
2、消息处理服务
消息处理服务均采用wcf实现,所有的服务均需实现统一的接口,入口服务并不等待处理服务处理结束。
3、桌面通知服务
桌面通知服务的前端是寄宿在Windows服务中的wcf,收到服务后转发给消息通知队列。基于supersocket的分发服务从消息通知队列里不断的拉取消息。
4、客户端
客户端采用socket与桌面通知服务相连接,如果有消息到达,则以桌面交互的方式通知给用户。
系统结构图:
1、消息入口服务
消息入口服务采用支持跨平台的webService实现,该服务负责管理当前订阅的服务以及分发消息的管理。为了保证服务的及时响应,消息接收后直接存入队列,如果涉及到编码或者过滤的话,目前个人的思路放在队列后边,大量消息的处理可能会让消息堵塞,所以尽量让队列做下缓冲。
2、消息处理服务
消息处理服务均采用wcf实现,所有的服务均需实现统一的接口,入口服务并不等待处理服务处理结束。
3、桌面通知服务
桌面通知服务的前端是寄宿在Windows服务中的wcf,收到服务后转发给消息通知队列。基于supersocket的分发服务从消息通知队列里不断的拉取消息。
4、客户端
客户端采用socket与桌面通知服务相连接,如果有消息到达,则以桌面交互的方式通知给用户。
系统结构图:
相关文章推荐
- truncate table 和delete * from的区别
- textview 占位字
- linux下的软件安装
- CCS3属性之text-overflow:ellipsis;的用法和注意之处
- 前端初级自动化---脚本,样式合并及压缩
- 配置windows update失败还原更改_解决方案
- angular学习笔记
- 线程的同步和异步
- TBB之concurrent_hash_map
- Codeforces Round #235 (Div. 2) D. Roman and Numbers (数位dp、状态压缩)
- HDU 5610 Baby Ming and Weight lifting 暴力
- BZOJ 4321: queue2|动态规划
- Scala之类和对象
- bzoj1927 星际竞速 费用流
- linux tail指令
- Display Loaded and Available Modules in Windows PowerShell
- 数位拆解 1
- android系统源码学习 -- 蓝牙 bluetooth (一) 入门
- 第十五章 单点登录——《跟我学Shiro》
- 模板编译模型