如何设计一个消息中间件? 消息中间件的总体架构

MQ 概念

1.消息(Message)

消息是MQ中最小的概念,本质上就是一段数据,它能被一个或者多个应用程序所理解,是应用程序之间传递的信息载体。

2.队列(Queue)

2.1 本地队列

本地队列按照功能可划分为初始化队列,传输队列,目标队列和死信队列。

初始化队列用作消息触发功能。

传输队列只是暂存待传的消息,条件许可的情况下,通过管道将消息传送到其他的队列管理器。

目标队列是消息的目的地,可以长期存放消息。

如果消息不能送达目标队列,也不能再路由出去,则被自动放入死信队列保存。

2.2 别名队列&远程队列

只是一个队列定义,用来指定远端队列管理器的队列。使用了远程队列,程序就不需要知道目标队列的位置。

2.3 模型队列

模型队列定义了一套本地队列的属性结合,一旦打开模型队列,队列管理器会按照这些属性动态地创建出一个本地队列。

3.队列管理器(Queue Manager)

队列管理器是一个负责向应用程序提供消息服务的机构,如果把队列管理器比作数据库,那么队列就是其中一张表。

4.通道(Channel)

通道是两个管理器之间的一种单向点对点的的通信连接,如果需要双向交流,可以建立一对通道。

5.监听器(listener)

MQ产品的特性

可靠性传输

这个特点可以说是消息中间件的立足之本,对于应用来说,只要成功把数据提交给消息中间件,那么关于数据可靠传输的问题就由消息中间件来负责。

不重复传输

