分布式服务降低耦合性 。
1 微服务相比较SOA有以下几个优点:
1、微服务更加关注于解耦,不追求系统之间的相关性。
2、微服务的系统发生改变只需要构建一个新的服务,简单快捷,但是SOA则需要对整个系统进行修改。
3、微服务使用的协议一般都是轻量级的协议,就像HTTP、Thrift API等协议,但是SOA则是使用更为复杂多样的多种消息协议。微服务的容错性能会更好,即使一个微服务出现问题,其他的微服务也会正常工作。
4、每个微服务都有单独的数据库,SOA则是共享一个数据库。
5、微服务的规模更小,SOA则是一个较大的规模。SOA可以是一个整体,也可以是多个微服务组成的。
2.微服务的远程调用:其实就是发送http请求.
1.向spring注入RestTemplate对象eg:
2.通过RestTemplate获取调用的url
3.Eureka注册中心提供者与消费者(对比学过的zookepeer)
如何使用eureka:1.需要创建eureka工程,导入依赖2.编写配置类3.编写配置文件
服务注册(两步)
服务配置多实例时:值需要右键配置端口号即可
服务的发现(两步走)
总结eureka:
4.Ribbon实现负载均衡
负载均衡策略:
5.阿里巴巴nacos注册中心(对比学过的Eureka)比Eureka更加的全面
1.需要安装Nacos参照视频https://www.bilibili.com/video/BV1LQ4y127n4?p=18&spm_id_from=pageDriver
对比Eureka代码不需要改变,只需要改依赖和配置即可
Nacos环境隔离namespace
命名空间形式是根据id进行分配,不是根据名称进行分配。