在哪几个网站里可以做淘客,河南第二建设集团有限公司网站,wordpress文章外链,哈尔滨百度搜索排名优化p 文章目录 一、服务中心二、Nacos注册中心 一、服务中心
在上一章我们实现了微服务拆分#xff0c;并且通过Http请求实现了跨微服务的远程调用。不过这种手动发送Http请求的方式存在一些问题。 试想一下#xff0c;假如商品微服务被调用较多#xff0c;为了应对更高的并发…p 文章目录 一、服务中心二、Nacos注册中心 一、服务中心
在上一章我们实现了微服务拆分并且通过Http请求实现了跨微服务的远程调用。不过这种手动发送Http请求的方式存在一些问题。 试想一下假如商品微服务被调用较多为了应对更高的并发我们进行了多实例部署如图 此时每个item-service的实例其IP或端口不同了。为了解决上述问题就必须引入注册中心的概念了接下来我们就一起来分析下注册中心的原理。
注册中心原理 在大型微服务项目中服务提供者的数量会非常多为了管理这些服务就引入了注册中心的概念。注册中心、服务提供者、服务消费者三者间关系如下 流程如下
服务启动时就会注册自己的服务信息服务名、IP、端口到注册中心调用者可以从注册中心订阅想要的服务获取服务对应的实例列表1个服务可能多实例部署调用者自己对实例列表负载均衡挑选一个实例调用者向该实例发起远程调用
当服务提供者的实例宕机或者启动新实例时调用者如何得知呢
服务提供者会定期向注册中心发送请求报告自己的健康状态心跳请求当注册中心长时间收不到提供者的心跳时会认为该实例宕机将其从服务的实例列表中剔除当服务有新实例启动时会发送注册服务请求其信息会被记录在注册中心的服务实例列表当注册中心服务列表变更时会主动通知微服务更新本地服务列表
二、Nacos注册中心
官方网站如下https://nacos.io/en/ 我们基于Docker来部署Nacos的注册中心 1,首先我们要准备MySQL数据库表用来存储Nacos的数据。由于是Docker部署所以大家需要将资料中的SQL文件导入到你Docker中的MySQL容器中 2将nacos文件夹上传至Liunx系统 3其中的nacos/custom.env文件中如下有一个MYSQL_SERVICE_HOST也就是mysql地址需要修改为你自己的虚拟机IP地址
PREFER_HOST_MODEhostname
MODEstandalone
SPRING_DATASOURCE_PLATFORMmysql
MYSQL_SERVICE_HOST192.168.88.128
MYSQL_SERVICE_DB_NAMEnacos
MYSQL_SERVICE_PORT3306
MYSQL_SERVICE_USERroot
MYSQL_SERVICE_PASSWORD123
MYSQL_SERVICE_DB_PARAMcharacterEncodingutf8connectTimeout1000socketTimeout3000autoReconnecttrueuseSSLfalseallowPublicKeyRetrievaltrueserverTimezoneAsia/Shanghai4然后将课前资料中的nacos目录上传至虚拟机的/root目录。 进入root目录然后执行下面的docker命令
docker run -d \
--name nacos \
--env-file ./nacos/custom.env \
-p 8848:8848 \
-p 9848:9848 \
-p 9849:9849 \
--restartalways \
nacos/nacos-server:v2.1.0-slim5启动完成后访问下面地址http://192.168.88.128:8848/nacos/注意将192.168.88.128替换为你自己的虚拟机IP地址。 首次访问会跳转到登录页账号密码都是nacos