What?Tomcat-竟然也算中间件?

发布时间:2022-08-09 23:46:02 作者:winprc 阅读量:5564

本来今天就该讲 MyCat 了,但是我发现还有一个概念值得和大家聊一下,那就是 Java 中间件!

  本来今天就该讲 MyCat 了,但是我发现还有一个概念值得和大家聊一下,那就是 Java 中间件!

  因为 MyCat 是一个分布式数据库中间件,要理解 MyCat ,那你就得先知道到底什么是中间件!

  松哥去年在一次外训中专门讲过中间件,本来想直接和大家分享一下讲稿,但是没找到,所以又动手敲了下。

  中间件简介

  说起中间件,很多人首先想到的就是消息中间件,那么除了消息中间件呢?其实我们日常开发中,接触到的中间件太多了,我们来看维基百科上的一段介绍:

  中间件(英语:Middleware),又译中间件、中介层,是提供系统软件和应用软件之间连接的软件,以便于软件各部件之间的沟通。在现代信息技术应用框架如 Web 服务、面向服务的体系结构等项目中应用比较广泛。如数据库、Apache 的 Tomcat ,IBM 公司的 WebSphere ,BEA 公司的 WebLogic 应用服务器,东方通公司的 Tong 系列中间件,以及 Kingdee 公司的等都属于中间件。

  看到这个,你可能会大吃一惊,原来我们不知不觉不知不觉中已经用过这么多中间件了!甚至连 Tomcat 也是一个中间件!

  中间件,顾名思义,就是连接在两个软件之间的东西,是软件之间的一个粘合剂,一个胶水一样的东西。它位于操作系统和我们的应用程序之间,可以让开发者方便地处理通信、输入和输出,使开发者能够专注于自己的业务逻辑开发。

  这么一说,好像 Tomcat 确实还有点像中间件!位于我们的操作系统和应用程序之间!

  中间件分类

  中间件有很多,早在 1998 年 IDC 公司就将中间件分成了 6 大类,国内 2005 年之前出版的中间件相关的书上,很多都是按照这 6 大类来分的,分别是:

  终端仿真/屏幕转换 数据访问中间件(UDA) 远程过程调用中间件(RPC) 消息中间件(MOM) 交易中间件(TPM) 对象中间件

  这里边除了消息中间件和交易中间件大家可能听说过之外,其他的中间件估计都很少听说,这是因为时代在变化,有的中间件慢慢被淘汰了(例如 终端仿真/屏幕转换 中间件),有的则慢慢合并到其他框架中去了(例如 远程过程调用中间件)。

  数据库中间件

  那么什么是数据库中间件呢?

  前面文章我们提到,如果数据量比较大的话,我们需要对数据进行分库分表,分完之后,原本存在一个数据库中的数据,现在就存在多个数据库中了,那么我们的项目结构可能就是下面这个样子了:

  我们要在 Java 代码中配置复杂的多数据源,配置读写分离,数据查询的时候还要进行数据的预处理,例如从多个 DB 上加载到的数据要先进行排序、过滤等等操作,这样我们的 Java 代码就参杂了很多业务无关的方法,而且这些参杂进来的代码,大多数都还是重复的。

  为了使开发人员,将更多精力放到业务上,我们引入数据库中间件,像下面这样:


  这张图非常形象的说明了什么是中间件!一个介于两个应用程序之间的东西。引入 MyCat 中间件之后,我们的应用程序将只需要连接 MyCat 就行了,再由 MyCat 去操作各种不同的 DB,各个分布式数据库的排序、结果集合并、数据过滤等操作都在 MyCat 中完成,这样我们的 Java 应用又可以专注于业务的开发了,那些繁琐的重复的操作,又交给 MyCat 去完成。

  如果没有数据库中间件,那么我们的 Java 应用程序将直接面对分片集群,数据源切换、事务处理、数据聚合等等众多问题,这样原本该是专注于业务的 Java 应用程序,将会花大量的工作来处理分片后的问题,而且大部分的代码又都是重复的!

  有了数据库中间件,应用只需要集中与业务处理,大量的通用的数据聚合,事务,数据源切换都由中间件来处理,中间件的性能与处理能力将直接决定应用的读写性能,所以在项目中选择一款好的数据库中间件至关重要。

  

***本网站图片,文字之类版权申明,因为网站可以由注册用户自行上传图片或文字,本网站无法鉴别所上传图片或文字的知识版权,如果侵犯,请及时通知我们,本网站将在第一时间及时删除。

我要评论

网友评论


评论时间:2024-04-16 22:30:01

域名注册虚拟主机什么意思 8.添加能免费试用的云主机 或删除不需要的内容


评论时间:2023-12-14 02:30:04

26国外在哪里买虚拟主机 申请云主机试用 26.灵活配置


评论时间:2023-07-24 10:56:42

因外贸网站选云服务器还是虚拟主机 如何搭建虚拟服务器 因此,云计算技术应运而生


评论时间:2023-07-14 00:30:02

比如优质的海外虚拟主机空间 文件传输、远程控制、远程桌面等等2u服务器尺寸 等


评论时间:2023-07-02 14:30:03

1.8数据怎么建代理服务器 七日杀服务器搭建教程 1.8数据库集成技术


评论时间:2023-01-17 02:30:02

虚拟主机怎么建立目录 11.多喝白虚拟主机系统有哪些 开水

最新文章

 2023-04-21 20:28:29   admin

活动发布区版规

 2023-04-11 19:07:00   沐浴阳光

2020年Kubernetes即...

 2023-04-11 18:35:03   门吉木易

云计算:为什么金融市场的未来在云...

 2023-04-11 16:01:08   兵棕

为什么AIOps工具最终可以为云...

热门阅读

 2022-02-26 05:23:03   冷雨点枫

DNS服务器配置之添加正向查找区...

 2022-02-11 05:23:03   chense

Windows下Apache安装

 2022-07-27 18:23:02   sy_901

微软开发ARM版WindowsS...

 2021-08-09 01:35:43   瑟琳娜

企业网站建设根本是向客户营销运营...

 2021-10-26 05:30:02   jiess

跑分订单匹配互助抢单系统开发

随机文章

 2021-11-12 05:30:02   jasonkidd

一元购购物APP软件开发

 2021-11-19 05:30:03   928928

直播教育平台系统开发

 2021-12-31 05:30:02   kosine

网络托管与服务器托管区别?

 2022-03-31 05:23:03   333333333333

apache配置基于IP的虚拟主...

 2022-07-12 20:23:02   yimao

定制化服务器或将备受青睐

热评文章

 2022-02-19 05:23:03   ghh

根域名服务器配置

 2022-07-31 06:23:02   randywong

浪潮服务器“全面接盘”IBM中国...

 2021-11-01 05:30:02   fdfjdlkfjslkj

全球看点系统APP模式开发

 2022-07-19 06:46:01   yuhaonan

服务器CPU市场上的“斗士”

  热门标签

小快云 - 更小更快-打造便捷的企业快网站
Catfish(鲶鱼) Blog V 4.7.3