在一个 Cloud Foundry 应用中同时使用 MongoDB、Redis、Node.js 和 Spring MVC

工程 | Jon Brisbin | 2011年5月3日 | ...

传统上,应用程序是通过它们使用的主要技术来定义的。如果你正在构建一个 Spring MVC 应用程序,我们称它为“Java 应用”。由于我们的应用程序主要由 Java 组件构成,我们倾向于固守自己的领域,直到被迫与邻居互动之前,都不会表现得非常友好。我们设置基于 Java 的应用服务器,并且倾向于首先考虑使用 Java 语言来解决应用程序中的问题,无论该语言是否是最佳选择。维护多套运行时环境通常太困难了……

本周 Spring 动态:2011年4月26日

工程 | Josh Long | 2011年4月27日 | ...

又一个星期过去了,又带来了大量精彩的新内容——一如既往地,这些内容来自社区和 SpringSource。本周,CloudFoundry 的热情持续高涨,本周综述中包含了一些有趣的内容。有关 CloudFoundry 的更多内容,您可以查阅 CloudFoundry.comCloudFoundry.org 网站。特别是,发布会后第二天举行的 Cloud 用户组会议的幻灯片可在此处获取。

  1. Oliver Gierke 发表了一篇关于高级 Spring Data JPA 的博客,解释了如何使用 Spring Data JPA 项目中的特性来提升 JPA 编程的水平,例如集成 QueryDSL 库。这篇博文——以及该库——展示了 Spring 框架对所有数据访问技术(无论是 RDBMS、NoSQL 还是其他任何技术)持续提供的一流支持。
  2. Grails 开发者倡导者 Peter Ledbrook 最近在其关于使用 Grails 和 CloudFoundry 的原始博客上进行了扩展。

    这篇博客详细介绍了如何将 Grails 的 GORM 支持与 CloudFoundry 上提供的各种数据存储结合使用。快来看看吧!

  3. Alex Popescu 的 MyNoSQL 门户 MyNoSQLCloudFoundry 支持的 NoSQL 选项发表了一些有趣的评论。他评论说:“从存储的角度来看,Cloud Foundry 从一开始就鼓励多语言持久化,提供对关系型数据库(MySQL)、超快速智能键值存储(Redis)和流行的文档数据库(MongoDB)的访问。
    这篇文章——实际上整个网站——对于想要利用 NoSQL 选项但还不了解其用例的 CloudFoundry 用户来说,是一个非常有价值的资源。例如,有很多关于 MongoDB 和 Redis 的好内容。
  4. Mark Thomas,Apache Tomcat 7 的发布经理兼工程师,在 TomcatExpert.com 网站上撰写了一篇关于 Apache Tomcat 7 会话固定保护安全特性的文章。如果您像大多数开发人员一样,使用 Tomcat(或经过加固、运维友好的衍生版本,如 SpringSource 的 tcServer)作为 Java(通常是 Spring)应用程序的生产服务器,那么了解最新的 Tomcat 安全特性非常重要。此外,Tomcat 还捆绑在多个应用服务器中。无论如何,了解 Tomcat 行业领先的特性只会对您有所帮助。
  5. Costin Leau 宣布了 Spring GemFire 1.0.1 版本,该版本包含错误修复并提高了稳定性。
  6. <li>Just a reminder to our European community members, the S2G Forum Series will be held in <a href="http://www.springsource.com/events/s2gforum-5-26-2011-amsterdam">Amsterdam (May 26th)</a> and <a href="http://www.springsource.com/events/s2gforum-5-31-2011-london">London (May 31st)</a>. There will be tons of great sessions about Spring, Groovy and Grails as well as talks focused specifically on CloudFoundry, Tomcat and Gemfire so be sure to <a href…

Redis、Spring Data 和 Cloud Foundry 入门

工程 | Costin Leau | 2011年4月27日 | ...

NoSQL 解决方案之所以受欢迎,驱动因素之一是其在(尤其)高负载下的性能。由于其数据模型,键值存储处于领先地位,提供了轻量且灵活的数据处理方式。在这篇文章中,我将快速展示如何使用 Spring (Spring Redis) 通过 Spring Data 示例 (RetwisJ) 与键值存储 (Redis) 配合工作,并将应用程序部署到云端(通过 Cloud Foundry)与世界分享。我甚至更进一步,尝试使用 Windows 作为部署平台。

Redis

