本文转载自微信公众号「JAVA架构日记」,作者如梦技术。转载本文请联系JAVA架构日记公众号。
一、mica(云母)
mica是一个微服务组件集,但不仅仅是组件,我们关注的是微服务生态并持续演进,尽量做到开箱即用,简化使用和排坑。总共已有 40+ 组件,并且很多组件已经打通。
mica 开源组件图谱
二、版本说明
注意: 2.4.5 开始去掉了 GA 后缀,mica-v2.0 分支仅做 bug 修复,不再做功能更新。
最新版本 | mica 版本 | spring boot 版本 | spring cloud 版本 |
---|---|---|---|
2.4.5 | mica 2.4.x | 2.4.x | 2020 |
2.1.1-GA | mica 2.0.x~2.1.x | 2.2.x ~ 2.3.x | Hoxton |
三、更新记录
v2.4.5 - 2021-04-28
- 添加 mica-jetcache(二级缓存)模块,方便使用。
- 添加 mica-lite 模块,方便 Spring boot 项目使用。
- mica-metrics 重构 UndertowMetrics,暴露更加有用的指标。
- mica-metrics 完善 DruidMetrics,暴露更加有用的指标。
- mica-redis 调整 bean 名称 redisTemplate 为 micaRedisTemplate 减少冲突。
- mica-captcha 中的 cache 改为每次读取, caffeine 会刷新,造成引用为 null。
- mica-captcha 优化 bean 名称和添加 generateBase64Vo 方法。
- mica-logging 减少 reflections 日志,readme 添加阿里云、腾讯云日志服务接入链接。
- mica-qrcode 添加 base64 image 方法。
- mica-core 添加网关通用 code。
- mica-core 添加 CollectionUtil computeIfAbsent 方法 避免 jdk8 下的 bugs JDK-8161372
- mica-core Pkcs7Encoder 默认的 BLOCK_SIZE 改为 16 github #35 兼容更多编程语言。
- mica-caffeine 多 cache name 时报错。
- 升级 spring boot 到 2.4.5
- 升级 mica-weixin 到 2.1.0(优化对 mica-caffeine 的支持)
四、mica-metrics
mica-metrics 解决了 druid、undertow 没有监控指标的问题,做到了全网首发,后面会 pr 给 Druid 和 Spring boot 官方。
4.1 druid metrics
在 mica 2.4.5 之前对 druid 只实现了 DruidDataSourcePoolMetadata,仅仅支持 3 个 jdbc 开头的指标,如下图:
mica 2.4.5 之前的 druid 指标
mica 2.4.5 进行了调整,现在新增了 10 个 Druid 的指标,并且支持多数据源。
4.2 undertow metrics
undertow 指标在 mica 2.4.5 彻底进行了重构,对 xwork、session、connector 的数据统计进行了收集,现已支持 22 个指标。
五、mica生态
- mica-auto (Spring boot starter 利器): https://gitee.com/596392912/mica-auto
- mica-weixin(jfinal weixin 的 spring boot starter):https://gitee.com/596392912/mica-weixin
- mica-mqtt(基于 t-io 实现的 mqtt组件):https://gitee.com/596392912/mica-mqtt
- Spring cloud 微服务 http2 方案(h2c): https://gitee.com/596392912/spring-cloud-java11
- mica-security(mica权限系统 vue 改造中): https://gitee.com/596392912/mica-security