一、SOA
英文名称:Service Oriented Ambiguity
中文名称:面向服务架构
SOA是一种思想,目的是提供一种设计项目的思路,让开发时更有效率。
例如原来的分布式项目中,在每个项目都要访问数据库,这样就造成了代码的冗余:
使用SOA架构后:
- 专门访问数据库服务(项目)
- 开发时可以实现数据访问控制和代码复用
实现 SOA 架构时,常用服务:
- Dubbo作为服务
- WebService作为服务
- Dubbox作为服务
- 服务方就是 web 项目,调用 web 项目的控制器
- 使用 HttpClient 可以调用其他项目的控制器
二、RPC
英文名称:Remote Procedure Call Protocol
中文名称:远程过程调用协议
解释:客户端(A)通过互联网调用远程服务器,不知道远程服务器的具体实现,只知道远程服务器提供了什么功能。