IT资讯 Apollo 配置中心发布 2.0 版本,支持 Java 17!

bill · 2022-05-16 12:30:08 · 热度: 105

『 此次发布是 Apollo 自 1.0.0 以来的又一次大版本更新,凝结了 39 位 Contributor 的贡献,包含了诸如 Java 17 支持、唯一键索引增强、Spring Boot 版本升级等重大更新。』

1. Highlights

Java 17 支持

Apollo 客户端和服务端均已支持 Java 8、11 和 17 版本。

公共 Namespace 列表页

Apollo 主页新增了公共 Namespace 列表视图,用户可以在此页面上查看和搜索公共 Namespace。

Apollo 配置中心发布 2.0 版本,支持 Java 17!

灰度发布支持标签

灰度规则支持通过标签来标识灰度的实例列表,适用于 IP 不固定的场景如 Kubernetes

Apollo 配置中心发布 2.0 版本,支持 Java 17!

配置导入导出功能增强

批量配置导入导出功能进行了重新设计并增强。

Apollo 配置中心发布 2.0 版本,支持 Java 17!

每个 Namespace 下现也已支持单独导入和导出。

Apollo 配置中心发布 2.0 版本,支持 Java 17!

唯一键索引

由于软删除的设计,Apollo 之前版本的数据库除主键外没有唯一键约束,在一些并发的情况下可能会遇到重复数据的问题。基于 2.0.0 版本新增的 DeletedAt 列,我们为大多数表都增加了唯一索引。

Spring Boot 和 Spring Cloud 版本升级

Apollo 服务端的 Spring Boot 和 Spring Cloud 分别升级到了 2.6.6 和 2021.0.1 版本。

不兼容更新 

apollo-client 从 2.0.0 版本开始不再支持 Java 1.7 版本,最低的 Java 运行时环境是 1.8。

2. What's Changed

