领先一步
VMware 提供培训和认证,助您加速进步。
了解更多我很高兴地代表 Spring 和 Apache Geode 社区宣布发布Spring Boot for Apache Geode & Pivotal GemFire (SBDG) 1.1.0.RELEASE 版本以及 1.2.0.M1 版本。
SBDG 1.1.0.RELEASE 可在 Maven Central 中获取。
SBDG 1.2.0.M1 可在 Spring Milestone 仓库中获取。
Spring Boot for Apache Geode & Pivotal GemFire (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
Spring Boot for Apache Geode & Pivotal GemFire (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 Repositories 的强大功能,同样附带指南和示例代码,以帮助您应用此模式。
此外,我们还涵盖了缓存最常见的用例之一,HTTP 会话状态缓存,其中同样包含指南和示例代码。
很难否认,随着微服务在云环境中的普及,缓存将成为云原生开发中最常见和最重要的模式之一。
缓存不再仅仅是为了提高访问关系数据库数据的性能。当微服务成为应用程序访问信息的主要新数据源时,缓存将变得越来越普遍和关键。
这是因为网络本身容易发生故障,并且在每次网络跳跃时都会产生显著的延迟损失。这可能会对高负载下的应用程序造成致命影响,导致各种级联故障(例如内存问题)。目标是尽可能减少不必要的网络调用,这相对容易做到,尤其是在读取比例远大于写入比例时。
缓存 (HTTP) 会话状态将继续是最常见的缓存形式。幸运的是,Spring Session,特别是Spring Session for Apache Geode & Pivotal GemFire,可以非常轻松地管理您的 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 应用程序分配具有特定角色的用户。这对于某些 UC 很重要,在这些 UC 中,应用程序必须以只读模式运行,应用程序只能读取数据,而不能修改数据。
为了补充旁路、内联和近缓存模式,我们将提供另一份指南以及示例代码,展示多站点、WAN 拓扑在缓存中的应用,以及这如何进一步提高应用程序架构的可用性和弹性(可以想象Active-Active、Active-Passive、可用性区域等)。
SBDG 1.2 的相关代码正在进入 start.spring.io。不久的将来,您可以在开发 Spring Boot 应用程序时选择 Apache Geode 作为选项,这将方便地为您提供 spring-geode-starter 依赖项。
所有这些以及更多内容即将到来。
一如既往,您的持续反馈非常宝贵且受到欢迎。正是您的贡献使 SBDG 成为一个有价值的项目。谢谢。
问题 | 拉取请求 | StackOverflow
附注:切勿错过今年在德克萨斯州奥斯汀于10 月 7 日至10 日举行的SpringOne Platform 2019,与最优秀的专家一起学习的机会。期待在那里见到大家!