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

网站开发工程师培训iis6无法新建网站

网站开发工程师培训,iis6无法新建网站,苏州做网站怎么样,娄底网站建设建站声明式服务消费Feign一、简介二、使用Feign实现服务消费者三、实现普通的服务提供者四、Feign服务调用测试五、Feign消费者测试负载均衡服务熔断一、简介 Feign是Netflix公司开发的一个声明式的REST调用客户端#xff1b; Ribbon负载均衡、Hystrix服务熔断是我们Spring Cloud… 声明式服务消费Feign一、简介二、使用Feign实现服务消费者三、实现普通的服务提供者四、Feign服务调用测试五、Feign消费者测试负载均衡服务熔断一、简介 Feign是Netflix公司开发的一个声明式的REST调用客户端 Ribbon负载均衡、Hystrix服务熔断是我们Spring Cloud开发中非常基础的组件在使用过程中他们一般是同时出现的配置也非常相似每次开发都有许多相同的代码。因此Spring Cloud基于Netflix Feign整合了Ribbon和Hystrix两个组件让我们的开发变的更加简单。 Spring Cloud Feign 对Ribbon负载均衡、Hystrix服务熔断进行了简化在其基础上进行了进一步的封装不仅在配置上大大简化了开发工作同时还提供了一种声明式的Web服务客户端定义方式。 二、使用Feign实现服务消费者 创建SpringBoot工程添加依赖 spring-cloud-starter-netflix-eureka-client spring-cloud-starter-openfeign spring-cloud-starter-netflix-hystrix在入口函数上激活功能 EnableEurekaClient EnableFeignClients配置文件 # 服务端口号 server.port80 #指定该服务的名字该名称将在服务被调用时使用 spring.application.namefeign-eureka-client-consumer #Eureka配置服务注册到哪里 eureka.client.service-url.defaultZonehttp://eureka7001:7001/eurekaservice接口 /*** 用于标记当前借口是一个Feign声明式服务接口。Spring会为这个接口生成动态代理对象* 属性name指定注册中心某个服务的名字*/ FeignClient(namefeign-eureka-client-provider) public interface TestService {/*** 定义抽象方法* RequestMapping标记这个方法用于访问服务提供者,参数对应服务提供者提供的方法* return 服务提供者返回的具体内容*/RequestMapping(/test)String test();/*** RequestParam 指定基本数据类型参数*/RequestMapping(/testParam01)String testParam01(RequestParam String name, RequestParam Integer age);/*** RequestBody 指定对象类型参数*/RequestMapping(/testParam02)String testParam02(RequestBody User user);/*** 如果服务提供者返回的Json数据符合Json对象格式* 那么我们可以使用一个实体类或Map集合来接收响应数据*/RequestMapping(/testReturnUser)User testReturnUser();/*** 如果服务提供者返回的Json数据符合Json对象数组格式* 那么我们可以使用一个List集合来接收响应数据*/RequestMapping(/testReturnList)ListUser testReturnList(); } controller调用远程服务 /*** 作为服务消费者可以不使用 RestController 返回json数据这里为了方便而使用。*/ RestController public class TestController {Resourceprivate TestService testService;RequestMapping(/test)public String test(){String result testService.test();return 使用了Feign的服务消费者...result;}RequestMapping(/testParam01)public String testParam01(){String result testService.testParam01(lily,24);return 使用了Feign的服务消费者...result;}RequestMapping(/testParam02)public String testParam02(){User user new User(xiaoming,23);String result testService.testParam02(user);return 使用了Feign的服务消费者...result;}RequestMapping(/testReturnUser)public String testReturnUser(){User user testService.testReturnUser();return 使用了Feign的服务消费者...user.toString();}RequestMapping(/testReturnList)public String testReturnList(){ListUser list testService.testReturnList();return 使用了Feign的服务消费者...list.toString();} } 三、实现普通的服务提供者 创建SpringBoot工程添加依赖 spring-cloud-starter-netflix-eureka-client在入口函数上激活功能 EnableEurekaClient配置文件 server.port8001#指定该服务的名字该名称将在服务被调用时使用 spring.application.namefeign-eureka-client-provider#Eureka配置服务注册到哪里 eureka.client.service-url.defaultZonehttp://eureka7001:7001/eurekacontroller提供服务 /*** 作为服务提供者要是用 RestController 返回json数据*/ RestController public class TestController {GetMapping(/test)public String test(){return 【服务提供者返回内容】;}GetMapping(/testParam01)public String testParam01(String name,Integer age){return 【服务提供者返回内容 name:name age:age】;}RequestMapping(/testParam02)public String testParam02(RequestBody User user){return 【服务提供者返回内容 name:user.getName() age:user.getAge()】;}RequestMapping(/testReturnUser)public Object testReturnUser(){User user new User(小黄,23);return user;}RequestMapping(/testReturnList)public Object testReturnList(){ListUser list new ArrayList();User user1 new User(小黄,23);User user2 new User(小李,24);User user3 new User(小明,25);list.add(user1);list.add(user2);list.add(user3);return list;} }四、Feign服务调用测试 访问http://localhost/test http://localhost/testParam01 访问http://localhost/testParam02 访问http://localhost/testReturnUser 访问http://localhost/testReturnList 五、Feign消费者测试 负载均衡 Spring Cloud提供了Ribbon来实现负载均衡使用Ribbon直接注入一个RestTemplate对象即可RestTemplate已经做好了负载均衡的配置在Spring Cloud下使用Feign也是直接实现负载均衡的定义一个有FeignClient注解的接口然后使用RequestMapping注解到方法上映射远程的REST服务此方法也是做好负载均衡配置的。 服务熔断 在application.properties文件开启feign对hystrix功能支持支持熔断 feign.hystrix.enabledtrue指定熔断回调逻辑 /*** FeignClient标记当前接口是一个Feign声明式服务接口Spring会为这个接口生成动态代理对象* 属性name指定注册中心某个服务的名字* 属性fallback指定一个自定义异常熔断器类* 属性fallbackFactory指定一个自定义异常熔断器类可以获得异常信息*/ //方式一 FeignClient(namefeign-eureka-client-provider,fallback MyFallback.class) //方式二 FeignClient(namefeign-eureka-client-provider,fallbackFactory MyFallbackFactory.class) public interface TestService {...}自定义异常熔断器 //方式一/*** 自定义异常熔断器类并实现自定义声明式Feign的接口* 为这个接口中的所有抽象方法提供熔断处理*/ Component public class MyFallback implements TestService {Overridepublic String test() {return test请求熔断;}Overridepublic String testParam01(String name, Integer age) {return testParam01请求熔断;}Overridepublic String testParam02(User user) {return testParam02请求熔断;}Overridepublic User testReturnUser() {return null;}Overridepublic ListUser testReturnList() {return null;} }//方式二/*** 自定义异常熔断器类并实现Hystrix的降级回调的父接口* 注意泛型决定当前类要为哪个声明式接口提供异常熔断处理*/ Component public class MyFallbackFactory implements FallbackFactoryTestService {/*** param throwable* return 返回一个接口中泛型的对象当这个泛型对象出现异常后将用create返回的这个对象进行降级*/Overridepublic TestService create(Throwable throwable) {//使用匿名内部类来创建TestService声明式服务接口的熔断对象return new TestService() {Overridepublic String test() {System.out.println(throwable.getClass());System.out.println(throwable.getMessage());return test请求熔断;}Overridepublic String testParam01(String name, Integer age) {return testParam01请求熔断;}Overridepublic String testParam02(User user) {return testParam02请求熔断;}Overridepublic User testReturnUser() {return null;}Overridepublic ListUser testReturnList() {return null;}};} }服务异常 GetMapping(/test)public String test(){System.out.println(1/0);return 【服务提供者返回内容】;}调用服务进行熔断测试 http://localhost/test
http://www.pierceye.com/news/859673/