功能增强

  • switch apollo.config-service log from warning to info level by @lonre

  • Make Access Key Timestamp check configurable by @nisiyong

  • refactor: let open api more easier to use and development by @Anilople

  • feat(scripts): use bash to call openapi by @Anilople

  • support search by item by @lepdou

  • feature: implement password policies to avoid weak passwords by @WillardHu

  • public namespace basic function by @youabcd

  • Extend the gray release capability to support dimensions other than IP by @zcy1010

  • bump to 2.0.0 and drop java 1.7 support by @nobodyiam

  • feat: add a shortcut to scroll to the top in the dashboard by @NICEXAI

  • change scrollbar css by @zeemood

  • support java 17 by @nobodyiam

  • optimize navbar style by @lepdou

  • add language.png icon by @lepdou

  • support export import config by env by @lepdou

  • support only show difference keys when compare namespace by @lepdou

  • add zookeeper service discovery support(#3557) by @CalebZYC

  • bump guava version to 31.0.1 by @Shoothzj

  • Bump client springboot version by @Shoothzj

  • The release history of namespaces that are not properties will also show comments and release times by @klboke

  • Allow disable apollo client cache by @Shoothzj

  • feature: isCommonlyUsed password check not hardcoded #4018 by @WillardHu

  • canonical zh-cn text by @lepdou

  • optimize create namespace page by @lepdou

  • Add Ordered interface to ProviderManager SPI by @darcydai

  • Bump xstream from 1.4.18 to 1.4.19 by @dependabot

  • Using commons-lang3 to replace commons-lang by @ruanwenjun

  • optimize import/export config by @lepdou

  • Configure publish and rollback modal boxes to add scrollbars by @klboke

  • add custom define discovery by @gy09535

  • Refactor the soft delete design by @nisiyong

  • upgrade spring boot to 2.6.6 and spring cloud to 2021.0.1 by @nobodyiam

  • upgrade mysql-connector-java to 8.0.28 by @Anilople

  • Upgrade flyway to 8.0.5 by @Shoothzj

  • Broadcast ConfigChangeEvent using Spring ApplicationEvent @nobodyiam

问题修复

  • Fix issue that the $ symbol is not used when reading shell variables by @ReganHe93

  • Fix issue: ingress syntax by @lijiansgit

  • fix helm scripts BUG by @w-a-n-g-s-h-u-n

  • Catch LinkageError for ClassLoaderUtil.isClassPresent in case class is present but is failed to load by @nobodyiam

  • fix gray publish refresh item status(#4039) by @CalebZYC

  • Fix the issue that property placeholder doesn't work for dubbo reference beans by @lonre

  • Fix the NPE occurred when using EnableApolloConfig with Spring 3.1.1 by @nobodyiam

  • fix the json number display issue when it's longer than 16 by @CalebZYC

  • fix update user password failure bug by @lepdou

  • Fix bug: associated namespace display incorrect in text view by @darcydai

  • fix import config bug by @lepdou

  • fix the potential data inconsistency issue by @nobodyiam

  • use item.isDeleted to check whether the item is deleted by @nobodyiam

  • Fix the apollo portal start failed issue by @nobodyiam

其它更新

  • remove ctrip profile by @JaredTan95

  • Remove spring dependencies from internal code by @klboke

  • remove ctrip profile dependency. by @Accelerator96

  • fix gpg signing issues when deploying to maven repository with github action by @nobodyiam

  • Fixed some code smells in apollo-portal module by @WillardHu

  • clean ctrip profile by @JaredTan95

  • Fixed some code smells in apollo-portal module #2 by @WillardHu

  • fix NullPointerException hazard in StringUtils.join(..) method by @WillardHu

  • Replace String.format() with newly created class OpenApiPathBuilder by @WillardHu

  • Make the constructor of AbstractApolloHttpException implementation class to support string template by @WillardHu

  • Removed useless hardcoded Strings in EnvUtils. by @DiegoKrupitza

  • chore: Simplified the Env class in apollo-portal that links to Env enum in apollo-core by @DiegoKrupitza

  • Chore: Future-proofed ConfigFileFormat by @DiegoKrupitza

  • ConfigFileFormat#Properties are now fully compatible with themselves by @DiegoKrupitza

  • Fix flaky test testGetPropertyNames. by @yyfMichaelYan

  • Fix flaky test testAssembleQueryConfigUrl. by @yyfMichaelYan

  • Update RelativeDateFormat.java by @xuxiawei

  • chore: change 'ctripcorp' to 'apolloconfig' in .yaml files by @void1104

  • Flaky test fields iteration order by @yyfMichaelYan

  • test(apollo-core): PropertiesUtilTest by @youyulan

  • optimization omits unnecessary time conversion by @xuxiawei

  • Split helm chart into another repo by @JaredTan95

  • refactor: SpringValueProcessor extract duplicate code by @mghio

  • build: ctripcorp -> apolloconfig in .github/workflows/cla.yml by @Fool-coder

  • Add unit tests for Utils by @joshknopp

  • Change Copy Right year to 2022 by @Shoothzj

  • Adding JUnit. Fixes #3874 by @ayush0407

  • Test coverage by @ayush0407

  • Test coverage by @ayush0407

  • Fix flaky test by @plzdoo

  • Update ReleaseMessageServiceWithCacheTest.java by @plzdoo

  • Translation of Apollo Official Chinese Document(s) by @misselvexu

  • fix a title indent error by @Alceatraz

  • Misc changes by @nobodyiam

  • feat: update secret access key tips by @weiyichao

  • Misc changes by @lepdou

更多内容可以查看 2.0.0 的 Release Note

感谢以下贡献者对此版本的贡献(排名不分先后)

@ReganHe93 @lonre @JaredTan95 @nisiyong @klboke @Accelerator96 @nobodyiam @lijiansgit @WillardHu @Anilople @lepdou @DiegoKrupitza @youabcd @zcy1010 @NICEXAI @zeemood @w-a-n-g-s-h-u-n @yyfMichaelYan @xuxiawei @void1104 @youyulan @CalebZYC @mghio @Fool-coder @Shoothzj @joshknopp @darcydai @dependabot @ruanwenjun @gy09535 @ayush0407 @czd890 @pengweiqhca @sy-records @dazuimao1990 @plzdoo @misselvexu @Alceatraz @weiyichao

欢迎加入我们

Apollo 社区欢迎大家以任何形式为社区做出贡献,包括但不限于文档改进、提交 issue/bug、贡献代码、Review PR、技术讨论等,一起促进开源生态的发展。

猜你喜欢:
暂无回复。
需要 登录 后方可回复, 如果你还没有账号请点击这里 注册