在键值存储中,一个流行的选择Redis,这是一个开源的、速度惊人的数据库,用 ANSI C 编写,服务器端大小约为 200 KB(是的,字节),整个软件包(包括命令行客户端和一些管理工具)约为 400 KB,并且几乎可以在所有主要平台上使用,这也使其成为本示例的选择。请注意,除非想在本地运行示例,否则不需要 Redis 实例。如果需要,对于 Windows 用户(例如作者本人),我(并推荐)使用这个预打包版本,提供 32 位和 64 位两种。

Spring 与 NoSQL

如果您正在 Java 环境中使用 NoSQL,请看看 Spring Data:它本身不是一个项目,而是一个项目集合,涵盖了各种新的数据访问技术,例如非关系型数据库(如 Redis 或 MongoDB)、MapReduce 框架(例如 Hadoop)以及用于 Java 应用程序的云端数据服务。Spring Data 推崇经典的 Spring 价值观,通过消除 API 噪声、样板代码和资源管理来提高开发人员的生产力,并提供一致的编程模型。它构建在现有的 Spring 特性和项目之上(例如控制反转、生命周期管理、类型转换、可移植数据访问异常、缓存等),因此可以在应用程序中立即添加它,只需付出极少的努力。当然,就像其他 Spring 项目一样,它是开源的,并在 Apache 许可下可用。

Spring Data Redis

对于 Redis,Spring Data 通过 Spring Data Redis 项目(或简称 Spring Redis 项目)提供专门支持。它提供从可移植的 Redis 客户端抽象(只需一行配置即可切换不同的 Redis 客户端,如 Jedis、JRedis 或 RJC)到 Redis 支持的原子集合或计数器或发布/订阅支持等低级和高级特性。项目参考文档详细涵盖了这些主题。

RetwisJ,YATC - 又一个 Twitter 克隆

RetwisJ 源代码,包括此博客中的代码,可以在 Spring Data Key Value 示例项目中下载。此外,文档可在此处获取:此处

RetwisJ 可以视为 Redis Retwis 示例的 Java 移植:一个简单的 Twitter 克隆,展示了如何使用 Redis 灵活的数据模型(例如集合交集……)来替代传统关系型数据库中开销较大的联接。

Spring Social 1.0.0.M3 发布

发布 | Craig Walls | 2011年4月27日 | ...

尊敬的 Spring 社区:

我们很高兴地宣布,Spring Social 项目的第三个里程碑版本现已可用!

Spring Social 项目允许您将软件即服务 (SaaS) 提供商(如 Facebook 和 Twitter)公开的 API 集成到您的应用程序中。

这对我们来说是一个重要版本。1.0.0.M3 版本的一些最激动人心的亮点包括:

  • 最完整的 Facebook Graph API 的 Java 绑定之一,包括用于处理用户、朋友、动态、用户兴趣和点赞、事件、邀请、相册、照片、视频、群组以及 Facebook Places 签到的操作。
  • 极大地扩展了 Twitter REST API 的 Java 绑定,包括用于处理时间线、用户、已保存搜索、趋势、列表、收藏、私信、朋友和关注者的操作。
  • 新增了一个提供商登录控制器,允许用户使用其 SaaS 提供商帐户(如 Facebook 或 Twitter 帐户)登录应用程序。
  • 增强了可扩展性,其中包括如何扩展 Spring Social 以添加对新服务提供商的支持的详细说明。

特别值得一提的是,此版本中的许多增强功能都由社区反馈驱动。很高兴看到人们已经在扩展 Spring Social 以支持新的 SaaS 提供商。例如,Matt Wright 一直在致力于编写一个针对 Instagram APIJava 绑定

我们致力于与社区合作,创建高质量 API 绑定的生态系统。如果您正在将 SaaS API 集成到您的应用程序中,请考虑将您的 API 绑定贡献给 Spring Social 项目。请参阅我们的扩展 Spring Social 指南,并在我们的论坛上与开发团队讨论。

有关此版本的更多信息,请参阅更新日志参考指南

要获取该软件,请下载发布分发包,或者简单地将maven 依赖添加到您的项目中。要查看实际功能,请查看示例应用程序(已更新至 1.0.0.M3)
git clone git://github.com/SpringSource/spring-social-samples.git

Spring GemFire 1.0.1 for Java 和 .NET 发布

发布 | Costin Leau | 2011年4月26日 | ...

尊敬的 Spring 社区:

我很高兴宣布 Spring GemFire 项目的 1.0.1 GA 版本现已同时面向 Java 和 .NET 发布!Spring GemFire 项目旨在使使用 GemFire 作为分布式数据管理平台构建 Spring 驱动的高可伸缩应用程序更加容易。

立即下载:Spring GemFire for Java | Spring GemFire for .NET

