1.中间件是什么

是一类能够为应用程序之间合作,资源共享,提供服务的软件。

2.中间件的分类


三大基础中间件分别为交易中间件,消息中间件和应用服务中间件

(其中消息中间件和应用服务中间件在日常的开发中经常用到)。

另外还有近几年增长最多的数据库存储中间件,缓存中间件

2.1 消息中间件

消息是两台计算机间传送的数据单位,消息队列在将消息从一台计算机中继到另一台计算机时,充当中间人,主要目的是提供路由并保证消息的传递,如果发送消息时接受者不可用,消息队列会保留消息,直到可以充公地传递它,主要解决传统结构耦合性问题,系统异步性问题以及缓解大数据量并发的问题。


常见的消息队列有Active MQ,Rabbit MQ,Rocket MQ,Kafka。由于消息队列使用消息将应用程序连接起来,这些消息通过中间件在程序之间路由。

2.2 应用服务器中间件

应用服务器中间件位于客户浏览器和数据库之间,为应用程序提供业务逻辑代码。音乐宫服务器通过组件的应用程序接口将商业应用逻辑暴露给客户端的程序,同时为应用提供运行平台和系统服务,并管理对数据库的范围。对于高端需求,应用服务器具有高可用性监视,集群化,负载均衡,集成冗余和高性能分布式应用服务,以及对复杂的数据库访问的支持等功能。目前,市场上应用服务器平台中有**J2EE,WebLogic,Glassfish,JBoss企业应用平台,以及Apache Tomcat和Apache Geronimo等。


中间件技术发展的初衷是以适应网络技术应用的复杂性及跨平台特性作为基础,是在软件产业不断发展过程中自然产生的。

2.3 数据存储中间件

hive等

2.4 缓存中间件

redis等

3.Kafka

Kafka是一个分布式的基于发布订阅模式的消息中间件,基于zookeeper协调的分布式消息系统。
Kafka详解
ZooKeeper 是用于简化分布式应用开发的,对开发者屏蔽一些分布式应用开发过程中的底层细节
什么是zookeeper

4.hive

hive是一个基于Hadoop的中间件,主要作用是像Sql一样来操作Hadoop,从而简化操作。
hive是什么
Hadoop是分布式系统基础架构,主要解决海量数据存储与计算的问题。
Hadoop是什么

5.redis

java开发常用的中间件相关推荐

  1. Java程序员从笨鸟到菜鸟之(五)java开发常用类(包装,数字处理集合等)(下)...

     本文来自:曹胜欢博客专栏.转载请注明出处:http://blog.csdn.net/csh624366188 写在前面:由于前天项目老师建设局的项目快到验收阶段,所以,前天晚上通宵,昨天睡了大半天, ...

  2. Java程序员从笨鸟到菜鸟之(五)java开发常用类(包装,数字处理集合等)(下)

    写在前面:由于前天项目老师建设局的项目快到验收阶段,所以,前天晚上通宵,昨天睡了大半天,下午我们宿舍聚会,所以时间有点耽误,希望大家见谅 上接: Java程序员从笨鸟到菜鸟之(四)java开发常用类( ...

  3. java 操作vss,java开发常用工具总结,java开发常用工具

    java开发常用工具总结,java开发常用工具 1.editplus editplus 是我使用最频繁的工具,不管是java程序还是其他的语言的程序,本人都使用它,方便好用,速度快.如果配置好的话,可 ...

  4. 开课吧:Java开发常用技术基础部分有哪些?

    在Java中,OOM是java.lang.OutOfMemoryError的缩写,简单来说是应用的内存用完了.而这个内存,指代的是JVM管理的内存模型. Java开发常用技术基础有如下几种: Priv ...

  5. Java开发常用词汇表

    Java开发常用英语单词表 第一章: public['pʌblik] 公共的,公用的 static['stætik] 静的;静态的;静止的 void:[vɔid] 空的 main:[mein] 主要的 ...

  6. Java开发常用软件列表——持续更新

    Java开发常用工具列表 Typora 一款支持Markdown语法的本地文本编辑器,比较适合用来写工作日志. Clover 三叶草,可以把Windows文件夹像浏览器一样用标签组织起来,体验确实能够 ...

  7. Java开发常用英语单词表

    Java开发常用英语单词表 第一章: public['pʌblik] 公共的,公用的 static['stætik] 静的;静态的;静止的 void:[vɔid] 空的 main:[mein] 主要的 ...

  8. Java开发常用英语单词

    Java开发常用英语单词 class   [klɑ:s] 类 classpath   [klɑ:s'pɑ:θ ] 类路径 public   ['p ʌblik] 公共的,公用的 private   [ ...

  9. java开发常用jar包_java开发常用jar包

    mail.jar与activation.jar 里面包含了activation.jar和mail.jar两个包.通过里面的类的调用便可以达到发送电子邮件的目的 commons-beanutils.ja ...

最新文章

  1. 玩转车联网1---初识OBD和行车助手
  2. 怎么从0开始学python_如何从零开始学python
  3. Linux常用命令笔记2---文件管理4
  4. IOS-React-Native:unable to find utility instruments, not a developer tool or in PATH
  5. python可以写桌面软件吗-python能写桌面程序吗
  6. 数据流中的第k大元素的golang实现
  7. 百度网盘迎来劲敌!非会员下载速度10MB/S……
  8. vue.js 前端开发常见问题
  9. Spring工作原理分析
  10. Oracle 左连接、右连接、全外连接、(+)号作用
  11. 腾讯云数据库Redis助力百万企业远程办公
  12. [转载] python的短逻辑
  13. plc中PROFIBUS通信处理器介绍
  14. 读书:Jenkins权威指南[2016京东畅销书]
  15. 名单出炉!下一轮“双一流”,重点建设这些高校!
  16. QOS概述(一)服务模型
  17. 经济学人翻译练习——肯•帕克斯顿的再次竞选是对德克萨斯共和党价值观的考验
  18. C语言求圆锥体积的程序,计算圆锥体积c++程序.doc
  19. 社招和校招有什么不同?阿里美团等大厂JAVA社招面经分享!
  20. 两种方法设置Word文档的“只读模式”

热门文章

  1. 最全解析:部署跨境电商erp系统前需要做哪些准备?
  2. 我的世界网页版怎么玩服务器,【小白攻略】如何开始游戏
  3. activity MQ 做简单的即时聊天工具
  4. php 日志库,推荐一个好用的php日志类库,monolog/monolog
  5. 揭秘!“坑人”的物联网卡,你中招了吗?
  6. getBean( )流程
  7. Help and Manual编译成CHM后导航栏目录变成乱码(??????)的解决方案
  8. 数据结构-队列和栈有什么区别
  9. Web自动化测试工具选择
  10. 三国跨界科普丨5G频谱是什么?