QCon 演讲火热征集中,快来分享技术实践与洞见! 了解详情
写点什么

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:111799
用户头像

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

关注

评论

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

崖山数据库系统YashanDB YCP认证培训,重磅上线!

YashanDB

数据库 国产数据库 yashandb YCP

Mac电脑必备蓝光多媒体播放器 Blu-ray Player Pro 破解版 完美支持M1

iMac小白

今天你对齐了吗,浅析中后台表单的设计艺术

inBuilder低代码平台

和鲸协办2024GAIIC算法挑战赛,基于ModelWhale平台实现模型自动评审,加速结果出分

ModelWhale

人工智能 大数据 全球人工智能技术创新大赛

明天!龙蜥邀您参加第二届 eBPF 开发者大会,探索 eBPF 技术的无限可能

OpenAnolis小助手

开发者 ebpf 龙蜥社区 龙蜥操作系统

云手机可以用来进行Temu电商测评吗?

Ogcloud

云手机 海外云手机 云手机海外版 电商云手机 跨境云手机

意难平!面试小米,一步之遥...

王磊

Java 面试题

欧伟杰博士:不做追随者 “内核”的厚度决定“产品”的高度

YashanDB

数据库 国产数据库 yashandb 根技术 共享集群

苹果Mac电脑CHM阅读器推荐:CHM Viewer Star for mac破解下载

iMac小白

一文读懂传统服务器与云服务器的区别

Finovy Cloud

实现“代码可视化”需要了解的前置知识-编译器前端

京东科技开发者

【PolarDB-X从入门到精通】课程随堂互动获奖公告

阿里云数据库开源

数据库 阿里云 分布式数据库 教程分享 PolarDB-X

Performance analysis of IPQ9554 chip motherboard with QCN6274 5G & 6G card

wifi6-yiyi

5G 6G ipq9554 qcn6274

安卓屏幕锁万能钥匙:UnlockGo (Android) for Mac 7.6.0 激活版

iMac小白

并发编程-ExecutorCompletionService解析

京东科技开发者

对号入座,快看看你的应用系统用了哪些高并发技术?

京东科技开发者

监控系统泛滥:CTO 面临的隐形成本危机

观测云

监控

从零开始到将应用程序成功发布到应用商店

雪奈椰子

从用户中来,到用户中去:IPD集成产品开发之FFAB模型,让你的产品供不应求!

IPD产品研发管理

华为 项目管理 产品经理 IPD 产品研发

ETL结合飞书快速实现业务信息同步

RestCloud

数据同步 ETL 数据集成 飞书

【论文速读】| CovRL:基于覆盖引导的强化学习对LLM基础变异进行JavaScript引擎模糊测试

云起无垠

大模型做时序预测也很强!华人团队激活LLM新能力,超越一众传统模型实现SOTA

Openlab_cosmoplat

Amazon Bedrock 实践系列 | Claude 3 深度探秘

亚马逊云科技 (Amazon Web Services)

生成式AI

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