JavaJavaDocs | 参考文档 | 更新日志 .NET : ApiDocs  | 参考文档 | 更新日志

Spring GemFire 项目旨在使使用 GemFire 作为分布式数据管理平台构建 Spring 驱动的高可伸缩应用程序更加容易……

高级 Spring Data JPA - 规范和 Querydsl

工程 | Oliver Drotbohm | 2011年4月26日 | ...

在我的上一篇博客文章中,我介绍了 Spring Data JPA 的基本功能集。在这篇文章中,我想深入探讨更多特性以及它们如何帮助您进一步简化数据访问层的实现。Spring Data 仓库抽象由基于接口的编程模型、一些工厂类和一个 Spring 命名空间组成,可以轻松配置基础设施。典型的仓库接口看起来像这样

public interface CustomerRepository extends JpaRepository<Customer, Long> {

  Customer findByEmailAddress(String emailAddress);

  List<Customer…

深入了解 Grails 和 Cloud Foundry

工程 | Peter Ledbrook | 2011年4月21日 | ...

我之前的文章中,我展示了使用相应的插件将 Grails 应用程序部署到 Cloud Foundry 有多容易。希望这能激起您的兴趣,并准备好查看一个更复杂的 Grails 应用程序,它展示了 GORM 插件的强大功能并扩展了 Cloud Foundry 服务。如果您还没有 Cloud Foundry 帐户,请耐心等待。公告的反应非常热烈,因此需要一些时间来处理积压的请求。

GrailsTwitter

简单的 Twitter 克隆几乎已成为 Grails 示例应用程序的标准,因此为 Cloud Foundry 开发另一个版本也就不足为奇了。您可以在 GitHub 上找到代码以及其他 Cloud Foundry 示例,您还可以测试 应用程序的一个实例……

使用 RabbitMQ 和 Riak 进行数据事件处理

工程 | Jon Brisbin | 2011年4月21日 | ...

随着新应用程序利用消息代理(如 RabbitMQ)和云规模数据存储(如 Riak)的可伸缩性优势,两者不可避免地会成为亲密的朋友(那种会亲自交谈而不是只通过 Facebook 联系的朋友)。

我们现在编写的许多应用程序都在同一个应用程序中包含这两个功能。我们经常希望根据消息的结果更新数据,或者根据更新的数据发送消息。两个促进 RabbitMQ 和 Riak 集成的新实用程序允许您……

本周 Spring 动态:2011年4月19日

工程 | Josh Long | 2011年4月20日 | ...

欢迎回到本周 Spring 动态。上周 Cloud Foundry 公告引起的巨大热情非同寻常,并且似乎还在不断增强!世界各地的人们涌入了 SpringSource 和 CloudFoundry 论坛、下载页面和源代码仓库。这是多么空前的活动!

SpringSource 近期推出的许多强大技术都为 Cloud Foundry 的发布奠定了基础,因此我邀请您回顾一下过去几个月发布的、在云和 Cloud Foundry 方面变得更加有趣的一些激动人心的内容:Spring GemfireSpring AMQPSpring 3.1 profilesSpring 3.1 缓存抽象Spring DataSpring Integration 对 NoSQL 的支持以及 Spring HadoopvFabric HypericvFabric RabbitMQvFabric GemFire。当然,对于所有这些技术,首选且最佳的工具和开发体验仍然是 SpringSource Tool SuiteSpring Roo

好的,接下来是本周回顾。精彩内容太多,时间太少!

  1. Christian Dupuis 刚刚写了一篇详细的博客,介绍了如何使用 STS 部署到 Cloud Foundry
  2.  <li><A href="http://www.springsource.org/node/3103">Spring Roo 1.1.3</a>, featuring 
     Cloud Foundry support, shell enhancements, and improved support for composite primary keys - among other things - has been released. 
    </li>
    
    	 <li> DZone has published a <a href="http://refcardz.dzone.com/refcardz/spring-roo-open-source-rapid?oid=hom38521">Spring Roo RefCard</a> by the Spring Roo team's <a href="http://www.twitter.com/schmidtstefan">Stefan Schmidt.</a> This RefCard's a fantastic way to get going quickly with Spring Roo. Spring Roo, it could be argued, is ideally suited to the RefCard…

订阅 Spring 邮件列表

通过 Spring 邮件列表保持联系

订阅

抢先一步

VMware 提供培训和认证,助您加速进步。

了解更多

获取支持

Tanzu Spring 在一个简单的订阅中提供对 OpenJDK™、Spring 和 Apache Tomcat® 的支持和二进制文件。

了解更多

即将举行的活动

查看 Spring 社区中所有即将举行的活动。

查看全部