不重复传播也就是断点续传的功能,特别适合网络

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
3、应用服务器中间件技术要求 "指标项 "指标要求 " "总体要求 "遵循标准。全面支持JavaEE5或以上版本的国际工业标 " " "准和相关规范,并通过国际标准认证。全面支持Web " " "Service。 " " "必须支持各种主流平台,如HP-UX、AIX、SOLARIS、WI" " "NDOWS NT/2000、Linux、SCO UNIX等。 " " "支持多种数据库,如Oracle、Sybase、MS SQL SERVER " " "等数据库,并对数据库的访问效率提供优化。 " " "应用服务器提供商需作为JavaEE6标准制定成员,并具 " " "有专家参与下一个版本(JSR316)的标准制定,并可提" " "供网址查询。 " "集群与可用性要"必须支持通过Apache、IIS实现集群、负载均衡和系统 " "求 "扩展。 " " "支持多服务器群集部署、负载均衡、组件级的失效即时" " "恢复(Fail Over)。支持Web层的集群和EJB集群。应 " " "提供较大型系统集群应用案例。 " " "支持会话亲和。均衡负载策略支持简单轮转、加权轮转" " "、随机、备份等方式。 " " "必须支持异构Cluster。即当硬件平台或操作系统不是 " " "同一产品时,Web应用服务器必须支持异构Cluster技术" " "。 " " "支持动态增加服务器。在原业务系统不停机的情况下," " "必须支持动态增加服务器,扩展系统性能。而性能的扩" " "展,由中间件通过配置来实现,和应用系统代码无关。" " "请简要说明如何实现。 " " "Cluster情况下必须支持Session级故障恢复,请说明如" " "何实现。 " " "在原业务系统不停机的情况下,必须支持动态加载新业" " "务,扩展系统功能,或更新业务。在集群中某台应用服" " "务器上的应用卸载,中间件均衡机制必须能够自动识别" " ",对前端应用透明。请简要说明如何实现。 " " "支持故障恢复和故障迁移的功能,保证应用系统7x24小" " "时不间断运行。支持Web层面的session 复制与自动迁 " " "移。 " " "支持对异构数据库之间两阶段提交交易处理。 " " "在服务器、程序发生故障的情况下,应用中间件必须保" " "证业务的持续运行,保证交易的完整性。 " " "提供内置的JMS服务,支持将TongLINK/Q、MQ " " "Series等其他第三方消息中间件作为消息服务代理。 " " "支持Web Service 。包括访问Web Service端点(port " " ")和将容器内的Web组件或EJB组件包装成Web Service " " "端点(port)对外提供服务。 " " "JCA支持。支持资源适配器插入到系统中,从而实现与 " " "外部系统的连接。 " " "支持大并发用户量的多线程应用。 " " "支持JDBC连接池,具备管理JDBC连接池功能。 " " "必须支持EJB实例池 " " "必须支持Cache技术,包括Web静态内容cache、Prepare" " "语句cache、Entity bean cache等。 " "安全性要求 "基于JAAS架构实现基于容器的安全策略,提供基于数" " "据库和LDAP认证的Login Module, 支持用户增加Login " " "Module,支持单点登录 " " "必须支持标准的安全协议SSL(Secure Socket " " "Layer),必须支持直接访问应用服务器方式和通过第 " " "三方Web " " "Server集成的方式,并支持此两种方式下浏览器与服务" " "器之间的双向认证。 " "管理与开发要求"必须具备标准的B/S模式管理控制台,可对远程的应用 " " "服务器环境进行应用部署、管理维护和监控。 " " "具备将本地应用程序包部署在远程服务器环境的能力。" " "支持对系统运行状态、Web应用、EJB组件、数据库连接" " "池、交易服务、JMS服务及其它服务端组件与服务进行 " " "动态监控与管理。 " " "Web应用和ear的部署和管理也可以通过Web管理控制台 " " "进行,可以在部署时修改相关的部署时特性。支持web应" " "用和ear应用的自动部署和热部署。 " " "支持展开的ear和war包的部署 " " "具备对系统的动态配置、动态调整功能,如动态更新应" " "用包不必重新启动应用服务器等。 " " "支持方便地与Eclipse、JBuilder开发工具协同工作, " " "必须支持Jbuilder9/X/2005。 " " "必须支持在Eclipse、Jbuilder的环境下,设计、开发 " " "
推荐,资料太大存放在网盘中,需要可下载观看。含教材。 第一部分 考试简介 1.1 考试大纲要求 1.2 考试科目介绍 第二部分 信息系统基础 2.1 信息系统工程总体规划 2.2 政府信息化与电子政务 2.3 企业信息化与电子商务 2.4 信息资源管理 2.5 信息化的标准、法律和规定 第三部分 系统开始基础 3.1 系统规划 3.2 软件开发方法 3.3 需求工程 3.4 软件系统建模 3.5 系统设计 3.6 测试与评审 3.7 软件开发环境与工具 3.8 系统运行与评价 第四部分 操作系统 4.1进程管理 4.2存储管理 4.3文件管理 4.4作业管理 4.5设备管理 第五部分 数据库系统 5.1数据库模式 5.2数据库完整性约束 5.3并发控制 5.4数据库设计 5.4.1数据库设计阶段 5.4.2ER模型 5.5数据库安全 5.6备份与恢复技术 5.7分布式数据库 5.8数据仓库 5.9数据挖掘 第六部分 计算机网络 6.1开放系统互连参考模型 6.2 TCP/IP协议族 6.3网络规划与设计 6.4计算机网络分类 6.5网络接入技术 6.6网络存储技术 6.7虚拟局域网(VLAN) 第七部分 软件架构设计 7.1 软件架构的概念 7.2 软件架构风格 7.3 面向服务的架构 7.4 特定领域软件架构 7.5 基于架构的软件开发方法 7.6 软件架构评估 7.7 软件产品线 第八部分 基于构件的开发 8.1 中间件技术 8.1.1 中间件的概念 8.1.2 主要的中间件 8.2 典型应用架构 8.3 企业应用集成 第九部分 应用数学 9.1 概率统计应用 9.2 论应用 9.3 组合分析 9.4 算法的选择与应用 9.5 运筹方法 9.6 数学建模 第十部分 系统安全性与保密性设计 10.1安全与保密基础技术 10.2网络安全 10.3安全体系结构 10.3.1OSI安全模型 10.3.2MIS+S、S-MIS、S2-MIS 10.4安全审计 10.5安全策略 10.5.1核心 - 七定 10.5.2安全策略设计原则 第十一部分 系统配置与性能评价 11.1系统故障模型 11.2系统配置方法 11.3可靠性分析与可靠度计算 11.4性能评价方法 11.5软件容错 第十二部分 知识产权与标准化 12.1知识产权 12.1.1保护期限 12.1.2知识产权人确定 12.1.3侵权判断 12.1.4标准的分类 12.2标准化 12.2.1标准的分类 12.2.2标准类型的识别 第十三部分 多媒体基础知识 13.1多媒体技术基本概念 13.1.1音频相关概念 13.1.2像相关概念 13.1.3媒体的种类 13.2多媒体相关计算问题 13.2.1像容量计算 13.2.2音频容量计算 13.2.3视频容量计算 13.3常见多媒体标准 13.4数据压缩技术 13.4.1数据压缩基础 13.4.2有损压缩与无损压缩 第十四部分 嵌入式系统 14.1 嵌入式系统的特点 14.2 嵌入式系统的基本架构 14.3 嵌入式系统网络 14.4 嵌入式系统数据库 14.5 实时任务调度和多任务设计 14.5.1 调度算法分类 14.5.2 单调执行速率调度法 14.5.3 时间轮转调度 14.5.4 最早截止时间优先调度算法 14.5.5 优先级反转 14.6 中断处理和异常处理 14.7 嵌入式系统开发设计 14.7.1 交叉开发环境 14.7.2 开发过程 14.7.3 调试方法 第十五部分 开发管理 15.1 范围管理 15.2 时间管理 15.3 成本管理 15.4 文档管理 15.4.1 软件文档管理指南 15.4.2 计算机软件文档编制规范 15.5 软件配置管理 15.6 软件质量管理 15.6.1 质量管理的概念 15.6.2 质量模型 15.6.3 质量管理过程 15.6.4 质量保证与质量控制 15.7 风险管理 15.8 软件过程改进 15.8.1 CMM 15.8.2 CMMI 15.8.3 ISO/IEC 15504 15.8.4 SJ/T 11234-2001 第十六部分 系统架构设计案例分析 16.1 考点分析 16.2 如何解答试题 16.3 试题解答实例 16.3.1 质量属性与软件架构策略 16.3.2 数据流与流程 16.3.3 嵌入式系统设计 16.3.4 软件架构风格的选择 16.3.4 信息系统安全设计 第十七部分 系统架构设计论文 17.1 考点分析 17.2 做好准备工作 17.3 论文写作格式 17.4 如何解答试题 17.5 如何写好摘要 17.6 如何写好正文 17.7 常见问题及解决办法 17.8 论文评分标
总体设计一个系统设计过程中的重要环节,它包括逻辑架构、物理架构、技术架构、逻辑层次和关键技术等方面的规划和设计。下面是一个基本的总体设计概述: 1. 逻辑架构: - 系统的逻辑架构描述了系统各个模块之间的关系和功能划分。 - 可以采用分层架构,将系统分为表示层、业务逻辑层和数据访问层等模块,以实现解耦和复用。 2. 物理架构: - 物理架构描述了系统在硬件和网络方面的部署和组织。 - 可以根据实际需求选择合适的服务器、存储设备和网络设备,以保证系统的性能和可靠性。 3. 技术架构: - 技术架构描述了系统所采用的技术和框架。 - 可以选择合适的开发语言、数据库、中间件和其他相关技术工具,以满足系统的需求。 4. 逻辑层次: - 逻辑层次描述了系统各个模块之间的层次关系。 - 可以将业务逻辑划分为核心业务逻辑、公共组件和外部接口等层次,以实现模块化和可维护性。 5. 关键技术: - 关键技术指的是系统设计中的核心技术和关键问题的解决方案。 - 可以根据具体需求选择合适的关键技术,如数据存储和处理、安全性和权限控制、性能优化等方面的技术。 总体设计需要根据实际业务需求和技术要求进行综合考虑,确保系统具备良好的可扩展性、可维护性和性能。在设计过程中,还可以进行系统原型设计和技术评估,以验证设计方案的可行性和有效性。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

禅与计算机程序设计艺术

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值