微服务思想3.1SOA思想面向服务的架构(SOA)是一种组件模型(编程方式),它将应用程序的不同功能单元(称为服务)拆分开来,并通过这些服务由明确定义的接口和协议链接。接口以中立的方式定义,它应该独立于实现服务的硬件平台、操作系统和编程语言。这使得构建在各种系统中的服务能够以统一和通用的方式进行交互。3.2RPC(规则)RPC是RemoteProcedureCall(远程过程调用)的缩写。SAP系统RPC调用的原理其实很简单。有一些C/S系统类似于三层架构。第三方客户端程序通过接口调用SAP内部的标准或自定义函数,获取函数返回的数据进行处理显示或打印。本地过程调用:如果需要完成业务逻辑,可以直接调用本地方法。远程过程调用:我想完成一个业务调用,但是没办法直接调用这个函数,需要借助第三方帮我完成业务规则。具体用法:RPC不讲究具体实现规则,用户无需了解具体的协议。谁调用实现。3.3Http协议规范什么是微服务说明:为了降低代码的耦合度,对项目进行了拆分。按照功能模块拆分成几个项目。这个项目叫做服务。(分布式思维)。如果采用微服务的结构,要求服务器出现故障时,实现自动故障迁移(高可用HA)4.2现在有服务分析说明:由于nginx负载均衡/反向代理需要手动配置,以及出现问题,无法及时实现故障迁移,需要升级为微服务架构设计。4.3微服务架构设计实现步骤:服务提供者启动时,在注册中心注册自己的信息。注册中心收到用户请求后,更新服务列表信息。消费者启动时,首先链接到注册中心获取服务列表数据。注册中心将自己的服务列表信息同步给客户端(消费者)。消费者收到服务列表数据后,将信息保存到本地。方便消费者在收到用户的请求后,根据自己的服务列表信息进行负载均衡操作,选择其中一个服务提供者,根据IP:PORT进行RPC调用。当服务商宕机时,注册中心会有心跳检测机制。如果检查宕机,本地服务列表会更新数据,全网广播通知所有消费者更新服务列表。Dubbo介绍ApacheDubbo|?d?b??|提供六大核心能力:面向接口代理的高性能RPC调用、智能容错与负载均衡、服务自动注册与发现、高扩展性、运行时流量调度、可视化服务治理与运维。调用示意图:jar包:
