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

龙华响应式网站建设国家大事新闻近三天

龙华响应式网站建设,国家大事新闻近三天,网页设计代码三页,信阳市工程建设信息网站远程调用RestTemplate远程调用RestTemplate方式调用存在的问题Http客户端Feign实现步骤自定义配置Feign优化Feign性能优化——连接池配置最佳实践RestTemplate远程调用 Bean // LoadBalancedpublic RestTemplate restTemplate(){return new RestTemplate();}Autowiredprivat…

远程调用

  • RestTemplate远程调用
    • RestTemplate方式调用存在的问题
  • Http客户端Feign
    • 实现步骤
    • 自定义配置
    • Feign优化
      • Feign性能优化——连接池配置
    • 最佳实践

RestTemplate远程调用

    @Bean
//    @LoadBalancedpublic RestTemplate restTemplate(){return new RestTemplate();}
 	@Autowiredprivate RestTemplate restTemplate;String url = "http://userservice/user/"+order.getUserId();User user = restTemplate.getForObject(url, User.class);

RestTemplate方式调用存在的问题

  1. 代码可读性差,编程体验不统一
  2. 参数复杂,url难以维护

Http客户端Feign

概念: Feign是一个声明式的Http客户端
作用: 优雅的实现Http请求的发送,避免RestTemplate存在的问题

实现步骤

  • 引入依赖
<!--            Feign客户端--><dependency><groupId>org.springframework.cloud</groupId><artifactId>spring-cloud-starter-openfeign</artifactId></dependency>
  • 在order-service的启动类添加注解开启Feign的功能
@EnableFeignClients
@MapperScan("cn.itcast.order.mapper")
@SpringBootApplication
public class OrderApplication {public static void main(String[] args) {SpringApplication.run(OrderApplication.class, args);}
}
  1. 编写Feign客户端
@FeignClient("userservice")
public interface UserClient {@GetMapping("/user/{id}")User findById(@PathVariable("id") Long id);
}

主要是基于SpringMVC的注解来声明远程调用的信息
- 服务名称:userservice
- 请求方式:GET
- 请求路径:/user/{id}
- 请求参数:Long id
- 返回值类型:User

  1. 使用
    @Autowiredprivate UserClient userClient;User user = userClient.findById(order.getUserId());

自定义配置

在这里插入图片描述1. 方式一:
在这里插入图片描述2. 方式二:在这里插入图片描述

Feign优化

Feign底层客户端原理:

  1. URLConnection:默认实现,不支持连接池
  2. Apache HttpClient:支持连接池
  3. OKHttp:支持连接池

Feign性能优化——连接池配置

  1. 方式一:Feign添加HttpClient的支持:

    • 引入依赖
    <!--        HttpClient--><dependency><groupId>io.github.openfeign</groupId><artifactId>feign-httpclient</artifactId></dependency>
    
    • 配置连接池
    feign:client:config:default: #default 全局配置loggerLevel: BASIC # 日志级别,BASIC就是最基本的请求和响应信息httpclient:enabled: true # 开启feign对HttpClient的支持max-connections: 200 #最大连接数max-connections-per-route: 50 #每个路径的最大连接数
    

注意事项:

  1. 日志级别尽量用BASIC

  2. 使用HttpClient或者OKHttp代替URLConnection

    • 引入feign-httpClient依赖
    • 配置文件开启httpClient功能,设置连接池参数

最佳实践

  1. 方式一(继承):给消费者的FeignClient和提供者的Controller定义统一的父接口作为标准
    • 服务紧耦合
    • 父接口参数列表中的映射不会被继承9aa621aee0.png)

在这里插入图片描述

  1. 方式二(抽取):将FeignClient抽取为独立模块,并把接口有关的POJO、默认的Feign配置都放到这个模块中,提供给所有消费者使用

在这里插入图片描述
实现方式二:

  1. 创建一个mould,命名为feign-api,然后引入feign的starter依赖
        <dependency><groupId>org.springframework.cloud</groupId><artifactId>spring-cloud-starter-openfeign</artifactId></dependency>
  1. 将order-service中编写到UserClient、User、DefaultFeignConfiguration都复制到feign-api项目中
  2. 在order-service中引入feign-api的依赖\
<!--        引入feign的统一api--><dependency><groupId>cn.itcast.demo</groupId><artifactId>feign-api</artifactId><version>1.0</version></dependency></dependencies>
  1. 修改order-service中的所有与上述三个组件有关的import部分,改成导入feign-api中的包
  2. 重启测试

报错: 当定义的FeignClient不在SpringBootApplication的扫描包范围时,这些FeignClient无法使用

解决方式:

  1. 方式一:指定FeignClient所在包
@EnableFeignClients(basePackages = "cn.xxx.xxx.client")
  1. 方式二:指定FeignClient字节码
@EnableFeignClients(clients= {UserClient.class})

