2天时间,聊今年最热的 Agent、上下文工程、AI 产品创新等话题。2025 年最后一场~ 了解详情
写点什么

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:003782

评论

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

实时物化视图的新路径:从传统 Join 到跨源实时查询

tapdata

数据管道 实时数据同步 实时物化视图 传统join CQRS实时数据架构

CST工作室套装提供的网格类型有哪些?CST studio suite代理商

思茂信息

cst CST软件 CST Studio Suite

MyEMS:衔接 “双控” 政策与企业实践的开源能源管理利器

开源能源管理系统

开源 能源管理系统-

低代码的发展历程

JeeLowCode低代码平台

BeeWorks Meet:私有化视频会议解决方案

BeeWorks

即时通讯 IM 私有化部署

基于华为开发者空间云开发环境部署Claude Code + KAT-Coder实现AI编程助手

华为云开发者联盟

华为开发者空间 AI 编程 Claude-Code Tokens KAT-Coder

大数据-130 - Flink CEP 详解 - 捕获超时事件提取全解析:从原理到完整实战代码教程 恶意登录案例实现

武子康

Java 大数据 flink spark 分布式

MIAOYUN | 每周AI新鲜事儿(10.11-10.17)

MIAOYUN

AI 算法 AI技术 AIGC 大语言模型

《伊米尔传奇》10月28日公测 预约奖励获取

江湖老铁

闲谈KubeBlocks For MongoDB设计实现

小猿姐

数据库 云原生 K8s 多集群管理 K8s Operator

构建企业数字化办公核心:安全高效的内网im私有化协同平台

BeeWorks

即时通讯 IM 私有化部署

解析推特GIF下载机制:如何高效保存推特GIF动图

So...

twitter GIF 推特 x

基于华为开发者空间-云开发环境Docker+Flink实现大数据实时统计系统

华为云开发者联盟

Docker flink 华为开发者空间

信息化灾备解决方案

金陵老街

灾备方案

技术集成、数据驱动,经济波动期间企业财务自救指南

智达方通

零碳园区建设指南:MyEMS 如何用数字化破解能耗与碳排放协同管理难题?

开源能源管理系统

开源 能源管理系统

NASA运货飞船天鹅座再次推迟,航天任务为什么总是“彩排”不断

DevOps和数字孪生

【堆与优先队列】堆与优先队列:“数据金字塔“与“我是VIP“

华为云开发者联盟

数据结构 优先队列 华为开发者空间

低代码平台最新发展方向:从辅助工具到核心引擎的五大演进路径

星云低代码中间件

ide 低代码 开发工具 数字化

CAD一键测量半径/直径,赶快来试试!

在路上

cad CAD看图王

文科+AI 教学转型,和鲸智学一体机降实践门槛、塑数据思维、促创新发展

ModelWhale

一体机 高等教育 教育数字化

MES实施之道:摒弃“大而全”,选择“分步走”的敏捷策略

合肥迈斯软件

制造业数字化 生产管理MES系统 智能制造数字化转型

更懂中国工厂:国产SPC软件的本土化优势解析

合肥迈斯软件

质量检测 质量管理系统 质量管理QMS系统 产品质量管理 质量追溯

CAD中普通文字与批注文字有什么区别?

在路上

cad CAD看图王

小红书API接口文档:笔记详情数据开发手册

Datafox(数据狐)

小红书笔记详情接口 小红书API 小红书笔记详情api 小红书接口

手工VS.智能:AI商品计划如何让效率飙升90%?

第七在线

智能体的未来:从基础设施到智能体经济

逻辑学家

智能体 agent 智能体社区

从代码到碳表:MyEMS 开源社区版如何支撑中小企业双碳合规?​

开源能源管理系统

开源 能源管理系统

KFintech以3,500万美元收购Ascent 51%控股权

财见

小红书笔记评论API:一键获取分层评论与用户互动数据

Datafox(数据狐)

小红书API 小红书笔记评论接口 小红书笔记评论采集 小红书笔记评论api

蚂蚁集团、京东已暂停在港发行稳定币计划

TechubNews

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