Apollo 2.1.0 已发布,包含了诸如 Spring Boot 3.0 支持、管理员工具页面增强、配置项的类型支持、支持数据库作为注册中心等重大更新。
Apollo(阿波罗)是一款可靠的分布式配置管理中心,诞生于携程框架研发部,能够集中化管理应用不同环境、不同集群的配置,配置修改后能够实时推送到应用端,并且具备规范的权限、流程治理等特性,适用于微服务配置管理场景。
01 Highlights
Spring Boot 3.0 支持
Apollo Java 客户端已支持 Spring Boot 3.0 版本。
管理员工具页面增强
用户管理页面增加了列表视图:
系统配置页面增加了 PortalDB 和 ConfigDB 所有配置项的列表视图:
开放平台权限管理页面增加了第三方应用列表视图:
配置项的类型支持
用户现在可以修改配置项的类型,Apollo 将根据类型进行基本类型检查,现在可用的类型有 String(默认)、Number、Boolean 和 JSON。
非 Properties 的 Namespace 比较功能
支持非 Properties 的 Namespace 比较不同集群/环境间的配置。
支持数据库作为注册中心
Apollo 现在支持使用数据库作为服务注册中心,无需依赖第三方服务注册中心,如 Eureka、Consul、ZooKeeper 等。
不兼容更新
Flyway 数据库迁移工具从新版本开始不再支持。
02 What's Changed
功能增强
-
添加配置以调整属性源覆盖行为
-
添加 Config Service Load Balancer Client 的 spi
-
添加一个新的 API 以使用分页加载项目
-
apollo-client 支持 Spring Boot 3.0
-
apollo-client-config-data 支持 Spring Boot 3.0
-
添加 apollo-plugin-log4j2 模块以支持 log4j2.xml 集成
-
允许用户为 ApolloConfigChangeListener 配置以逗号分隔的命名空间
-
为 MessageProducerManager 和 Injector SPI 添加 Ordered 接口
-
优化 Spring-Security 防火墙拒绝请求响应 400 的问题
-
允许用户一次关联多个公共命名空间
-
优化开放平台授权管理 UI 体验
-
比较配置项时添加搜索键
-
添加一个新的 API 以使用分页加载项目
-
阿波罗门户用户友好的用户管理页面
-
将 Spring Session 序列化方式切换为 JSON 以兼容 Spring Security 版本更新
-
对命名空间进行多线程排序
-
允许用户删除 AppNamespace
-
为 Apollo Portal 开发人员添加配置处理器
-
添加潜在的 JSON 值检查功能
-
支持非 Properties Namespace 比较
-
为自定义 OIDC userDisplayName 添加一个选项
-
为配置项添加基本类型支持
-
一个用户友好的 Apollo 门户配置管理页面
-
支持使用数据库作为注册中心
-
用户可以在不重新编译项目的情况下更改 spring.profiles.active 的值
-
为 Eureka 开启登录认证
问题修复
-
修复 openapi item with url illegalKey 400 错误
-
修复 ApolloBootstrapPropertySources 优先级问题
-
修复 beanName2SpringValueDefinitions 缓存问题
-
修复当 openapi key 的参数包含 “a[0]” 时出现 400 错误请求
-
升级 mysql-connector-java 版本,修复可能的事务回滚失败问题
-
修复 'openjdk:8-jre-alpine' 可能导致错误的 cpu 核心数
-
修复覆盖 JSON 类型配置为空的问题
-
修复 deletedAt 时间戳问题
-
修复 openapi item with url illegalKey 400 错误
-
修复 @Transactional 无效案例
-
修复灰度发布/回滚命名空间时出现的异常
-
修复 LDAP 集成的 JSON 序列化问题
-
修复 Apollo 检查 YAML 格式接口 Response Code = 500
-
修复 create namespace with single dot 500 错误
-
修复(安全):将 fastjson 升级到 1.2.83
-
修复获取包含删除项命名空间信息的 openapi 接口
-
运行测试时禁用 Spring Cloud Discovery 以加快测试过程并减少错误日志
-
修复灰度版本的配置长度限制无法与其主版本同步的问题
-
修复删除最后一项配置后出现空白项的问题
更多内容可以点击左下角阅读原文或直接访问以下链接:
-
https://github.com/apolloconfig/apollo/releases/tag/v2.1.0
-
https://github.com/apolloconfig/apollo-java/releases/tag/v2.1.0
升级后如有问题,可以反馈至 https://github.com/apolloconfig/apollo/issues。
欢迎加入我们
Apollo 社区欢迎大家以任何形式为社区做出贡献,包括但不限于文档改进、提交 issue/bug、贡献代码、Review PR、技术讨论等,一起促进开源生态的发展。
-
Apollo 官方网站:
https://www.apolloconfig.com/
-
Apollo 仓库地址:
https://github.com/apolloconfig/apollo
-
Apollo 公共邮箱: