温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

怎么解决Eureka中Jersey 1.x版本过旧的问题

发布时间:2021-10-12 10:01:43 来源:亿速云 阅读:176 作者:柒染 栏目:云计算

这期内容当中小编将会给大家带来有关怎么解决Eureka中Jersey 1.x版本过旧的问题,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。

Spring Cloud是当前炙手可热的微服务开发框架。它的功能强大,组件丰富,设计优雅。目前Spring Cloud还在不断发展之中。

Spring Cloud即将发布Spring Cloud Edgware 版本。该版本解决了不少Bug,新增了不少新特性。


背景

Eureka服务器与客户端之间默认使用Jersey 1.x 进行基于HTTP协议的交互。然而我们团队,需使用docker-client (https://github.com/docker-java/docker-java) 。这货只支持Jersey 2.x ,而Jersey 1.x与2.x并不兼容。

寻求方案

于是,我们团队面临如下几种选择:

  • 使用Eureka提供的eureka-client-jersey2 模块,即使用Jersey 2.x 来代替Jersey 1.x https://github.com/Netflix/eureka/tree/master/eureka-client-jersey2 。然而,这种方式不够稳妥,原因是eureka-client-jersey2 是由社区提供,并非由Eureka官方团队维护,并且已经很久不更新了。

  • 放弃使用docker-client ,使用其他的Docker客户端,例如https://github.com/spotify/docker-client (该项目支持Jersey 1.x以及Jersey 2.x)。

  • 升级Spring Cloud Netflix 到1.4.x,即:Spring Cloud Edgware 【笔者认为的最佳方案】。

本文探讨的就是在Spring Cloud Edgware 中Eureka的点点滴滴。

废弃Eureka Client的Jersey

Spring Cloud Edgware 中,Jersey并非必选。可为Eureka Client禁用掉Jersey,转而使用我们想要的HTTP客户端,例如RestTemplate。只需将Jersey的包从依赖中删除,Spring Cloud就会自动配置一个基于Spring RestTemplate 的传输客户端。操作如下:

<dependency>
    <groupId>org.springframework.cloud</groupId>
    <artifactId>spring-cloud-starter-eureka</artifactId>
    <exclusions>
        <exclusion>
            <groupId>com.sun.jersey</groupId>
            <artifactId>jersey-client</artifactId>
        </exclusion>
        <exclusion>
            <groupId>com.sun.jersey</groupId>
            <artifactId>jersey-core</artifactId>
        </exclusion>
        <exclusion>
            <groupId>com.sun.jersey.contribs</groupId>
            <artifactId>jersey-apache-client4</artifactId>
        </exclusion>
    </exclusions>
</dependency>

收益

简单的操作后,有两个好处:

  • 再也不用烦Jersery的版本冲突问题

  • 依赖减少了一些。

上述就是小编为大家分享的怎么解决Eureka中Jersey 1.x版本过旧的问题了,如果刚好有类似的疑惑,不妨参照上述分析进行理解。如果想知道更多相关知识,欢迎关注亿速云行业资讯频道。

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI