分布式与微服务架构

1.什么是分布式、微服务?

分布式系统是建立在网络之上的软件系统,是一组通过网络进行通信、为了完成共同的任务而协调工作的计算机节点组成的系统。分布式系统总结来说是将数据存储能力和计算能力分布到不同的服务器上,作为一个整体对外服务。

分布式作用:
服务器拆分(集群)、业务模块拆分、数据库拆分

微服务将一个大的应用,拆分成多个小模块,每个模块有自己功能和职责,模块间可以进行交互。服务间通过http协议进行通信。微服务模块可以用不同的编程语言。
微服务的出现就是因为原来单体应用架构无法满足当前互联网产品的技术需求,解决的问题就是不因为某个模块的升级和bug影响现有的整体系统业务。
微服务架构核心就是为了解决应用微服务之后的服务治理问题。
微服务必须使用集中化管理,SpringCloud就是管理微服务的工具。

分布式微服务架构结构图

2.集群架构作用


1.将请求均衡的分配到服务器矩阵
2.提供统一的IP地址给用户访问       ---->>>网关(负载均衡器):反向代理、负载均衡(将请求均衡的分配到每台服务器)
3.反向代理服务器地址

2.1正向代理

正向代理是一个位于客户端和目标服务器之间的代理服务器(中间服务器)。为了从目标服务器取得内容,客户端向代理服务器发送一个请求,并且指定目标服务器,之后代理向目标服务器转发请求,将获得的内容返回给客户端。正向代理的情况下,客户端必须要进行一些特殊的设置才能使用。

2.2反向代理 

反向代理是指以代理服务器来接收客户端的请求,然后将请求转发给内部网络上的服务器,将从服务器上得到的结果返回给客户端,此时代理服务器对外表现为一个反向代理服务器。对于客户端来说,反向代理就相当于目标服务器,只需要将反向代理当作目标服务器一样发送请求就可以了,并且客户端不需要进行任何设置。

3.SOA架构

SOA(Service-Oriented Architecture,面向服务的架构)是一种在计算机环境中设计、开发、部署和管理离散模型的方法。SOA不是一种新鲜事物,它是在企业内部IT系统重复构建以及效率低下的背景下提出的。在SOA模型中,所有的功能都被定义成了独立的服务,所有的服务通过服务总线(ESB)或流程管理器来连接。这种松散耦合的结构使得能够以最小的代价整合已经存在的各种异构系统,当然,由于需要实现对各种异构系统的适配(通常使用ESB来完成不同系统之间的协议转换及数据格式转换),因此,其本身也会引入更多的复杂性。

分布式微服务架构结构图

 4.RMI

 RMI(Remote Method Invocation)为远程方法调用,是允许运行在一个Java虚拟机的对象调用运行在另一个Java虚拟机上的对象的方法。 这两个虚拟机可以是运行在相同计算机上的不同进程中,也可以是运行在网络上的不同计算机中。

Java RMI:Java远程方法调用,即Java RMI(Java Remote Method Invocation)是Java编程语言里,一种用于实现远程过程调用的应用程序编程接口。它使客户机上运行的程序可以调用远程服务器上的对象。远程方法调用特性使Java编程人员能够在网络环境中分布操作。RMI全部的宗旨就是尽可能简化远程接口对象的使用。我们知道远程过程调用(Remote Procedure Call, RPC)可以用于一个进程调用另一个进程(很可能在另一个远程主机上)中的过程,从而提供了过程的分布能力。Java 的 RMI 则在 RPC 的基础上向前又迈进了一步,即提供分布式对象间的通讯。

  • 17
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值