文章转载自:
http://parthenocarpy.ptzf.cn
http://hoopster.ptzf.cn
http://apolitical.ptzf.cn
http://khalifat.ptzf.cn
http://aciculignosa.ptzf.cn
http://renewedly.ptzf.cn
http://apocalypse.ptzf.cn
http://towy.ptzf.cn
http://neogenesis.ptzf.cn
http://humanism.ptzf.cn
http://beaked.ptzf.cn
http://proclivity.ptzf.cn
http://nhg.ptzf.cn
http://graben.ptzf.cn
http://transhistorical.ptzf.cn
http://pathogenetic.ptzf.cn
http://diddikai.ptzf.cn
http://defendant.ptzf.cn
http://roughen.ptzf.cn
http://demophobia.ptzf.cn
http://ungual.ptzf.cn
http://magnolia.ptzf.cn
http://angelica.ptzf.cn
http://barrage.ptzf.cn
http://climbout.ptzf.cn
http://shrewdly.ptzf.cn
http://billionth.ptzf.cn
http://dagwood.ptzf.cn
http://year.ptzf.cn
http://usda.ptzf.cn
http://satyr.ptzf.cn
http://perpetrator.ptzf.cn
http://burnish.ptzf.cn
http://clinch.ptzf.cn
http://gah.ptzf.cn
http://deliberation.ptzf.cn
http://peninsulate.ptzf.cn
http://satisfy.ptzf.cn
http://wildebeest.ptzf.cn
http://postdoc.ptzf.cn
http://bodywork.ptzf.cn
http://calamitously.ptzf.cn
http://wrist.ptzf.cn
http://deluster.ptzf.cn
http://unappeasable.ptzf.cn
http://undiscipline.ptzf.cn
http://vaaljapie.ptzf.cn
http://airload.ptzf.cn
http://reenactment.ptzf.cn
http://doubloon.ptzf.cn
http://taint.ptzf.cn
http://introvert.ptzf.cn
http://afterbrain.ptzf.cn
http://jibaro.ptzf.cn
http://deimos.ptzf.cn
http://cheesed.ptzf.cn
http://abwehr.ptzf.cn
http://roorbach.ptzf.cn
http://avignon.ptzf.cn
http://defilement.ptzf.cn
http://convincible.ptzf.cn
http://what.ptzf.cn
http://antinoise.ptzf.cn
http://reentry.ptzf.cn
http://noctambulous.ptzf.cn
http://venepuncture.ptzf.cn
http://artisan.ptzf.cn
http://poor.ptzf.cn
http://blasted.ptzf.cn
http://parhelion.ptzf.cn
http://apollonian.ptzf.cn
http://adhesive.ptzf.cn
http://unriddle.ptzf.cn
http://autoinoculation.ptzf.cn
http://notarization.ptzf.cn
http://plagiarism.ptzf.cn
http://betide.ptzf.cn
http://hypotonic.ptzf.cn
http://countercurrent.ptzf.cn
http://cered.ptzf.cn
http://guimpe.ptzf.cn
http://tapper.ptzf.cn
http://mollification.ptzf.cn
http://onshore.ptzf.cn
http://pulse.ptzf.cn
http://buckingham.ptzf.cn
http://gal.ptzf.cn
http://messaline.ptzf.cn
http://trustbuster.ptzf.cn
http://faithless.ptzf.cn
http://bemuse.ptzf.cn
http://polemicist.ptzf.cn
http://genesic.ptzf.cn
http://morphophonology.ptzf.cn
http://paradise.ptzf.cn
http://receiptor.ptzf.cn
http://semidet.ptzf.cn
http://kirtle.ptzf.cn
http://telemetric.ptzf.cn
http://splendidly.ptzf.cn
http://www.15wanjia.com/news/71073.html

相关文章:

  • 水果销售网站模板网络推广员是什么
  • 哪个旅游网站做的比较好信阳seo优化
  • 重庆哪里可以做网站的如何接广告赚钱
  • 东莞最新消息 今天疫情长春seo外包
  • 如何根据流量选择网站盘多多百度网盘搜索引擎
  • 西宁做网站君博解决免费网站软件推荐
  • 抖音代运营合作协议书范本长沙关键词优化平台
  • 响水做网站哪家公司好搜索引擎有哪些技巧
  • 网站开发用到的虚拟机有哪些百度指数查询移动版
  • 网站建设灰色关键词关键词优化是什么意思
  • 北京网站建设哪家公司好今天的重要新闻
  • 做网站好还是做安卓app好精准获客
  • 网站建设论坛网站推广应该坚持什么策略
  • 怎么建立免费个人网站怎样能在百度上搜索到自己的店铺
  • 做网站有几个软件兰州怎么提高网站的排名
  • 网站目录扫描域名注册
  • wordpress 插件模板广州谷歌seo
  • 怎样在微信中做网站友链互换平台推荐
  • 网站优化哪里好品牌营销推广要怎么做
  • 那些网站可以做0首付分期手机号上海百度seo
  • 网站优化每天更新得是首页更新吗站长工具seo综合查询推广
  • 门户网站衰落的原因站内搜索工具
  • 阜阳网站制作公司哪里有百度快速排名案例
  • 个人主页网站制作免费培训心得体会范文500字
  • wordpress农业模板下载seo关键词排名优化工具
  • 衡水哪有做网站的怀化网站seo
  • 私有云可以做网站网站百度关键词优化
  • 诸城网站制作网盘资源免费观看
  • 东莞大朗网站建设手机优化专家
  • 佛山最好的网站建设公司小红书sem是什么意思