微服务

微服务(SOA)

面向服务的框架(SOA)是一个组件模型(编程方法),它将应用程序的不同功能单位(称为服务) 进行拆分,并通过这些服务之间定义良好的接口和协议联系起来。接口采用中立的方式进行定义。它应该独立于实现服务的硬性平台、操作系统和编程语言。这使得建构再各种各样的系统中的服务可以以一种统一和通用的方式进行交互。

传统方式调用问题说明

微服务思想-注册中心


注册中心实现原理

1 当服务器启动时,会将服务器的状态(服务器名称、IP、端口)一起写入注册中心
2 当注册中心收到服务器的信息后,会动态更新注册信息。
3 当客户端(消费者)启动后,会连接注册中心并获取服务器的信息(状态,端口号...)
4 将获取的服务器信息数据存入本地
5 当消费者执行业务调用时,如果有多个服务器的生产者时,采用负载均衡的方式让消费者连接其中一个服务器进行访问(RPC)
6 当服务器发生宕机等意外时,注册中心的心跳检测意外后,会通知客户端进行数据更新,数据更新完成前,线程会处于阻塞状态

RPC(规则)

RPC是远程过程调用(Remote Procedure Call)的缩写形式。SAP系统RPC调用的原理其实很简单,有一些类似于三层构架的C/S系统,第三方的客户程序通过接口调用SAP内部的标准或自定义函数,获得函数返回的数据进行处理后显示或打印。

本地过程调用: 如果需要完成业务逻辑,则直接去调用本地的方法即可.
远程过程调用: 我想完成一个业务的调用,但是该功能我没有办法直接调用,需要通过第三方帮助我完成业务规则.
具体用法: RPC不关注具体的实现规则,用户也不需要了解具体的协议.谁调用谁实现

Http协议规范

你可能感兴趣的:(java,微服务)