一、分布式应用和集群的区别

  • 如果一个业务被拆分成多个子业务部署在不同服务器上,那就是分布式应用
  • 如果时同一个业务部署在多台服务器上,那几十集群

二、系统间的通信方式

  • 基于远程过程调用的方式
  • 基于消息队列的方式

2.1 基于远程过程调用的方式(RPC)

RPC是一种通过网络从远程计算机程序上请求服务,而不需要了解底层网络技术的协议。

  • 它是协议,是一种规范,需要有遵循这套规范的实现。典型的RPC实现包括Dubbo、Thrift、GRPC等
  • 网络通信的实现是透明的,调用放不需要关心网络之间的通信协议、网络I/O模型、通信的信息格式等
  • 跨语言,调用方实际上并不清楚对端服务器使用的是什么程序语言,对于调用方来说,无论使用的是何种程序语言,调用都应该成功,并且返回值也应该按照调用方程序语言能理解的形式来描述

2.2 基于消息队列的方式

基于消息队列的方式是指应用的某个系统负责发送消息,由关心这条消息的相应系统负责接受消息,并在收到消息后进行哥哥系统内的业务处理。

消息在被发送后可以立即返回,由消息队列来负责消息的传递,消息发布者只管将消息发布到消息队列,而不用管谁来取,消息使用者只管从消息队列中取消息而不管是谁发布的,这样发布者和使用者都不知道对方的存在

一、系统间的通信技术相关推荐

  1. Hypervisor操作系统间的通信技术

    1. Unix Domain Socket Socket API原本是为网络通信设计的,但后来在Socket的框架上发展出一种IPC机制,就是Unix Domain Socket.Unix Domai ...

  2. 架构设计:系统间通信(5)——IO通信模型和JAVA实践 下篇

    接上篇:<架构设计:系统间通信(4)--IO通信模型和JAVA实践 中篇>,我们继续讲解 异步IO 7.异步IO 上面两篇文章中,我们分别讲解了阻塞式同步IO.非阻塞式同步IO.多路复用I ...

  3. Linux10-归档、系统间复制文件

    目录 一.tar命令 二.scp.sftp命令 三.rsync命令 一.tar命令 tar命令可以归档文件.目录,提取创建的归档文件,同时进行压缩解压缩.使用tar选项时不需要加-,下面是常用的tar ...

  4. win7发现不了无线网络_win10系统间设置共享文件夹后“网络”选项下仍然无任何文件(即发现不了共享电脑)...

    我的上一个问题:win10共享文件夹启用"IMB.0/CIFS文件共享支持"失败,提示0x8000ffff 解决之后,仍然发现不了共享电脑:"网络"选项下为空. ...

  5. Dubbo系统间通信

    系统间通信 远程通信,实现方案 Webservice Restful Dubbo Webservice 基于soap协议,通信效率不高 主要特点,跨语言.跨平台 项目中,不推荐使用 可用于,不同公司之 ...

  6. 系统间通信2:通信管理与远程方法调用RMI

    本文引用 : https://yinwj.blog.csdn.net/article/details/49120813 RMI : Remote Method Invocation,远程方法调用 RP ...

  7. 系统间通信1:阻塞与非阻塞式通信B

    版权声明:本文引用https://yinwj.blog.csdn.net/article/details/48274255 接上篇:系统间通信1:阻塞与非阻塞式通信A 4.3 NIO通信框架 目前流行 ...

  8. 系统间通信1:阻塞与非阻塞式通信A

    版权声明:本文引用https://yinwj.blog.csdn.net/article/details/48274255 从这篇博文开始,我们将进入一个新文章系列.这个文章系列专门整理总结了目前系统 ...

  9. Java与C++进行系统间交互:Protocol Buffer

    在一次项目中,因笔者负责的java端应用需要与公司C++系统进行交互,公司选定Protocol Buffer方案,故简单的了解一下 有需要的可以看一下其他作者的文章,了解一下Protobuf: htt ...

最新文章

  1. 消除左递归实验代码_「leetcode」108. 构造二叉搜索树【递归】【迭代】详解!
  2. 简单的错觉画_错觉图片生成实验 - 正方形错觉
  3. php在数据流(内存)中操纵远程数据
  4. python新建文件夹口令_python编程快速上手—口令保管箱
  5. JAVA入门级教学之(方法-6)
  6. C++之运算符重载(前置++和后置++)
  7. 圆形缓冲区(循环buffer)实现
  8. infacmd 把工作流添加到应用程序_【案例】Animate 发布Win应用程序
  9. 无法启用iPhone、iPhone 启用错误?用Tenorshare ReiBoot 及 4MeKey 解决
  10. FFT,NTT 专题
  11. perl脚本 linux,linux – 通过Perl脚本设置环境变量
  12. 2021SC@SDUSC Zxing开源代码(九)Wifi 二维码结果处理
  13. 美团BERT的探索和实践
  14. 得力如何用计算机算行列式,行列式的计算方法(课堂讲解版).docx
  15. cesium绘制卫星
  16. Maya---操作工具
  17. 浅谈互联网电商平台都有哪些模式
  18. 2017年寒假集训分组测试赛2 Ranklist
  19. 微信服务器在哪里修改密码,微信怎么修改密码?微信在哪里修改密码?
  20. 图像卷积原理及运算方法

热门文章

  1. 电子学会2021年3月青少年软件编程(图形化)等级考试试卷(二级)答案解析
  2. python安装出错0xc00006b_python 装不起来,提示0x80240017错误,咋办?
  3. FFplay文档解读-47-多媒体过滤器一
  4. Java imageio底层_java - Java中的ImageIO问题 - 堆栈内存溢出
  5. 将秒数转换为时分秒的c语言程序,秒数换算(c语言输入秒转化为时分秒)
  6. 自我成长的9个小贴士
  7. vivo手机打开手机测试页面,查看电池损耗代码
  8. VKD233HS是一款超小体积单键/1路单通道触摸触控IC DFN6封装2*2mm,适用TWS蓝牙耳机入耳检测/单键触摸,定位手环手表等
  9. 类型 异常报告 消息 null 描述 服务器遇到一个意外的情况,阻止它完成请求。 例外情况 java.lang.NumberFormatException: null java.base/
  10. 分享一个大佬的网站,获取法定节假日