2025上半年,最新 AI实践都在这!20+ 应用案例,任听一场议题就值回票价 了解详情
写点什么

Eclipse MicroProfile 1.3 现已发布

  • 2018-02-27
  • 本文字数:1834 字

    阅读完需:约 6 分钟

看新闻很累?看技术新闻更累?试试下载 InfoQ 手机客户端,每天上下班路上听新闻,有趣还有料!

Eclipse MicroProfile 通过为企业级 Java 微服务提供开源社区规范从而更好地解决微服务问题。发布的 1.3 版本引入了 OpenAPI、OpenTracing 以及 Rest Client API,并且升级了 Config 和 Metrics 的 API。

MicroProfile OpenAPI 1.0

随着微服务体系结构(MSA,Microservices Architecture)中的微服务数量的增加,微服务的管理可能变得难以处理。MicroProfile 1.3 版本添加了一个新功能:OpenAPI,它能通过使用应用程序编程接口(API)管理解决方案便捷地对微服务进行管理。OpenAPI 基于 Swagger 内核,坚持 Open API 规范,定义了一种标准化的、编程语言无关的接口描述,开发人员可以使用它来公开他们的 API 文档。其中有许多不同的方式可以增强应用程序为生成 OpenAPI 文档提供的输入:

通过前面所描述的机制构建的 OpenAPI 文档可以使用一个过滤器来进行更新。

MicroProfile OpenTracing 1.0

在 MSA 中,分布式跟踪是至关重要的,因为它能够使得开发人员对跨服务边界的请求留进行可视化。OpenTracing 是 MicroProfile 1.3 版本中的另一个新特性,它通过对行为进行定义来支持分布式跟踪,它还允许开发人员在运行环境中(而不是开发时)进行分布式跟踪的决策。OpenTracing 支持在一个应用程序内对Tracer对象进行访问。开发人员能够通过Tracer对象从传入的请求中提取所需的信息。

对于分布式跟踪来说,有两种操作模式:

  • 不使用应用程序代码模式
  • 使用显式代码

在不使用应用程序代码的模式下进行操作时,开发人员不需要向他们应用程序源代码添加任何有关分布式跟踪的代码,也不需要知道应用程序即将部署到的环境类型。只要发出请求与传入请求在相同的线程中进行处理,它们之间的关系就会被自动处理。

在使用显式代码的模式中,可以使用@Thread注释来指定被跟踪的类或者方法。经过配置的Tracer对象可用于通过上下文和依赖注入(CDI,Contexts and Dependency Injection)的应用程序,这使得开发者能够向应用程序添加更为复杂的跟踪需求。

MicroProfile Rest Client API 1.0

Rest Client API 是 MicroProfile 1.3 版本中的另一个新特性,它提供了一种类型安全的方法来通过 HTTP 调用 RESTful 服务。例如,可以为远程服务定义一个接口来对股票进行评分,如下所示:

复制代码
@Path("/stocks")
public interface StockScoringService {
@POST
@Path("/{stockId}/score")
Integer submitScore(@PathParam("stockId") Integer stockId, Score score );
}

然后就可以通过该接口调用实际的远程股票评分服务,如下所示:

复制代码
String apiUrl = "http://localhost:9080/stockScoringService";
StockScoringService stockSvc =
RestClientBuilder.newBuilder()
.baseUrl(apiUrl)
.build(StockScoringService.class);
Integer stockId = 4;
Score score = new Score(10,"Great performing stock.");
stockSvc.submitScore(stockId, score);

Rest Client API 支持更自然的编码风格,并且能够自动处理 HTTP 的连接和序列化。

MicroProfile Config 1.2

对于运行在云环境下的微服务来说,尤为重要的是,在应用程序运行时需要进行更改的配置信息需要在没有进行重新启动的情况下生效。Config 1.2 使得更改一旦发生就能够立刻对配置的值进行修改。最新的特性包括提供了对数组转换器、类转换器以及类的隐式转换器(在该类中,没有对应的该类类型的转换器)的支持。

MicroProfile Metrics 1.1

