当前位置: 首页 > news >正文

吉林省高等级公路建设局 网站制作网站哪家专业

吉林省高等级公路建设局 网站,制作网站哪家专业,微信小程序制作公司排行榜,网站 工作室 建设 方案MQ是一种企业服务的消息中间节技术,这种技术常常伴随着企业服务总线相互使用,构成了企业分布式开发的一部分,如果考虑到消息的发送和传送之间是可以相互不联系的并且需要分布式架构,则可以考虑使用MQ做消息的中间价技术&#xff0…

MQ是一种企业服务的消息中间节技术,这种技术常常伴随着企业服务总线相互使用,构成了企业分布式开发的一部分,如果考虑到消息的发送和传送之间是可以相互不联系的并且需要分布式架构,则可以考虑使用MQ做消息的中间价技术,MQ的功能已经足够开发使用。

MSMQ 原理

MSMQ的实现原理是:消息的发送者把自己想要发送的信息放入一个容器,然后把它保存到一个系统公用空间的消息队列中,本地或异地的消息接收程序再从该队列中取出发给它的消息进行处理。

消息队列是一个公用存储空间,它可以存在于内存中或物理文件中,因此,消息以两种方式发送,即快递方式和可恢复模式。它们的区别是消息存储位置的不同,快递方式,为了消息的快速传递,所以把消息放置在内存中,而不放在物理磁盘上,以获得较高的处理能力;而可恢复模式在传送过程的每一步骤中,都把消息写入物理磁盘上,这样当保存消息队列的机器发生故障而重新启动后,可以把发送的消息恢复到故障发送之前的状态,以获得更好的消息恢复能力。消息队列可以放在发送方、接收方所在的机器上,也可以单独放置在另外一台机器上。另外,采用消息队列机制,发送方不必要担心接收方是否启动,是否发生故障等因素,只要消息成功发送出去,就可以认为处理完成,而实际上对方可能甚至未开机,或者实际消息传递到对方可能在第二天。MSMQ机制类似QQ消息传递机制。下图演示了MSMQ的实现原理。
  在这里插入图片描述

公共队列:在整个消息队列网络中复制,有可能由网络连接的所有站点访问。
路径格式为:
机器名称\队列名称

专用队列(或叫私有队列):不在整个网络中发布,它们仅在所驻留的本地计算机上可用,专用队列只能由知道队列的完整路径名称或标签的应用程序访问。
路径格式为:
机器名称\Private$\队列名称

日志队列:包含确认在给定“消息队列中发送的消息回执消息”。

路径格式为:机器名称\队列名称\Journal$

响应队列:包含目标应用程序接收到消息时返回给发送应用程序的响应消息,包括机器日志队列、机器死信队列和机器事务死信队列。其中,

机器信道死信队列对应的格式为:机器名称\XactDeadletterKaTeX parse error: Undefined control sequence: \Deadletter at position 20: …死信队列对应的格式为:机器名称\̲D̲e̲a̲d̲l̲e̲t̲t̲e̲r̲
机器日志队列对应的格式为:机器名称\Journal$;

优点:稳定、消息优先级、脱机能力以及安全性,有保障的消息传递和执行许多业务处理的可靠的防故障机制。

缺点:MSMQ不适合于Client需要Server端实时交互情况.大量请求时候,响应延迟.

工作组模式或域模式
MSMQ可以安装为工作组模式或域模式。如果安装程序没有找到一台运行提供目录服务的消息队列的服务器,则只可以安装为工作组模式,此计算机上的“消息队列”只支持创建专用队列和创建与其他运行“消息队列”的计算机的直接连接。

《安装与启动服务》
在这里插入图片描述
我的电脑 >> 管理 >> 服务和应用程序 >> 消息队列 。出现消息队列则说明安装成功
在这里插入图片描述

MSMQ 客户端

using System;
using System.Messaging; // 需要添加System.Messaging引用namespace MSMQClient
{class Program{static void Main(string[] args){//私有队列  、专用队列if (MessageQueue.Exists(@".\Private$\AresWangMSMQ")){// 创建消息队列对象using (MessageQueue mq = new MessageQueue(@".\Private$\AresWangMSMQ")){// 设置消息队列的格式化器mq.Formatter = new XmlMessageFormatter(new string[] { "System.String" });foreach (Message msg in mq.GetAllMessages()){Console.WriteLine("Received Private Message is: {0}", msg.Body);}if(mq.CanRead){//mq.Peek()   // 获得消息队列中第一条消息,但删除第一条记录Message firstmsg = mq.Receive(); // 获得消息队列中第一条消息,且删除第一条记录,Console.WriteLine("Received The first Private Message is: {0}", firstmsg.Body);}}}Console.Read();}}
}

MSMQ 服务端

using System;
using System.Messaging;namespace MSMQServer
{class Program{  static void Main(string[] args){// 创建一个公共队列,公共队列只能创建在域环境里//if (!MessageQueue.Exists(@".\AresWangMSMQ")) // 判断此路径下是否已经有该队列//{//    using (MessageQueue mq = MessageQueue.Create(@".\AresWangMSMQ"))//    {//        mq.Label = "AresWangMSMQ"; // 设置队列标签//        Console.WriteLine("已经创建了一个公共队列");//        Console.WriteLine("路径为:{0}", mq.Path);//        Console.WriteLine("队列名字为:{0}", mq.QueueName);//        mq.Send("MSMQ Message", "Leaning Hard"); // 发送消息//    }//}//if (MessageQueue.Exists(@".\Private$\AresWangMSMQ"))//{//    // 删除消息队列//    MessageQueue.Delete(@".\Private$\AresWangMSMQ");//}// 创建一个私有消息队列if (!MessageQueue.Exists(@".\Private$\AresWangMSMQ")){using (MessageQueue mq = MessageQueue.Create(@".\Private$\AresWangMSMQ")){mq.Label = "AresWangMSMQ"; Console.WriteLine("已经创建了一个私有队列");Console.WriteLine("路径为:{0}", mq.Path);Console.WriteLine("私有队列名字为:{0}", mq.QueueName);mq.Send("MSMQ Private Message", "AresWangMSMQ"); // 发送消息}}// 遍历所有的公共消息队列//foreach (MessageQueue mq in MessageQueue.GetPublicQueues())//{//    mq.Send("Sending MSMQ public message" + DateTime.Now.ToLongDateString(), "Learning Hard");//    Console.WriteLine("Public Message is sent to {0}", mq.Path);//}if (MessageQueue.Exists(@".\Private$\AresWangMSMQ")) {// 获得私有消息队列MessageQueue mq = new MessageQueue(@".\Private$\AresWangMSMQ");if(mq.CanWrite){mq.Send("Sending MSMQ private message" + DateTime.Now.ToLongDateString(), "AresWangMSMQ");}Console.WriteLine("Private Message is sent to {0}", mq.Path);}Console.Read();}}
}

在这里插入图片描述

在这里插入图片描述

http://www.yayakq.cn/news/682736/

相关文章:

  • 现在建设网站挣钱吗做网站需要多少钱 百度
  • 网站文章多久才收录网站建设需网站
  • 网站开发电话安徽省工程建设信息网官网查询
  • wordpress 翻页插件网站页面seo
  • 网站不交换友情链接可以吗福州工程网站建设团队
  • 济南哪家公司做网站好广东网站建设发信息
  • 东莞网站推广设计免费有趣的网站
  • 门户网站建设的平台晋城市住房和城乡建设局官方网站
  • 网站搭建吧怎么在jsp网站做验证码
  • 如何做网站站长如何上传ftp网站程序
  • 金坛市建设银行网站西安建设工程网上交易平台
  • 外贸网站平台有哪些济南asp网站制作公司
  • 做电影网站什么系统好室内设计效果图背景墙
  • 网站营销咨询顾问作为一个大学生网站 应该怎么做
  • 移动网站建设规定单位网站的建设
  • 网站建设交付物清单网络推广怎么找客户
  • 视频网站建设审批福田工作招聘
  • 网站建设中的技术问题卖域名
  • 酒店旅游团购网站建设沭阳网站定制
  • 1.简述网站建设的步骤太原搜索排名提升
  • 艺术设计教学资源网站建设标准wordpress移动端底部广告
  • 网站域名批量查询注册wordpress 评论模块
  • 网站设计不包括wordpress自动缩略图
  • 松江醉白池网站建设开网站建设公司赚钱吗
  • 苏州做商城网站设计wordpress 相册 json
  • 旅游网站建设前期分析网站主机的类型
  • 企业网站整站网站建设意见征求汇报
  • 设计师个人网站架构知乎营销平台
  • 网站打包成app软件给企业做网站挣钱吗
  • 寻乌网站建设湖州城市投资建设集团网站