当前位置: 首页 > news >正文

一级a做爰片图片免费观看网站南通住房和城乡建设部网站首页

一级a做爰片图片免费观看网站,南通住房和城乡建设部网站首页,手机自助建网站,南宁智推网络科技有限公司一、提供者与消费者**服务提供者#xff1a;**一次业务中#xff0c;被其他微服务调用的服务。#xff08;提供接口给其他微服务#xff09;**服务消费者#xff1a;**一次业务中#xff0c;调用其他微服务的服务。#xff08;调用其它微服务提供的接口#xff09;比如…一、提供者与消费者**服务提供者**一次业务中被其他微服务调用的服务。提供接口给其他微服务**服务消费者**一次业务中调用其他微服务的服务。调用其它微服务提供的接口 比如我们刚刚的案例中我们在order-service中调用user-service服务所以order-service是服务消费者user-service是服务提供者注意提供者和消费者角色是相对的 一个服务可能是提供者也可能是消费者二、Eureka注册中心2.1 服务调用出现的问题2.1.1 硬编码问题我们在远程服务调用的时候将红框内的代码硬写在程序中这样修改非常的不方便 为了应对更多的并发我们的user服务可能会部署多实例形成一个集群。 比如下图我们如果还有80828083那我们的硬编码就没有作用了不知道改写谁的地址了所以这里一定不能写成硬编码的形式。2.1.2如果不是硬编码的形式那这三个服务我们该怎么去获取呢Eureka、nacos均可以解决这个问题2.1.3服务消费者该如何获取服务提供者的地址信息 服务提供者启动时向eureka注册自己的信息 eureka保存这些信息 消费者根据服务名称向eureka拉去提供者信息我们要做的就是根据服务名称向eureka拉去即可2.1.4如果有多个服务提供者消费者该如何选择呢 服务消费者利用负载均衡算法从服务列表中挑选一个2.1.5消费者如何得知服务提供者的健康状态呢服务提供者会每隔30秒向Eureka Server发送心跳请求报告健康状态eureka会更新记录服务列表的信息心跳不正常会被剔除消费者就可以拉取到最新的信息2.2 Eureka的作用eureka-server服务端注册中心记录和管理这些微服务eureka-client客户端服务消费者、服务提供者都是微服务所以都是客户端 对于服务提供者每一个服务启动时都会把服务信息注册给eureka-server客户端然后客户端会记录下来user-service名称及端口 如果这个时候有一个人想要消费那不就不需要自己记录信息直接在eureka-server中拉去想要的服务信息即可 但是对于上图拉去的信息而言我们同样的东西有三种配置我们需要挑一个这就需要负载均衡的知识了从三个中挑选一个比如localhost:8081之后在由order-service向user-service发起请求 其中我们也不用担心localhost:8081会挂掉因为我们user-service服务每隔一段时间就会向注册中心发一次请求确认自己的状态若一段时间没有发送请求则注册中心就会把user-service剔除order-service再次拉去时就不会拉取到他所以不用担心负载均衡选取的地址失效问题三、Eureka使用下面进行Eureka使用的三步走 搭建EurekaServer、将服务注册到Eureka中、3.1 搭建EurekaServer3.1.1 配置新建maven工程并添加maven坐标注意下面的操作都是在创建的maven工程中去实现3.1.1.1maven坐标dependencygroupIdorg.springframework.cloud/groupIdartifactIdspring-cloud-starter-netflix-eureka-server/artifactId /dependency 这个地方没有指定版本原因就是在父工程中将版本都管理好了下图所示便是父工程中的版本管理在下面的配置管理中有大量的组件和版本信息所以我们子工程引入的时候无需引入任何版本下面的图示可以更清楚的辨别子工程与父工程的关系3.1.1.2 在启动类添加EnableEurekaServerSpringBootApplication EnableEurekaServer public class EurekaApplication {public static void main(String[] args) {SpringApplication.run(EurekaApplication.class,args);} }3.1.2编写配置文件# 配置微服务名称 spring:application:name: eurekaserver# eureka自己也是一个微服务也需要一个名字 # eureka也会将自己注册到eureka上 # 为了以后eureka集群之间通讯使用若启动了多个eureka他们会互相做注册完成数据的交流 eureka:client: # eureka地址信息service-url:defaultZone: http://127.0.0.1:10086/eureka3.1.3 启动Eureka 直接启动main函数SpringBootApplication EnableEurekaServer public class EurekaApplication {public static void main(String[] args) {SpringApplication.run(EurekaApplication.class,args);} }当我们启动之后ctrl单机方框内的端口号直接打开页面其中红框中的内容最为重要“Instances currently registered with Eureka”翻译为“当前在Eureka上注册的实例”那怎么理解这个实例呢 一个服务每被部署一份就叫做一个实例。 若部署十个user服务那就会出现十个实例。application服务名称我们在配置文件中进行配置的StatusIP和服务端口由于window的原因这个地方显示的时计算机名其中UP代表正常状态DOWN代表服务挂掉3.2 将user-service服务注册到eureka中 服务注册3.2.1 配置3.2.1.1 maven坐标我在导入坐标的时候出现了cannot reconnect 翻译不能连接我把idea重启了一下解决了这个错误我感觉我的idea有毛病dependencygroupIdorg.springframework.cloud/groupIdartifactIdspring-cloud-starter-netflix-eureka-client/artifactId /dependency现在的依赖与eureka-server工程的依赖有所不同这个是eureka的client端客户端3.2.1.2 application.yml文件配置下面除了微服务的名称与之前eureka-server工程不一样其他配置和刚刚的是一个样子的spring:application:name: userserviceeureka:client:service-url:defaultZone: http://127.0.0.1:10086/eureka/ 3.2.2 启动启动下面的类即可MapperScan(cn.itcast.user.mapper) SpringBootApplication public class UserApplication {public static void main(String[] args) {SpringApplication.run(UserApplication.class, args);} }观察下图确实变成两个实例了3.3 将order-service服务注册到eureka中服务注册 参照3.2 进行3.4 实现某个服务多个实例3.4.1 创建多个服务与实例比如我们可以将user-service多次启动模拟实例部署但为了避免端口冲突需要修改端口设置 “-D”代表着参数“server.port8082”是配置端口这个端口覆盖了yaml文件中的配置的端口 之后点击“OK”启动成功查看 我们看到确实是两个这就是服务的列表服务注册总结引入eureka-client依赖在application.yml中配置eureka地址3.5 服务发现服务拉取与负载均衡依然是在order-service完成服务拉取服务拉取是基于服务名称获取服务列表然后再对服务列表做负载均衡3.5.1 在order-service完成服务拉取3.5.1.1 之前服务拉取代码Service public class OrderService {Autowiredprivate OrderMapper orderMapper;Autowiredprivate RestTemplate restTemplate;public Order queryOrderById(Long orderId) {// 1.查询订单 从数据库中获取Order order orderMapper.findById(orderId);//2. 利用RestTemplate发起HTTP请求获取用户// get请求getForObject(url路径,返回值类型)// 我们下面的返回值类型不需要JSON而是需要一个User对象的形式所以写User.class// post请求postForObject()String url http://localhost:8081/user/ order.getUserId();User user restTemplate.getForObject(url, User.class);//3. 封装user到Order中order.setUser(user);// 4.返回return order;} }MapperScan(cn.itcast.order.mapper) SpringBootApplication public class OrderApplication {public static void main(String[] args) {SpringApplication.run(OrderApplication.class, args);}Beanpublic RestTemplate restTemplate(){return new RestTemplate();}}3.5.1.2 如今服务拉取代码 服务名称代替IP端口 修改OrderService的代码修改访问的url路径用服务名代替ip、端口String url http://userservice/user/ order.getUserId();Service public class OrderService {Autowiredprivate OrderMapper orderMapper;Autowiredprivate RestTemplate restTemplate;public Order queryOrderById(Long orderId) {// 1.查询订单 从数据库中获取Order order orderMapper.findById(orderId);//2. 利用RestTemplate发起HTTP请求获取用户// get请求getForObject(url路径,返回值类型)// 我们下面的返回值类型不需要JSON而是需要一个User对象的形式所以写User.class// post请求postForObject() // String url http://localhost:8081/user/ order.getUserId();String url http://userservice/user/ order.getUserId();User user restTemplate.getForObject(url, User.class);//3. 封装user到Order中order.setUser(user);// 4.返回return order;} } 在order-service项目的启动类OrderApplication中的RestTemplate添加负载均衡注解 LoadBalanced就是负载均衡的意思Bean LoadBalanced public RestTemplate restTemplate(){ return new RestTemplate(); }3.5.2 发送请求获取数据发送请求获取数据端口8080、8081存在日志信息而8082不存在日志信息再次发送请求端口8080、8082会有反应3.6 总结
http://www.w-s-a.com/news/833178/

