Spring - 云中的Javadownload3.vmware.com/elq/pdf/vforum_cn_2011/PDF/Track 6...•Spring...

25
1 © 2010 VMware Inc. All rights reserved 李钢 曾毅 VMware软件工程师 20111026Spring - 云中的Java

Transcript of Spring - 云中的Javadownload3.vmware.com/elq/pdf/vforum_cn_2011/PDF/Track 6...•Spring...

1

© 2010 VMware Inc. All rights reserved

李钢 曾毅 VMware软件工程师

2011年10月26日

Spring - 云中的Java

2

提纲

开发云应用的基本要素

VMware对Java云应用的支持

• 应用框架 - Spring

• 开发部署工具 - STS

• PaaS平台 – vFabric, Cloud Foundry

3

高性能 PaaS 平台

开发云应用的基本要素

支持简单灵活的应用框架

便捷的开发部署工具

强大的PaaS平台

• 轻便灵活的应用服务器

• 全局数据管理

• 云消息传递

• 动态负载均衡

• 性能监控管理

• 策略驱动的自动化

动态负载均衡

性能管理

策略驱动的自动化

灵活的应用服务器

全局数据管理

云消息传递

4

提纲

开发云应用的基本要素

VMware对Java云应用的支持

• 应用框架 - Spring

• 开发部署工具 - STS

• PaaS平台 – vFabric, Cloud Foundry

5

云 计 算 时 代 的 应 用 程 序 基 础 构 架

虚 拟 数 据 中 心云 计 算 基 础 构 架 和 管 理

VMware对云应用提供了高效完备的支持

开发部署工具 STS Roo Groovy&Grails

丰富的Web 集成 批处理 数据访问 社交云 云APIs应用框架

PaaS

6

Spring应用框架

目标

• 简化开发,提高开发效率

• 不断采用新技术

• 提高可移植性

核心

• IoC容器

• AOP

7

Spring应用框架

Web 应用支持

• Spring MVC, Spring Web Flow

• Spring Flex

数据访问

• 对横切问题提供基于annotation的支持: cache, transaction.

• 为多种底层持久化技术提供一致的API支持

• O/R mapping: JPA, JDO, Hibernate

• SQL: iBatis, Spring JDBC支持

• NoSQL: MongoDB, Redis, Neo4J

轻量级的集成方案

• Spring integration

• Spring batch

• Spring web service

8

Spring应用框架

Spring Mobile

Spring Social

• 支持Spring与其它SaaS provider的通信, 如 Facebook 和Twitter.

Spring is Cloud Ready!

• Spring 应用可以可靠并一致地运行在多种PaaS平台上, 如Cloud Foundry, vFabric, Amazon Web Services BeanStalk, 以及Google的App Engine

9

市场选择了Spring

Top2000企业中过半采用Spring

VMware 云开发的标准应用框架

50%以上的Java开发者采用Spring作为应用框架

10

VMware积极推动Spring

“通过 VMware,我们的开发人员可

以方便地在云计算环境中创建Spring Java 应用程序.”

2,500,000

Spring 开发者

vFabric

“我们与 VMware 建立了合作伙伴关系,正在将 Spring 引入 Force.com.”

11

开发部署工具

最佳云应用开发工具 - SpringSource Tool Suite

基于Eclipse

提供各种Spring插件和云应用插件

支持Spring ROO: java应用的下一代快速开发工具

支持Groovy & Grails

与vFabric和Cloud Foundry集成

支持各种主流Java EE 应用服务器

支持基于OSGI的企业应用开发

12

提纲

开发云应用的基本要素

VMware对Java云应用的支持

• 应用框架

• 开发部署工具

• PaaS平台

13

VMware PaaS平台

目标

• 支持流行的应用框架

• 强大的集成监控和管理

• 完备的系统服务

两个Paas平台

• 业界第一个开源平台 Cloud Foundry

• 商业平台 vFabric

14

Cloud Foundry

15

vFabric

构建和运行Java云应用的最好平台

• 与vCenter无缝集成,可以充分利用虚拟化架构的优势

• 满足现代应用的开发和发布需求

主要组件

• ERS

• tc Server

• GemFire

• RabbitMQ

• Hyperic

16

vFabric组件 - ERS

Web服务器/负载均衡

负载均衡

企业级性能,快捷部署

灵活扩展

安全管理优化

17

vFabric组件 - 应用服务器tc Server

轻量化,虚拟化环境支持

100%兼容Tomcat

内建Spring insight

18

基于内存的分布式数据管理平台

将数据移到中间层

基于内存的数据网格•分布式

•数据分区节点间复制

•跨节点的资源池

数据感知•在节点间移动数据

•平衡负载,达到最佳性能

持续查询与事件通知•数据更新将会广播到多个活跃节点

vFabric组件 - GemFire

GemFire

文件系统 数据库 其他数据系统

缓存活跃数据

持久化休眠数据

app数据

19

Spring Gemfire

该工程使用GemFire作为分布式数据管理平台以构建Spring风格的数据应用

通过依赖注入使用各种GemFire组件 (如 Cache, Region, Interest等)

将底层的异常包装成Spring风格的 DataAccess 异常体系

为底层API访问提供简单的模板和回调

支持事务管理

为GemFire被管理对象提供Spring支持

20

vFabric组件 - 企业级消息中间件 RabbitMQ

在云环境中为分布式应用提供可靠的系统间消息服务

通过各种plug-ins, 可以满足各种用例和应用环境

消除对私有商业消息技术的依赖

开放的标准协议确保可移植性和交互性

高性能

AMQP、SMTP、XMPP、

STOMP、… 点到点和发布/订阅云规模消息总线RabbitMQ

tc ServerHyperic /

Spring insight

其他云 设备 其他云应用

您的云应用

21

Spring AMQP

AMQP是一个用于在应用间传递消息的开放标准

Spring-AMQP 工程允许用户使用标准的AMQP协议来访问RabbitMQ

22

vFabric组件 - Hyperic

云应用监控与管理的最佳工具

提供从云设备、云平台到云应用三层控制

监控自定义应用程序,显示应用程序和服务的详细信息

可扩展性:跨越物理、虚拟和云

可定制的控制板、报告和分析

自动发现

高级警报

23

vFabric vs Cloud Foundry

竞争还是互补?

24

结论

作为目前最流行以及最强大的Java应用框架, Spring是开发Java云应用的首选

VMware为支持基于Java的云应用提供了全方位支持

• 推荐使用Spring应用框架

• 提供了最佳云应用开发工具 - SpringSource Tool Suite

• 两个PaaS平台: Cloud Foundry 以及 vFabric

© 2011 VMware Inc. All rights reserved

Thank You!