监控系统的参数能够确保软件运行的可靠。Metrics 能够为给定的流程添加监视端点和度量标准。不同于简单地健康监测(Health Checks),Metrics 能够通过基线、应用程序、特定的供应商指标来深入了解软件的运行情况。最新的功能提供一个改进的兼容性测试工具包(TCK,Test Compatibility Kit),它能够通过配置文件来提供全局标记以及对注释和元数据的标记,用以标明那些能被注册超过一次的度量标准的名字。

想要开始使用MicroProfile 1.3,你需要在你的 porn.xml文件中添加如下依赖:

复制代码
<dependency>
      <groupId>org.eclipse.microprofile</groupId>
      <artifactId>microprofile</artifactId>
      <version>1.3</version>
      <type>pom</type>
</dependency>

你可以在 MicroProfile 1.3 的发布详情中了解更多细节。读者们也能通过访问 InfoQ Java 主页关注所有和 Java 相关的新闻来了解更多信息。

查看英文原文: Eclipse MicroProfile 1.3 Is Now Available

2018-02-27 18:003580

评论

发布
暂无评论
发现更多内容

面试官:你是怎样进行react组件代码复用的

beifeng1996

React

LR性能测试常见问题及处理方法(二)

性能测试 问题排查 LoadRunner

谈谈Linux内核的噪声

统信软件

Linux 内核

SQL工具性能实测:居然比Navicat还快,数百万行数据导出仅51秒

雨果

sql 数据库管理工具 Web SQL sql studio

ChatGPT风口下的技术“狂飙”,天翼云荣登ZeroCLUE榜首

天翼云开发者社区

面试了20+前端大厂,整理出的面试题

loveX001

JavaScript

基于飞桨PaddleClas完成半导体晶圆图谱缺陷种类识别

飞桨PaddlePaddle

paddle 开源 飞桨

【FAQ】集成分析服务的常见问题及解决方案

HarmonyOS SDK

HMS Core

万亿级对象存储的元数据系统架构设计和实践

百度开发者中心

对象存储 文件存储 百度沧海

关于微服务架构的思考

HummerCloud

微服务 云原生

疑似45亿条递信息泄露,“三类主体”如何应对?

极盾科技

数据安全

百度前端必会react面试题总结

beifeng1996

React

构建云边端一体的分布式云架构,软硬结合驱动边缘计算创新场景

百度开发者中心

云原生 边缘计算 #百度智能云#

令人头秃的js隐式转换面试题,你能做对吗

loveX001

JavaScript

BeyondCampus-护航高校网络安全

权说安全

网络安全 零信任

Java 集合中的排序算法浅析

京东科技开发者

jdk 后端 Java、 排序算法 企业号 2 月 PK 榜

unittest中使用ddt后生成的测试报告名称如何修改?(如test_api_0修改成test_api_0_titile)

单元测试 自动化测试 unittest 参数化 ddt

LR性能测试常见问题及处理方法(一)

性能测试 问题排查 LoadRunner

腾讯前端必会面试题(必备)

loveX001

JavaScript

Unittest接口测试生成报告和日志方法

日志 单元测试 自动化测试 unittest 测试报告

堡垒机行业标杆产品是哪家呢?有哪些功能?

行云管家

网络安全 信息安全 等保 堡垒机

写过vue自定义指令吗,原理是什么?.m

bb_xiaxia1998

Vue

假如面试官问你Babel的原理该怎么回答

loveX001

JavaScript

目前兰州市等保测评机构有几家?有新增的吗?

行云管家

等保 等级保护 等保测评 兰州

Golang 编程“珠玑”

MatrixOrigin

golang 分布式数据库 编程语言 MatrixOrigin MatrixOne

面试官:说说React-SSR的原理

beifeng1996

React

Led透明显示屏的发展超乎你想象

Dylan

LED 显示器 LED显示屏

瓴羊Quick BI为企业决策者提供可视化分析服务

小偏执o

最初设计时就会避开钽电容,这是为什么呢?三大理由告诉你原因

元器件秋姐

元器件 电容 钽电容

有爱相伴,宠爱有家,皮皮App发起关爱流浪动物主题公益活动

联营汇聚

Eclipse MicroProfile 1.3现已发布_Java_Kesha Williams_InfoQ精选文章