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

会泽做网站网站怎么做付款平台

会泽做网站,网站怎么做付款平台,在电子商务网站建设中需要哪些知识,包装公司logo设计微服务间消息传递 微服务是一种软件开发架构#xff0c;它将一个大型应用程序拆分为一系列小型、独立的服务。每个服务都可以独立开发、部署和扩展#xff0c;并通过轻量级的通信机制进行交互。 应用开发 common模块中包含服务提供者和服务消费者共享的内容 provider模块是…微服务间消息传递 微服务是一种软件开发架构它将一个大型应用程序拆分为一系列小型、独立的服务。每个服务都可以独立开发、部署和扩展并通过轻量级的通信机制进行交互。 应用开发 common模块中包含服务提供者和服务消费者共享的内容 provider模块是服务的提供者用于通过SpringMVC的控制器提供访问接口 服务提供者 RestController RequestMapping(/users) public class HelloController {GetMapping(/hello)public String sayHello(RequestParam String username) {if (username null || username.trim().length() 1)username MicroService;return Provider: hello username !;} }服务消费者 服务消费者通过http协议访问服务提供者可以使用JDK的URL或者使用HttpClient之类的工具但是直接使用工具比较繁琐所以使用SpringBoot提供的RestTemplate进行访问 在主类或者当前应用的配置类上声明RestTemplate SpringBootApplication public class ConsumerApplication {public static void main(String[] args) {SpringApplication.run(ConsumerApplication.class, args);}Beanpublic RestTemplate restTemplate() {return new RestTemplate();} }核心配置主要修改一下访问端口号因为应用的默认端口都是8080会有端口号冲突的问题 server.port7081定义控制器实现访问服务提供者 RestController RequestMapping(/consumer) public class ConsumerController {Autowiredprivate RestTemplate restTemplate;GetMapping(/{name})public String test(PathVariable String name){ //RestTemplate针对RESTful中的get/post/delete/put分别提供了对应的方法String res restTemplate.getForObject(http://localhost:7080/users/hello?username name, String.class);return res;} }测试验证 面试题 http协议的访问流程在浏览器中输入一个URL地址都发生了什么事情 http协议的不同版本的区别与https的区别 http协议中get和post之间的区别 Nacos服务治理 Nacos即Naming and Configuration Service是一个用于动态服务发现、配置管理和服务元数据的开源平台。 Nacos的主要功能包括 服务注册和发现Nacos允许服务实例向注册中心注册自己的信息并且其他服务可以通过查询注册中心来发现可用的服务实例 配置管理Nacos提供了一个中心化的配置管理平台可以动态地管理应用程序的配置信息。开发人员可以在运行时更新配置而不需要重启应用程序 服务元数据管理Nacos可以帮助开发人员管理服务的元数据包括版本号、权重、健康状态等。这些元数据可以用于服务路由、负载均衡等场景 动态DNS服务Nacos支持将服务名称解析为具体的网络地址从而实现动态DNS服务的功能 应用开发步骤 服务提供者 需要添加额外的依赖也就是Nacos的客户端 dependencygroupIdorg.springframework.boot/groupIdartifactIdspring-boot-starter-web/artifactId /dependency dependencygroupIdcom.alibaba.cloud/groupIdartifactIdspring-cloud-starter-alibaba-nacosdiscovery/artifactId /dependency添加配置application.properties # 配置当前应用名称默认情况下向nacos注册的服务名称就是这个名称 spring.application.nameservice-provider # Nacos 服务发现与注册配置其中子属性 server-addr 指定 Nacos 服务器主机和端口 spring.cloud.nacos.discovery.server-addrlocalhost:8848 # 注册到 nacos 的指定 namespace默认为 public spring.cloud.nacos.discovery.namespacepublic # 应用服务 WEB 访问端口 server.port6080添加JavaConfig配置或者在主类上添加注解以启用Nacos客户端 EnableDiscoveryClient Configuration public class NacosDiscoveryConfiguration { }定义服务提供者接口 RestController RequestMapping(/users) public class HelloController {GetMapping(/hello)public String sayHello(RequestParam String username) {if (username null || username.trim().length() 1)username MicroService;return Provider: hello username !;} }服务消费者 依赖 dependencygroupIdorg.springframework.boot/groupIdartifactIdspring-boot-starter-web/artifactId /dependency dependencygroupIdcom.alibaba.cloud/groupIdartifactIdspring-cloud-starter-alibaba-nacosdiscovery/artifactId /dependency添加核心配置application.properties server.port6081 spring.application.nameservice-consumer # Nacos 服务发现与注册配置其中子属性 server-addr 指定 Nacos 服务器主机和端口 spring.cloud.nacos.discovery.server-addrlocalhost:8848 # 注册到 nacos 的指定 namespace默认为 public spring.cloud.nacos.discovery.namespacepublic添加配置类或者在主类上添加注解启用Nacos客户端 EnableDiscoveryClient SpringBootApplication public class Consumer1Application {public static void main(String[] args) {SpringApplication.run(Consumer1Application.class, args);}Beanpublic RestTemplate restTemplate() {return new RestTemplate();} }定义服务消费者 RestController RequestMapping(/consumer) public class ConsumerController{ Autowiredprivate RestTemplate restTemplate;Autowiredprivate DiscoveryClient discoveryClient;GetMapping(/{name})public String test(PathVariable String name){ //服务的名称对应的是服务提供者的application.properties中的配置spring.application.nameservice-providerListServiceInstance instances discoveryClient.getInstances(service-provider); //因为一个服务可以运行在多个节点上或者使用多个进程 //自定义负载均衡策略实现从多个服务提供者实例中选择一个Random rnew Random();ServiceInstance instance instances.get(r.nextInt(instances.size()));String res restTemplate.getForObject(instance.getUri()/users/hello?username name, String.class);return res;} }验证测试 首先启动nacos中间件 startup -m standalone 对应的管理控制台为http://localhost:8848/nacos 启动服务提供者。在Nacos的webUI中就可以看到服务提供者的注册信息 使用该管理控制台可以针对服务提供者的详细信息进行查看例如节点情况 启动服务消费者 引入负载均衡 在消费方引入负载均衡机制同时简化获取服务提供者信息的流程 Spring Cloud引入组件LoadBalance实现负载均衡 添加依赖 dependencygroupIdorg.springframework.boot/groupIdartifactIdspring-boot-starter-web/artifactId /dependency dependencygroupIdcom.alibaba.cloud/groupIdartifactIdspring-cloud-starter-alibaba-nacosdiscovery/artifactId /dependency dependencygroupIdorg.springframework.cloud/groupIdartifactIdspring-cloud-starter-loadbalancer/artifactId /dependencyproperties配置 spring.application.nameservice-consumer # Nacos 服务发现与注册配置其中子属性 server-addr 指定 Nacos 服务器主机和端口 spring.cloud.nacos.discovery.server-addrlocalhost:8848 # 注册到 nacos 的指定 namespace默认为 public spring.cloud.nacos.discovery.namespacepublic server.port6082主类上添加对应的注解 EnableDiscoveryClient SpringBootApplication public class Consumer2Application {public static void main(String[] args) {SpringApplication.run(Consumer2Application.class, args);}LoadBalancedBeanpublic RestTemplate restTemplate() {return new RestTemplate();} }定义对应的控制器需要访问服务提供者 RestController RequestMapping(/consumer) public class ConsumerController {Autowiredprivate RestTemplate restTemplate;GetMapping(/{name})public String test(PathVariable String name){ //使用LB后具体的URL地址中使用服务提供者的名称来替代原始的主机名和端口号String res restTemplate.getForObject(http://serviceprovider/users/hello?username name, String.class);return res;} }验证测试 缓存配置 使用LB从Nacos获取服务的注册信息可以在本地进行缓存。添加配置即可 spring.cloud.loadbalancer.cache.enabledtrue 启用本地缓存可以根据实际情况权衡 spring.cloud.loadbalancer.cache.capacity1000 设置缓存空间大小 spring.cloud.loadbalancer.cache.ttl20 缓存的存活时间单位为s订阅更新 缓存有可能和远程的注册信息不一致所以引入长连接的订阅实现Nacos的主动通知更改 spring.cloud.nacos.discovery.watch.enabledtrue
http://www.w-s-a.com/news/212351/

