Spring boot stater开发利器mica-auto1.2.1发布
一、简介
mica-auto 是 Spring cloud 微服务框架 Mica 中的一个基础组件,用来生成 Spring boot starter 的一些基础配置。
二、功能
- 生成 spring.factories。
- 生成 spring-devtools.properties
- 生成 FeignClient 到 spring.factories 中,供 mica-cloud 中完成 Feign 自动化配置。
- 生成 java Spi 配置,需要添加 [@AutoService ]() 注解。
注解 | spring.factories 或 Spi key |
---|---|
@AutoContextInitializer | ApplicationContextInitializer |
@AutoListener | ApplicationListener |
@AutoRunListener | SpringApplicationRunListener |
@AutoEnvPostProcessor | EnvironmentPostProcessor |
@AutoFailureAnalyzer | FailureAnalyzer |
@Component | EnableAutoConfiguration |
@AutoService | java Spi 生成配置 |
三、变更记录
- 添加对 spring boot
SpringApplicationRunListener
的支持。 - 添加对 spring boot
EnvironmentPostProcessor
的支持。 - Spring boot 升级到
2.2.6.RELEASE
。
四、使用
注意
: 如果你项目中使用了 Lombok 请将 mica-auto 的依赖放置到 Lombok 后面。
maven
<dependency> <groupId>net.dreamlu</groupId> <artifactId>mica-auto</artifactId> <version>1.2.1</version> <scope>provided</scope> </dependency>
gradle >= 5.x
annotationProcessor("net.dreamlu:mica-auto:1.2.1")
gradle < 5.x
compileOnly "net.dreamlu:mica-auto:1.2.1"
java spi 示例:
- 添加注解
@AutoService
指定 spi 接口Processor.class
。
package foo.bar; import javax.annotation.processing.Processor; @AutoService(Processor.class) public class MyProcessor implements Processor { // … }
AutoService
将会自动生成 spi 的配置文件 META-INF/services/javax.annotation.processing.Processor
。内容:
foo.bar.MyProcessor
5、使用场景
- Spring boot starter 开发利器,自动生成 spring.factories、spring-devtools.properties 配置。
- 多模块项目中的子项目,包名不同时的自动配置(主项目不建议添加)。
- java spi 扩展自动生成配置。
建议关注如梦技术码云:https://gitee.com/596392912 ,更多微服务核心组件值得拥有。
低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
拿下四项世界第一,解密阿里云大规模深度学习性能优化实践
文 | 阿里云异构计算AI加速负责人 游亮 近日,斯坦福大学公布了最新的 DAWNBench 深度学习榜单,这是人工智能领域最权威的竞赛之一,是衡量深度学习优化策略、模型架构、软件框架、云和硬件等综合解决方案实力的标准之一。 在图像识别(Image Classification on ImageNet)榜单中,阿里云包揽了训练时间、训练成本、推理延迟以及推理成本四项第一。 DAWNBench 官方显示,阿里云异构计算服务训练 ImageNet 128 万张图片仅需 2 分 38 秒,基于含光 800 的 AI 服务识别一张图片仅需 0.0739ms,同时在训练成本和推理成本上也实现世界纪录的突破。 此次,阿里云创造四项纪录得益于阿里云自研加速框架 AIACC 及平头哥含光 800 芯片。 其中,AIACC 是阿里云自主研发的飞天 AI 加速引擎,首次实现了统一加速 Tensorflow、PyTorch、MxNet 和 Caffe 等主流深度学习框架,在相同的硬件平台下,AIACC 能够显著提升人工智能训练与推理的性能。 作为 AIACC 的研发负责人,我将在本文内与大家分享阿里云基于 ...
- 下一篇
记一次JAVA进程导致Kubernetes节点CPU飙高的排查与解决
记一次JAVA进程导致Kubernetes节点CPU飙高的排查与解决 一、发现问题在一次系统上线后,我们发现某几个节点在长时间运行后会出现CPU持续飙升的问题,导致的结果就是Kubernetes集群的这个节点会把所在的Pod进行驱逐(调度);如果调度到同样问题的节点上,也会出现Pod一直起不来的问题。我们尝试了杀死Pod后手动调度的办法(label),当然也可以排除调度节点。但是在一段时间后还会复现,我们通过监控系统也排查了这段时间的流量情况,但应该和CPU持续占用没有关联,这时我们意识到这可能是程序的问题。 二、排查问题定位Pod这里使用kubectl top pods 命令确定CPU占用最高的pods都是哪些。 kubectl -n app top pods 因为问题已解决,以上图片只是举个例子。 排查工具Arthas我们这边使用了阿里的Arthas ,它是Alibaba开源的Java诊断工具。当你遇到以下类似问题而束手无策时,Arthas可以帮助你解决: 这个类从哪个 jar 包加载的?为什么会报各种类相关的 Exception? 我改的代码为什么没有执行到?难道是我没 comm...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- CentOS8安装MyCat,轻松搞定数据库的读写分离、垂直分库、水平分库
- Mario游戏-低调大师作品
- Docker安装Oracle12C,快速搭建Oracle学习环境
- Red5直播服务器,属于Java语言的直播服务器
- CentOS7,CentOS8安装Elasticsearch6.8.6
- CentOS8编译安装MySQL8.0.19
- SpringBoot2整合MyBatis,连接MySql数据库做增删改查操作
- Springboot2将连接池hikari替换为druid,体验最强大的数据库连接池
- CentOS6,CentOS7官方镜像安装Oracle11G
- Jdk安装(Linux,MacOS,Windows),包含三大操作系统的最全安装