Spring boot 微服务核心组件集 mica v1.0.1 发布!

mica(云母)

mica 云母,寓意为云服务的核心,使得云服务开发更加方便快捷。mica 的前身是 lutool,lutool在内部孵化了小两年,已经被多个朋友运用到企业。由于 lutool 对微服务不够友好,故重塑了mica。mica 中的部分大部分组件进行了持续性打磨,增强易用性和性能。

mica 核心依赖

mica 基于 java 8,没有历史包袱,支持传统 Servlet 和 Reactive(webflux)。采用 mica-auto 自动生成 spring.factories 和 spring-devtools.properties 配置,仅依赖 Spring boot、Spring cloud 全家桶,无第三方依赖。市面上鲜有的微服务核心组件。

更新说明

[1.0.1] - 2019-04-03

  • :ok_hand: 处理几处 P3C 代码检查问题。@冷冷
  • :zap: 优化泛型,避免部分环境下的编译问题。
  • :sparkles: 添加 lutool 中的 WebUtil.renderJson()。
  • :zap: 优化 DateUtil 性能。
  • :zap: 优化 RuntimeUtil,提高性能。
  • :zap: 升级 gradle 到 5.3.1

本次版本主要是进行了一些工具的压力测试:

Bean copy 测试

Benchmark Score Error Units
hutool 1939.092 26.747 ops/ms
spring 3569.035 39.607 ops/ms
cglib 9112.785 560.503 ops/ms
mica 17753.409 393.245 ops/ms

结论:mica 在非编译期 Bean copy 性能强劲,功能强大。

UUID 压测

Benchmark Score Error Units
jdk8UUId 734.595 17.220 ops/ms
jdk8ThreadLocalRandomUUId 3224.759 32.107 ops/ms
hutoolFastSimpleUUID 3619.748 67.195 ops/ms
micaUUId(java9 方式) 12375.405 241.879 ops/ms

结论:mica 在使用了 java9 的算法,性能卓越。

Date format 压测

Benchmark Score Error Units
java8Date 2405.924 44.912 ops/ms
micaDateUtil 2541.753 48.321 ops/ms
hutoolDateUtil 2775.531 13.526 ops/ms

结论:hutool 使用的 common lang3 的 FastDateFormat 占用优势。mica 使用 tomcat8 中的 ConcurrentDateFormat 简单的规避了 SimpleDateFormat 的线程问题。

后期 mica 会进行更多的测试,保证稳定的同时,尽可能的提高性能。

开源推荐

关注我们

如梦技术-公众号.jpg
扫描上面二维码,更多精彩内容每天推荐!