消息中间件,RPC框架,数据库中间件的概念认知

消息中间件,RPC框架,数据库中间件的概念认知

消息中间件

什么是消息中间件

对中间件的理解大概就是具体业务和底层逻辑解耦的组件。相当于前端业务和底层逻辑的中间桥梁。

消息中间件是在分布式系统中发送和接受消息的基础服务设施。

能够做什么?

  • 业务解耦:交易系统不需要知道短信通知服务的存在,只需要发布消息
  • 削峰填谷:比如上游系统的吞吐能力高于下游系统,在流量洪峰时可能会冲垮下游系统,消息中间件可以在峰值时堆积消息,而在峰值过去后下游系统慢慢消费消息解决流量洪峰的问题
  • 事件驱动:系统与系统之间可以通过消息传递的形式驱动业务,以流式的模型处理

RPC框架

什么是RPC框架

远程过程调用协议RPC(Remote Procedure Call Protocol) 两台服务器A,B,一个应用部署在A服务器上,想要调用B服务器上应用提供的函数/方法,
由于不在一个内存空间,不能直接调用,需要通过网络来表达调用的语义和传达调用的数据。

能够做什么?

  • 建立客户端和服务器之间的TCP链接,不同的RPC协议,有不同的连接寻址方式。
  • 在发起远程调用时,由于网络协议是二进制的,所以在传输前要进行对传输实体进行转换二进制的过程,也是就序列化过程(Serialize),通过寻址和二进制的数据传输到服务器端
  • 在接受到数据后,需要进行反序列化过程解析二进制数据。

其实就是解决在分布式下,横向拓展的前提下,不同服务器相互调用方法的问题。

数据库中间件

什么是数据库中间件

同样在分布式的架构中,数据库也放到不同的服务器上,需要通过中间的路由进行调用。这个路由实际上就是数据库中间件。

能够做什么?

  • 实现读写分离,但是每个服务器上都需要有一份完整的数据库
  • 实现分库分表,通过消息中间件进行查询分派到某一个特定的服务器上,通过这个服务器查询出内容返回到消息中间件,再通过中间件返回到客户端。
-------------本文结束感谢您的阅读-------------

本文标题:消息中间件,RPC框架,数据库中间件的概念认知

文章作者:NanYin

发布时间:2018年10月29日 - 22:10

最后更新:2019年08月12日 - 13:08

原始链接:https://nanyiniu.github.io/2018/10/30/2018-10-29-%E4%BB%80%E4%B9%88%E6%98%AF%E6%B6%88%E6%81%AF%E4%B8%AD%E9%97%B4%E4%BB%B6%EF%BC%8CRPC%E6%A1%86%E6%9E%B6%EF%BC%8C%E6%95%B0%E6%8D%AE%E5%BA%93%E4%B8%AD%E9%97%B4%E4%BB%B6/

许可协议: 署名-非商业性使用-禁止演绎 4.0 国际 转载请保留原文链接及作者。