相关文章:

  • 做性的网站有哪些苏州专业网站设计制作公司
  • 陵水网站建设友创科技十大优品店排名
  • 想换掉做网站的公司简要说明网站制作的基本步骤
  • 国企公司网站制作wordpress 浮动定位
  • 网站网页直播怎么做的企业网站建设推荐兴田德润
  • 网站建设熊猫建站厦门seo全网营销
  • 扁平网站设计seo是什么岗位的缩写
  • 工商企业网站群晖配置wordpress 80端口
  • 企业网站建设流程步骤镇江东翔网络科技有限公司
  • 网络工程师和做网站哪个难网络建站如何建成
  • 网站建设需要哪些项目游民星空是用什么做的网站
  • 旅游网站建设要如何做百度商城网站建设
  • destoon 网站搬家中国企业500强都有哪些企业
  • 商城网站前端更新商品天天做吗哈尔滨做网站优化
  • 新乡网站开发wordpress 产品分类侧边栏
  • 网站自己做自己的品牌好做互联网企业分类
  • 项目网站建设方案石家庄网站快速排名
  • 网站开发大作业报告做电商网站的参考书
  • Apache局域网网站制作wordpress外链自动保存
  • 网站备案号要怎么查询千锋教育培训机构地址
  • 门户网站建设要求几款免费流程图制作软件
  • 花生壳域名可以做网站域名吗wordpress内链工具
  • 猎头公司网站模板网站伪静态作用
  • 工程建设教育网站html成品网页模板下载
  • 同一ip 网站 权重wordpress 菜单 小图标
  • 网站没有icp备案wordpress d8主题 4.1
  • 手机网站建设推荐企业宣传页模板
  • 杭州市富阳区建设局网站动态域名做网站
  • 网站如何免费做SEO优化靖安县城乡规划建设局网站
  • 室内设计网站平台学新媒体运营最好的培训学校