相关文章:

  • 用html框架做网站怎么在.Net中做团购网站
  • 怎样建一个自己公司的网站制作网站需要钱吗
  • 联盟网站制作wap网站制作公司
  • 美丽乡村建设发展论坛网站wordpress 仿站 教程网
  • 浙江省建设注册管理中心网站首页优设设计网站导航
  • 台州小型网站建设国内免费的建网站平台
  • 自己做网站不推广网站建设工作室发展
  • 有女人和马做网站吗宁波seo优势
  • 网站做用户记录表电商运营推广计划方案
  • 网站备案认领杭州网页设计公司招聘
  • 易签到网站开发设计做网站运营有前途吗
  • 南通网站建设心得2023必考十大时政热点
  • 苍溪建设局网站公建设计网站
  • 九歌人工智能诗歌写作网站电子商务网站建设项目书
  • 做外贸的经常浏览的三个网站律师做哪个网站好
  • 中国公路建设招标网站长沙大型网站建设公司
  • 沈阳企业网站模板建站注册电子邮箱免费注册
  • 如何做简洁网站设计企业网站排名优化方案
  • 东莞网站建设服务商做触屏网站
  • 外国网站代理音乐网站建设
  • 珠江网站建设广安广告公司
  • 高端创意网站建设网页制作咨询公司
  • 网站建设及发布的流程图wordpress文章摘要显示
  • 淮北网站网站建设省好多会员app
  • 如何查看网站的更新频率网站图片要求
  • 网站设计公司收费标准wordpress修改文章链接
  • 镇江网站建设公司网站关键词密度怎么计算的
  • c 网站开发公司的网站的设计
  • 网站建设多长时间能学会做网站猫要做端口映射吗
  • 新手做网站视频网页设计期末作品要求