走在前沿
VMware 提供培训和认证,帮助您快速提升进度。
了解更多我谨代表 Spring 和 Apache Geode 社区,很高兴地宣布 Apache Geode & Pivotal GemFire 的 Spring Boot (SBDG) 1.1.0.RELEASE
和 1.2.0.M1
版本发布。
SBDG 1.1.0.RELEASE
可在 Maven Central 获取。
SBDG 1.2.0.M1
可在 Spring Milestone 仓库获取。
1.2.0.M1
中的新增功能Apache Geode & Pivotal GemFire 的 Spring Boot (SBDG) 1.2.0.M1
是一个基线版本,旨在使 SBDG 与最新的 GemFire/Geode 和 Spring 版本保持一致。
Spring Framework 5.2.0.RC1
Spring Boot 2.2.0.M5
Spring Data Moore-RC2/2.2.0.RC2
Spring Session Corn-M3/2.2.0.M3
使用 Spring Data Moore,还会引入以下内容:
Apache Geode 1.9.0
Pivotal GemFire 9.8.3
Apache Geode & Pivotal GemFire 的 Spring Boot (SBDG) 1.1
版本涵盖了许多内容。在此版本系列中,我们包含了许多重要的更改和功能,以帮助开发人员保持生产力并解决重要且相关的问题。
让我们回顾一些亮点和值得一提的内容。
SBDG 1.1
基于以下内容:
Spring Framework 5.1.9.RELEASE
Spring Boot 2.1.7.RELEASE
Spring Data Lovelace-SR10/2.1.10.RELEASE
Spring Session Bean-SR7/2.1.7.RELEASE
使用 Spring Data Lovelace,还会引入以下内容:
Apache Geode 1.6.0
Pivotal GemFire 9.5.4
有关版本的更多详细信息,请参阅 SBDG 版本兼容性矩阵。
SBDG 1.1
现在包含了对 3 种最常见的 缓存设计模式 的专用支持。
内联缓存,结合 Spring Data 存储库 的强大功能,还配备了 指南 和 示例代码,以帮助您应用此模式。
此外,我们还介绍了缓存最常见的用例之一,即 HTTP 会话状态缓存,它同样包含 指南 和 示例代码。
在云环境中,微服务的激增使得缓存成为云原生开发中最常见和最重要的模式之一,这一点是无可争辩的。
缓存不再仅仅是为了提高从关系数据库访问数据的性能。当微服务成为应用程序访问信息的**新**数据源时,缓存将变得越来越普遍和至关重要。
这是因为网络本质上容易出现故障,并且每次发生网络跳跃时都会产生很大的延迟。这对于负载过重的应用程序来说可能是致命的,会导致各种级联故障(例如内存问题)。目标是尽可能减少不必要的网络调用,这在读取量远远大于写入量的情况下很容易做到。
缓存 (HTTP) 会话状态将继续是最常见的缓存形式。幸运的是,Spring Session(特别是 Apache Geode & Pivotal GemFire 的 Spring Session)强大的功能可以轻松管理 Spring Boot 应用程序的所有类型会话(HTTP、WebSockets 和 WebSessions(响应式))的状态。此外,Spring Session 支持各种后端存储(**JDBC**、**Redis**、**MongoDB**、**Hazelcast**,当然还有 **GemFire/Geode**),因此在您的需求发生变化时,切换提供程序非常简单。
使用 SBDG 1.1
,您现在可以将 Spring Boot 应用程序部署到 Pivotal CloudFoundry (PCF),但仍然可以将这些应用程序连接到外部数据源。
当数据必须得到保护并保存在本地时,混合云安排很常见。对于试图迁移到云并对其堆栈进行现代化的公司来说,这也是一个非常常见的中间步骤。混合部署使公司能够采取增量方法来采用云,而不是采取非此即彼的方法。
因此,SBDG 包含 一流的支持,用于在 PCF 中运行 Spring Boot 应用程序,但仍可以将这些应用程序连接到外部管理的独立 Apache Geode 或 Pivotal GemFire 集群。
相关地,除了混合云部署之外,SBDG 还支持以下功能:
SBDG 1.1
(甚至在 1.1 之前)一直专注于开发人员的生产力:帮助用户尽可能**轻松**、**快速**且**可靠地**启动和运行!
该策略的一部分植根于帮助用户和客户:
从开源(Apache Geode)切换到商业(Pivotal Cloud Cache)
从非托管(独立、外部)迁移到托管环境(Pivotal Cloud Foundry)
只需进行**少量**或**无需**进行代码或配置更改;它应该可以正常工作!
事实上,您能够双向移动同样重要。从托管环境返回到独立环境,以及从商业环境返回到开源环境。同样,它应该可以正常工作!
这就是 切换 的全部意义……“选择”,特别是“您”的选择。
除了上面提到的更改之外,SBDG 1.1
中还进行了其他一些更改。有关完整详细信息,请参阅 更改日志。
现在所有的焦点都转移到 SBDG 1.2
。我们将继续在几个领域进行投资。
从技术上讲,这意味着什么?
我们计划引入一个新的注解,@EnableClusterAware
,当它与你的@SpringBootApplication
类一起声明时,将使你能够从本地开发环境(例如你的 IDE)切换到客户端/服务器,而无需担心连接细节和集群的配置。SBDG 会为你搞定!这将使在不同环境(例如 DEV 和 TEST/STAGING)之间“切换”变得更加容易,尤其是在你调试和测试代码时在开发过程中快速迭代时。
此外,我们还将使 PCF 环境中的开发人员能够在运行应用程序时为其部署的 Spring Boot 应用程序分配具有特定角色的用户。这对于某些使用场景非常重要,在这些使用场景中,应用程序必须以只读模式运行,应用程序只能读取数据,而不能修改数据。
为了补充旁路、内联和近缓存模式,我们将提供另一个指南以及示例代码,展示多站点 WAN 拓扑应用于缓存的强大功能,以及这如何帮助进一步提高应用程序架构的可用性和弹性(想想主动-主动、主动-被动、可用区等)。
SBDG 1.2
的相关内容正在进入 start.spring.io。在不久的将来,你将能够在开发 Spring Boot 应用程序时选择 Apache Geode 作为选项,这将方便地为你提供spring-geode-starter
依赖项。
所有这些以及更多内容即将到来。
一如既往,我们非常感谢并欢迎您持续的反馈。正是您的贡献使 SBDG 成为一个有价值的项目。谢谢。
问题 | PR | StackOverflow
附言:不要错过今年在德克萨斯州奥斯汀举办的 SpringOne Platform 2019,向最优秀的专家学习的机会,时间从10月7日到10月10日。期待在那里见到大家!