相关文章:

  • asp.net网站的数据库配置张家港网站 设计制作
  • 聊城手机网站建设多少钱扬州网站建设哪个好薇
  • 云南安宁做网站的公司手机网页制作软件中文版
  • 如何做征信公司网站做谷歌推广一定要网站吗
  • 重庆市做网站的公司有哪些苏州网站建设设计公司
  • 网站制作计算机域名解析到网站
  • 自己做的电影网站打开很慢wordpress 防采集
  • 西安专业网站建设公司排名做网站编写
  • 做电影网站还能赚钱云南网站建设哪家公司好
  • 重庆定制网站开发什么是网络营销战略
  • 网站建设硬件方案精准客源app
  • 网站视觉优化怎么做电子商务网站建设参考文献2018
  • 服务器可以吧网站做跳转吗wordpress 远程图片本地化
  • 网站在线访谈栏目建设个人网站可以备案了吗
  • 汉口北做网站搜索广告是什么
  • 电商网站可以用dw做嘉兴网站建设平台
  • 做网站是数据库应该放在哪里建筑工程水平防护网
  • vps网站无法通过ip访问网站怎么做的支付宝接口
  • 怎么创建一个博客网站网站的c4d动画是怎么做的
  • 西安做企业网站科技论文发表网
  • html 手机网站开发企业做网站的合同
  • 建立wordpress网站吗全州建设完小网站
  • 网站域名注册证书是什么制作WordPress友情链接
  • 如何在解决方案中新建网站html网页制作的软件下载
  • 企业网站怎么做优化开小加工厂去哪接单子
  • 网站建设推广费怎么做账域名和网站绑定
  • 商丘网站建设想象力网络中国流量最大的网站排行
  • 网站是否有备案网站集约化建设建议
  • 浏览器收录网站网上做图赚钱的网站
  • 网站建设优化过程中的优化策略相关文章 wordpress