eg:提交请求--处理请求--数据库
1.面向过程(PO)的程序,整体的业务流就像一条线,当某个节点发生错误时,整条线就断了,需要整理整条业务线
2.为了不动整条业务线,出现了面向对象(OO)的程序,整体业务分为三个对象,当某个对象发生错误时,只需更改该对象,对其他对象没有影响
3.而现在在提交请求层面上,出现了多个业务,那业务的实现实现势必是要动处理请求处的代码,那么我们能否将代码封装好,在业务需要用到时候直接拿业务接口,而不用关心代码的实现,这就是面向服务(SOA)。
4.现在又出现一个问题,当A业务处理的接口出现问题时,影响到了B业务的参数或者性能,那么我们能否将业务做成单独的产品线,在后续增删改某业务的时候,就不会影响到另一条业务,这就是微服务。
总结来说,面向对象是将线分为对象节点。
面向服务是将提交请求出分线分开。
微服务是在面向服务的基础上再次将处理请求分线分开。
而现在常说的分布式,集群等概念,就是为了缓解服务器压力,将数据库层面进行分线分开。
观点是个人观点,希望大家交流学习。