本周 Spring - 2014年11月25日
天哪!您敢相信这么快就快到年底了?时间过得真快!对于美国的我们来说,这是感恩节周。这真是一个绝佳的时机,可以坐下来,找一篇不错的 Spring IO 指南 或博客来阅读,然后构建一些很棒的东西……哦,而且这是与家人和朋友共度时光,并反思我们感激的人和事物的理想时机。我相信我代表 Spring 团队和 Pivotal 的所有人说,我们很感激您——我们鼓舞人心的社区、用户和客户。
但如果你确实想读点东西……
天哪!您敢相信这么快就快到年底了?时间过得真快!对于美国的我们来说,这是感恩节周。这真是一个绝佳的时机,可以坐下来,找一篇不错的 Spring IO 指南 或博客来阅读,然后构建一些很棒的东西……哦,而且这是与家人和朋友共度时光,并反思我们感激的人和事物的理想时机。我相信我代表 Spring 团队和 Pivotal 的所有人说,我们很感激您——我们鼓舞人心的社区、用户和客户。
但如果你确实想读点东西……
Spring Cloud 1.0.0.M3 现已在 repo.spring.io 仓库中可用。以下所有项目都已发布 1.0.0.M3 版本:
Spring Cloud Config:集中式键值(或 YAML)配置管理。现在支持将配置服务器完全嵌入到另一个应用程序中。
Spring Cloud Netflix。对服务器组件的嵌入式支持也得到了改进。现在还能正确记录 Ribbon 启用的 Spring RestTemplate 中的负载均衡器统计信息。
Spring Cloud for Amazon Web Services。具有新的 Spring Boot 集成点,外部化 AWS 元数据配置。
Spring Cloud Security:以声明式风格实现超简单的 OAuth2。
Spring Cloud Bus:将框架级别的事件广播到 Spring Cloud 组件。这里的大新闻是,我们现在有一个基于 RabbitMQ 的聚合器用于 Hystrix 指标(基于 Turbine 2),因此您不必依赖于直接的 HTTP 访问所有服务实例。
…亲爱的Spring社区!
在 Spring Integration Java DSL 1.0 GA 发布公告之后,我想通过一个基于经典的 Cafe Demo 集成示例的逐行教程向你介绍 Spring Integration Java DSL。我们在此介绍了 Spring Boot 的支持、Spring Framework 的 Java 和注解配置、IntegrationFlow 功能,并向 Java 8 的 Lambda 支持致敬,正是它启发了 DSL 风格。当然,这一切都得到了 Spring Integration Core 项目的支持。
对于那些对 Java 8 还不感兴趣的人,我们提供了类似的无 Lambda 教程:Spring Integration Java DSL (Java 8 之前):逐行教程……
录制于 SpringOne2GX 2014。
演讲者:Cornelia Davis
幻灯片:http://www.slideshare.net/SpringCentral/running-your-spring-apps-in-the-cloud
Spring Trader 应用程序于 2012 年在 SpringOne 2GX 上首次亮相,它展示了一个演示了多个 Pivotal Application Fabric 组件协同工作的应用程序——tcServer、RabbitMQ、SQLFire 和 Gemfire。在本课程中,我们将采用该应用程序并进行(一些)修改(主要针对配置),使其在云中的相同组件上运行,特别是在 Cloud Foundry PaaS 上。我们将向您展示如何使用 Spring Cloud 项目来配置部署,如何利用云服务目录,如何实现跨站点脚本解决方案(以及原因),如何进行会话状态缓存,并讨论自动重构的(危险性)。如果您自带笔记本电脑,您将在课程结束时运行自己的应用程序实例。
!{iframe width="560" height="315" src="//www.youtube.com/embed/nuiNvI5HYkU" frameborder="0" allowfullscreen}{/iframe}录制于 SpringOne2GX 2014。
演讲者:Matt Stine
幻灯片:http://www.slideshare.net/SpringCentral/developing-microservices-for-paas-with-spring-and-cloud-foundry
Marc Andreessen 曾有一句名言:“软件正在吞噬世界。”这意味着什么?我们的理解是,历史上根深蒂固的领导者们正在被围绕软件核心构建的企业所颠覆。这些软件工厂的特点是:紧密的反馈循环、快速迭代、水平扩展、移动优先的用户体验、持续交付。这些因素共同推动了我们基础设施方法的改变,基础设施已经率先适应以满足这些需求,转向了云计算,以及像 Cloud Foundry 这样的平台即服务(PaaS)产品,它们将抽象级别提高到专注于应用程序和服务生态系统。然而,大多数应用程序的开发仍然像是生活在前一代的商业和基础设施中:单体应用程序。微服务——遵循“做好一件事”的 Unix 哲学的小型、松散耦合的应用程序——代表了支持快速、迭代开发、水平扩展、多语言客户端和持续交付的应用程序开发方面。它们还使我们能够扩展应用程序开发并消除对单一技术栈的长期承诺。虽然微服务很简单,但绝不轻松。最近有人说,“微服务并非免费午餐。”有趣的是,如果你看看通常对微服务表达的担忧,你会发现它们正是 PaaS 所要解决的挑战。因此,虽然微服务并不一定意味着云计算(反之亦然),但两者之间确实存在一种共生关系,每种方法都以某种方式弥补了另一种的局限性,就像极限编程的做法一样。本次会议将描述开发微服务的架构模式。
在此过程中,我们将了解如何利用 Spring Boot 和 Reactor 等技术为 Cloud Foundry 开发微服务。
!{iframe width="560" height="315" src="//www.youtube.com/embed/iMvCOEsSuAc" frameborder="0" allowfullscreen}{/iframe}录制于 SpringOne2GX 2014。
演讲者:Ben Hale @nebhale
幻灯片:http://www.slideshare.net/SpringCentral/creating-restful-hypermediabased-microservices-with-spring-boot
随着数据驱动应用程序的普及,提供数据的服务也日益增多。随着团队负责的服务越来越多,它们的设计和实现方式必须尽可能轻量级,这一点至关重要。本次课程将介绍如何将微服务设计为 RESTful API,并使用 Spring Boot 以最少的代码来实现它们。它将侧重于使用 REST 和 HATEOAS 进行 API 设计,并进行现场编码,从一条推文长度的实现一直到在云中运行的完整应用程序。
在此过程中,我们将了解如何利用 Spring Boot 和 Reactor 等技术为 Cloud Foundry 开发微服务。
!{iframe width="560" height="315" src="//www.youtube.com/embed/zbeMDM-zDNI" frameborder="0" allowfullscreen}{/iframe}演讲者:Josh Long (Pivotal) + Adam Koblentz (ZeroTurnaround)
幻灯片:https://speakerdeck.com/joshlong/bootiful-jrebel
Spring Boot 是 Pivotal 的 Spring 团队推出的新的约定优于配置的框架,它将 Spring 的灵活性与常规的、符合常识的默认值相结合,让应用程序开发不仅能飞速进展,而且令人愉悦!Spring Boot 在启动项目方面为您提供了巨大的优势,现在,通过添加 JRebel,我们将为您提供另一项增强。使用 JRebel,普通 Java 开发人员每年平均可以节省超过 1 个工作月的时间,因为他们可以使用 JRebel 跳过应用程序的重新构建、重启和重新部署。JRebel 6 将于 2014 年 11 月 4 日发布,并包含对 Spring Boot 的完整集成。加入 Spring 的 Josh Long 和 ZeroTurnaround 的 Adam Koblentz,了解如何将 Boot 与 JRebel 相结合,并在更少的时间内以更少的配置完成更多工作。
了解更多关于 Spring Boot 的信息:http://projects.spring.io/spring-boot
了解更多关于 JRebel 的信息:http://zeroturnaround.com/software/jrebel/display/
14 天免费 JRebel 试用下载:https://zeroturnaround.com/software/jrebel/trial/
!{iframe width="420" height="315" src="//www.youtube.com/embed/N5FHiONGOsg" frameborder="0" allowfullscreen}{/iframe}在这篇博客中,我想为大家介绍并演示 Spring Boot 1.2 中众多的新特性,它们将使那些来自 Java EE 生态圈或者在其基础上构建应用的用户的生活更加轻松。
值得一提的是,当然,Spring 之前就已经支持了许多这样的功能,但现在有了 Spring Boot 1.2,一切都变得无比简单!
首先,这里有一个示例程序,后面附有注释。
package demo;
import org.glassfish.jersey.jackson.JacksonFeature;
import org.glassfish.jersey.server.ResourceConfig;
import org.springframework.boot.SpringApplication;
import org.springframework.boot…我很高兴地宣布 Spring Boot 1.2.0 的第二个候选版本现已在Spring 里程碑仓库中可用。这主要是一个错误修复版本,尽管我们设法挤进了一个精彩的社区贡献,该贡献增加了对 Undertow 作为嵌入式 Servlet 容器的支持。
有关更改的完整列表以及升级说明,请参阅 WIKI 上的Spring Boot 1.2 发布说明。参考文档也已更新,以涵盖新功能。
一如既往,请使用项目问题跟踪器报告任何问题。