zoukankan      html  css  js  c++  java
  • .NET消息服务器Laharsub简介

    Laharsub是一种开源的.NET发布-订阅消息服务器,用于实时的web应用程序,像聊天、在线写作、新闻或者股票交易更新等等。

    Laharsub是一种构建在三层架构之上的发布-订阅消息服务器: 前端——客户端,中间层——web服务,后端——带有发布-订阅功能和存储能力的系统。 客户端一般是浏览器,但是可以是所有已知能够做出HTTP请求的程序。 中间层是一种WCF的HTTP服务,它会从客户端接收消息,并向其发送消息,而后端会包含真正的与消息相关的逻辑。

    客户端可以创建主题,并通过RESTful 的API向它们提交消息,而其它客户端会通过HTTP的长轮询机制(long polling)来订阅多种主题。 客户端使用一个请求就可以订阅多个主题。 Laharsub提供了jQuery、Silverlight和.NET 4.0的客户端,负责设计结构、多路传递以及长轮询的管理。 据项目的协作者Tomasz Janczuk所说,Laharsub在将来会使用WebSockets。

    据Janczuk所说,由于web服务没有状态,因此可以很好地伸缩。 Laharsub具有能够在内存中扩展到上千用户的后端,但是仅限于单独的节点。 对更好的可伸缩性感兴趣的人提出了这样的建议,“提供发布-订阅功能的自定义后端,消息存储,并扩展到web farm的多个节点中”。 web服务会以Windows service或者控制台应用程序的形式运行。

    订阅主题的示例如下:

    GET http://laharsrv/ps/sql/subscriptions/volatile?subs[0][topicid]=14&subs[0][from]=1 HTTP/1.1Host: laharsrv

    响应会是这样的:

    HTTP/1.1 200 OKContent-Length: 406Content-Type: multipart/mixed; boundary=1d69db84.154e.47f7.be93.cc8b65b6efd0Server: Microsoft-HTTPAPI/2.0Date: Tue, 18 May 2010 23:14:24 GMT--1d69db84.154e.47f7.be93.cc8b65b6efd0Content-Type: text/plain; charset=UTF-8Content-Description: 14/929Hello, world!

    该项目位于CodePlex中,遵从新的BSD许可(BSD)。 在这里发布了一个页面,其中描述了在服务器上应用的压力测试和性能结果。 对未来的计划包括将服务器部署到Windows Azure和Amazon EC2上的能力,同时包括扩展到多台计算机上的功能。

    查看英文原文:Laharsub, a .NET Messaging Server

    作者:小城故事
    本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利.
  • 相关阅读:
    线程(C++11)
    初始化、赋值
    优质学习资料总结
    移植之乱谈
    采集音频和摄像头视频并实时H264编码及AAC编码
    H264解码器源码(Android 1.6 版)
    移植ffmpeg到VC环境心得
    收集的网络上大型的开源图像处理软件代码(提供下载链接)
    C++开源库,欢迎补充。
    一个轻量级AOP的实现(开源)
  • 原文地址:https://www.cnblogs.com/puda/p/1867587.html
Copyright © 2011-2022 走看看