产品战略专家梁宁确认出席AICon北京站,分享AI时代下的商业逻辑与产品需求 了解详情
写点什么

VMware 的 CloudFoundry 服务获得对 PostgreSQL 支持

  • 2011-11-10
  • 本文字数:1602 字

    阅读完需:约 5 分钟

今年年初,VMware 宣布了CloudFoundry 项目,一款平台即服务(PAAS)开源解决方案,其预置提供对MongoDB、MySQL 及Redis 此类服务的支持。最近它将PostgreSQL 和RabbitMQ 加入到云服务列表中以便为各应用所使用,同时也提供了一个可运行在单个工作站上的 Micro 版CloudFoundry。

PostgreSQL 纳入 CloudFoundry 还是很有趣的,因为它是一个非常有特色的传统数据库,其受众较之 MySQL 或 MongoDB 的用户截然不同。为了更好使用 PostgreSQL,cloudfoundry 并没有直接使用其正常发布的版本而是在 vFabric 之上定制了一个版本,这在官方博客上有做解释。(译者注:针对云平台对PostgreSQL 做了一些优化。)

该博客上给了一个样例说明如何利用Spring Roo 在一个Java 项目中使用PostgreSQL。我们这里介绍另一种可选方案,针对的Java 应用是某个基于Spring 使用了JPA 的 WAR

假设你的应用已有的 Spring 上下文初始化内容如:

复制代码
<bean id="entityManagerFactory" class="org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean">
<property name="persistenceUnitName" value="myJpaManager" />
<property name="dataSource" ref="dataSource"/>
</bean>
<bean class="org.springframework.jdbc.datasource.DriverManagerDataSource" id="dataSource">
<property name="driverClassName" value="org.postgresql.Driver" />
<property name="url" value="jdbc:postgresql://localhost/postgres" />
<property name="username" value="postgres" />
<property name="password" value="postgres" />
</bean>
<bean id="transactionManager" class="org.springframework.orm.jpa.JpaTransactionManager">
<property name="entityManagerFactory" ref="entityManagerFactory" />
</bean>
<tx:annotation-driven transaction-manager="transactionManager" />
<context:annotation-config />

META-INF/persistence.xml文件如:

复制代码
<persistence xmlns="http://java.sun.com/xml/ns/persistence"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/persistence http://java.sun.com/xml/ns/persistence/persistence_1_0.xsd"
version="1.0">
<persistence-unit name="myJpaManager" transaction-type="RESOURCE_LOCAL">
<provider>org.hibernate.ejb.HibernatePersistence</provider>
<properties>
<property name="hibernate.dialect" value="org.hibernate.dialect.PostgreSQLDialect" />
<property name="hibernate.hbm2ddl.auto" value="update" />
</properties>
</persistence-unit>
</persistence>

多亏了 CloudFoundry 的自动配置功能,此应用可以被直接上传到 CloudFoundry,完全不用做任何修改。

PostgreSQL(包括 MySQL 和其他平台支持的服务)充分利用了 Cloudfoundry 提供的自动配置功能。在特定条件下,使用了 PostgreSQL 的某一本地 Java 应用可以上传到 Cloudfoundry 而 _ 无需修改任何一行代码 _。

自动配置利用了 Spring 核心容器的功能,当下面两个条件都满足的情况下可以生效

  1. 任一给定的服务类型有且只有一个服务实现。比如,你应该只给自己的应用绑定一个关系型数据库服务(MySQL 或 PostgreSQL)。
  2. 每个匹配类型对应有且只有一个 bean。比如,在你的应用上下文中应该只出现一个数据源 bean。

如果满足上述需求,那 Cloudfoundry 将会自动拦截你的本地数据源,并使用 Cloudfoundry 服务来代替那些设置在 Spring 上下文中的值。

剩下唯一要做的就是积极地回答当应用被上传到云上, vmc 是何时请求服务绑定的。

对于更加复杂的应用,Spring 3.1预计能增加一个特殊的_ 云_ 命名空间并提供运行时概要支持。

查看英文原文: VMware’s CloudFoundry Service Gains Support for PostgreSQL

2011-11-10 06:111735
用户头像

发布了 52 篇内容, 共 19.0 次阅读, 收获喜欢 3 次。

关注

评论

发布
暂无评论
发现更多内容

AI技术图像编辑软件:Luminar Neo for Mac最新中文版

mac大玩家j

图像编辑 Mac软件 编辑图像 图像处理工具

GraphPad Prism 9 mac(科学数据分析和图形绘制软件) v9.5.1完整版安装图解

mac

windows 苹果mac Prism 9 科学数据分析软件

探索神秘的算力市场:你不知道的国内算力资源售卖揭秘

麦田的守望者

云算力 GPU算力 AIGC

Bartender for mac(菜单栏图标管理软件) 5.0.10永久激活码

mac

Bartender 苹果mac Windows软件 菜单栏图标管理软件

ARTS-WEEK5-23.9.18~23.9.24

EchoZhou

备受以太坊基金会青睐的 Hexlink,构建亿级用户涌入 Web3的入口

大瞿科技

InDesign 2023 for Mac(id 2023下载) v18.5永久激活版

mac

苹果mac Windows软件 排版软件 InDesign 2023

[大厂实践] Chick-fil-A的服务API流程实践

俞凡

云原生 大厂实践

DAPP算力挖矿项目系统开发案例

l8l259l3365

Parallels Desktop 18 for Mac(pd虚拟机安装教程) v18.0.1(53056)永久激活版

mac

Parallels Desktop 18 苹果mac Windows软件 虚拟机软件

HTTP 服务的4种认证方法分析

前行

Token OAuth 2.0 JWT 认证授权

手摸手图解 CodeWhisperer 的安装使用

亚马逊云科技 (Amazon Web Services)

人工智能

[大厂实践] 边缘网络的可观测性

俞凡

云原生 可观测性 大厂实践

华为坤灵“都江堰”开闸放舟,分销人飞奔在数字化航道

脑极体

分销 坤灵

MySQL 用 limit 为什么会影响性能?有什么优化方案?

程序员万金游

#java #Mysql #mysql面试 #java程序员

备受以太坊基金会青睐的 Hexlink,构建亿级用户涌入 Web3的入口

西柚子

Maven3.6.1下载和详细配置

程序员万金游

#java #maven

ARTS 打卡第 5 周:HTTP 服务的4种认证方法分析

前行

习惯养成 ARTS 打卡计划

简单好用的Git客户端 Fork免激活最新版

mac大玩家j

git Mac软件 Git客户端

备受以太坊基金会青睐的 Hexlink,构建亿级用户涌入 Web3的入口

股市老人

关于Android突破非SDK接口限制的延伸

XCG00

android

Boot Camp分区备份还原工具:Winclone pro 10激活最新

胖墩儿不胖y

Mac软件 备份软件

Mac电脑油猴Safari浏览器插件 Tampermonkey激活中文版

胖墩儿不胖y

脚本管理 管理脚本 脚本管理器

腾讯力捧新游元梦之星,UGC地图却埋雷,疑似AI投喂惹的祸

新消费日报

VMware的CloudFoundry服务获得对PostgreSQL支持_Java_Kostis Kapelonis_InfoQ精选文章