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

桂林小学网站建设/西安seo外包公司

桂林小学网站建设,西安seo外包公司,做网站用什么cms 知乎,智能建站制作一、什么是中间件? 1、百度百科 中间件是介于应用系统和系统软件之间的一类软件,它使用系统软件所提供的基础服务(功能),衔接网络上应用系统的各个部分或不同的应用,能够达到资源共享、功能共享的目的。目…

、什么是中间件?

1、百度百科

中间件是介于应用系统和系统软件之间的一类软件,它使用系统软件所提供的基础服务(功能),衔接网络上应用系统的各个部分或不同的应用,能够达到资源共享、功能共享的目的。目前,它并没有很严格的定义,但是普遍接受IDC的定义:中间件是一种独立的系统软件服务程序,分布式应用软件借助这种软件在不同的技术之间共享资源,中间件位于客户机服务器的操作系统之上,管理计算资源和网络通信。

从这个意义上可以用一个等式来表示中间件:中间件=平台+通信,这也就限定了只有用于分布式系统中才能叫中间件,同时也把它与支撑软件和实用软件区分开来。

简而言之,中间件是基于TCP/IP协议,遵循一定规范的。

2、中间件的特性

互通性、跨平台性、持久性、高可扩展性。

背后遵循TCP/IP协议,但有时并不能满足业务场景的需求,因此要在TCP/IP协议的基础上构建自己的协议,比如AMQP协议,AMQP协议是rabbitMq的默认协议,包括在信息头中增加mark,消息内容标签、队列名、交换机名、ip、连接对象内存的一些信息。

3、中间件的作用

屏蔽操作系统的复杂性,屏蔽技术之间的局限性,使框架更加灵活。

4、什么时候使用中间件

选择中间件的时候,一定是业务的驱使,项目的驱动,一定要思考到底要不要使用,不要盲目的选择与跟从,如果使用不当,则会造成学习成本的浪费、人员结构的复杂化、维护和服务器成本的加剧。

MySQL其实就是一个应用广泛的中间件。

二、什么是协议

1、所谓协议

  1. 计算机底层操作系统和应用程序通讯时共同遵守的一组规定,只有遵循共同的约定和规范,系统和底层操作系统之间才能相互交流。
  2. 和一般的网络应用程序的不同之处是,协议主要负责数据的接收和传递,所以性能比较高。
  3. 协议对数据格式和计算机之间交换数据都必须遵守规范。

2、网络协议的三要素

  • 语义

语义是解释控制信息每个部分的意义。它规定了需要发出何种控制信息,以及完成的动作与做出什么样的响应。

  • 语法

语法是用户数据与控制信息的结构与格式,以及数据出现的顺序。

  • 时序

时序是对事件发生顺序的详细说明。

3、为什么消息中间件不直接使用http协议?

  • 因为http请求报文头和响应报文头是比较复杂的,包含了cookie,数据的加密解密,状态码,响应码等附加的功能,但是对于一个消息而言,我们并不需要这么复杂,也没有这个必要,因为rabbitmq只是负责数据传递、存储、分发就够了,一定要追求高性能,尽量简洁、快速。
  • http大部分都是短连接,在实际的交互过程中,一个请求到响应很可能会被中断,中断以后也不会持久化,就会造成数据的丢失。这样就不适合在消息中间件中使用,因为消息中间件是一个长期的获取信息的过程,如果出现问题或故障,要进行持久化,目的是为了保证消息和数据的高可靠和高可用。

4、AMQP协议

AMQP,即Advanced Message Queuing Protocol,一个提供统一消息服务的应用层标准高级消息队列协议,是应用层协议的一个开放标准,为面向消息的中间件设计。基于此协议的客户端与消息中间件可传递消息,并不受客户端/中间件不同产品,不同的开发语言等条件的限制。

特性:

  1. 支持分布式事务
  2. 支持消息的持久化
  3. 高性能和高可靠的消息处理

三、消息队列持久化

持久化,简单的说就是将数据存入磁盘,而不是存在内存中,不会因为服务器的重启而消失,使护具能够永久保存。

rabbitmq是以文件存储的形式进行持久化的。

四、消息的分发策略

rabbitmq支持发布订阅、轮询分发、公平分发、重发、消息拉取。

五、消息队列高可用和高可靠

集群保证高可用;

持久化保证高可靠;

 

往期精彩内容:

Java知识体系总结

Spring框架总结

超详细的springBoot学习笔记

常见数据结构与算法整理总结

Java设计模式:23种设计模式全面解析

Java面试题总结(附答案)

Linux知识体系总结

Redis知识体系总结

http://www.lbrq.cn/news/1377847.html

相关文章:

  • wordpress中文url/重庆seo网站系统
  • 如何做平台网站/今天今日头条新闻
  • 网站建设制作设计seo优化珠海/百度搜索官方网站
  • 多语言网站建设/广告seo是什么意思
  • 东莞网站建设哪家专业/软文推广文案
  • 软件开发网站能做seo吗/郑州百度推广开户
  • 做网站真辛苦/宁德seo公司
  • 武汉做网站的有哪些/小程序开发公司前十名
  • 河南网站建设的详细策划/网站制作app免费软件
  • 高端网站建设公司哪家专业靠谱/网站流量统计系统
  • 农特产品电商网站建设目标/李江seo
  • 微博分享的网站怎么做/成都seo达人
  • net网站建设/北京公司排名seo
  • 广告设计与制作主修课程有哪些/百度站长工具seo查询
  • 品牌网站建设h5/搜索引擎的设计与实现
  • 推销产品什么网站好/郑州百度网站快速优化
  • 代理注册公司网站模版/搜索引擎优化的方法和技巧
  • 三门峡网站建设/杭州云优化信息技术有限公司
  • 郑州 网站报价/软文文章
  • 滨海县建设局网站/搜索引擎优化的作用是什么
  • 建设英文网站的申请怎么写/长春百度seo公司
  • 郴州宜章疫情最新情况/谷歌seo是指什么意思
  • 无锡企业制作网站/企业查询软件
  • 帮客户做网站挣钱吗/信息流优化师培训机构
  • 网站开发感受/seo是怎么优化上去
  • 域名同时做邮箱和网站/发广告去哪个平台
  • 嘉兴专业做网站/优化推广服务
  • 广西做网站公司有哪些/百度关键词怎么设置
  • 关于 建设 旅游网站 建议/适合奖励自己的网站免费
  • 扬州鼎盛开发建设有限公司网站/个人如何在百度做广告
  • [硬件电路-114]:模拟电路 - 信号处理电路 - 放大器的种类与比较
  • OSPF综合实验报告册
  • 暑期算法训练.12
  • Baumer工业相机堡盟工业相机如何通过YoloV8深度学习模型实现道路汽车的检测识别(C#代码,UI界面版)
  • Linux文件系统理解2
  • web前端打包apk包