SlideShare a Scribd company logo
1 of 44
Download to read offline
Cloud Foundry for Spring Developers

Gunnar Hillert, Member of Technical Staff, Spring Integration




                                                                © 2011 SpringSource, A division of VMware. All rights reserved
Agenda

§  Overview
§  Deployment
§  Debugging
§  Profiling
§  Agnostic War Files
§  Modular Cloud Apps




                         2
What is Cloud Foundry?




                         3
4
Three Layers of Cloud Computing




§  SaaS
  •  Software as a Service


§  PaaS
  •  Platform as a Service


§  IaaS
  •  Infrastructure as a Service




                                   5
Choice of clouds




                                        .js



       Data
       Services
                                                        Private	
  	
  
                                                        Clouds	
  	
  
                                                                                 …	
  
                  Msg
                  Services
                                                Public	
  
                                                Clouds	
  
                                                                          .COM
                              Other     Micro	
  
                             Services
                                        Clouds	
  



                                                                                         6
Broad Support for Languages/Application Frameworks

§  JVM
  •  Spring, Grails, Roo, Lift, plain Java
§  Ruby
  •  Rails, Sinatra
§  Node.js
§  Community contributions
  •  Erlang, Python, PHP




                                                     7
JVM Frameworks

§  Unit of deployment: Java WAR files
  •  Can run any standard War file
  •  Servlet 2.5
  •  Don’t assume particular container
§  Spring, Grails, Lift framework
  •  Auto-reconfiguration goodies




                                         8
Services

§  Relational database
  •  Postgres
  •  MySQL
§  Key-value store
  •  Redis
§  Document store
  •  MongoDB
§  Messaging
  •  RabbitMQ




                          9
Open Source

§  Source code available under Apache License v2.0
 •  https://github.com/cloudfoundry/
•  VCAP
 •  https://github.com/cloudfoundry/vcap
•  Project Website
 •  http://cloudfoundry.org/




                                                      10
Logical View




               11
Architecture

     Architecture




           25
 Thursday, October 27, 11   12
Deployment Options




                     13
Deployment Options

§  VMC
  •  Ruby based command line tool
§  SpringSource Tool Suite (STS)
§  Grails
§  Spring Roo Cloud Foundry Addon
§  Cloud Foundry Maven Plugin
§  vcap-java-client
  •  Used by STS and Cloud Foundry Maven Plugin




                                                  14
DEMO
Deployment Options




                     15
Debugging




            16
Debugging

§  Start Cloud Foundry applications in debug mode
§  Set Break Points for Micro Cloud Foundry
§  STS 2.8.1 supports it
§  Coming with Micro Cloud Foundry 1.1.1 (Currently RC)




                                                           17
Caldecott

§  TCP over HTTP tunnel
§  Local client
§  Remote server




                           18
Caldecott - Multiple Services and Sessions

§  One vcc server instance
 •  Manages multiple tunnels
§  One vcc client instance per service
 •  Multiple local apps may share a
   client if they connect to the same
   remote server:port
 •  Each listens on different local port




                                             19
DEMO
Debugging




            20
Profiling




            21
Profiling – Spring Insight

§  Providing real-time application runtime performance and behavior
 information for Java Spring applications
§  Beta available for CloudFoundry.com
§  Signup at: insight.cloudfoundry.com
§  Write your own plugins
 •  https://github.com/SpringSource/spring-insight-plugins




                                                                       22
DEMO
Spring Insight for Cloud Foundry




                                   23
Agnostic War Files




                     24
Agnostic War Files – Toolbox

§  Auto Reconfiguration
§  Cloud Namespace
§  Spring 3.1 Profiles




                               25
Agnostic War Files – Auto Reconfiguration

§  Move existing Applications easily to Cloud Foundry
§  Makes 2 modifications at deploy time:
 •  Adds additional Jar
 •  Updates web.xml
§  BeanFactoryPostProcessor examines the application context before
 creating beans
§  Swaps existing beans of matching types




                                                                   26
Agnostic War Files – Auto Reconfiguration




        Service Type                 Replaced Bean Type

           MySQL       javax.sql.DataSource

          Postgres     javax.sql.DataSource

           Redis       org.sf.data.redis.connection.RedisConnectionFactory

          MongoDB      org.sf.data.document.mongodb.MongoDbFactory

          RabbitMQ     org.sf.amqp.rabbit.connection.ConnectionFactory




                                                                             27
Agnostic War Files – Auto Reconfiguration

§  Limitations
  •  one service of a given service type
  •  one bean of the matching type
  •  If application does not follow limits, auto-reconfiguration mechanism will not take
   place




                                                                                      28
Agnostic War Files – Cloud Namespace

§  Explicit configuration of Cloud Foundry Services
§  Finer grained control of configuration parameters
§  Necessary when configuring multiple services of same type




                                                                29
Agnostic War Files – Cloud Namespace

§  Setup – Maven
<dependency>
  <groupId>org.cloudfoundry</groupId>
  <artifactId>cloudfoundry-runtime</artifactId>
  <version>0.8.1</version>
</dependency>


§  Setup – Spring Application Context

<?xml version="1.0" encoding="UTF-8"?>
<beans …
 xmlns:cloud="http://schema.cloudfoundry.org/spring"
 xsi:schemaLocation=“http://schema.cloudfoundry.org/spring
     http://schema.cloudfoundry.org/spring/cloudfoundry-spring-0.8.xsd">


                                                                           30
Available Namespace Elements

§  Define and use a DataSource

 <cloud:data-source id="dataSource" />

 <bean id="jdbcTemplate”
       class="org.springframework.jdbc.core.JdbcTemplate">
  <property name="dataSource" ref="dataSource" />
 </bean>


§  Optional Subelements
 •  <cloud:connection>
 •  <cloud:pool>




                                                             31
Available Namespace Elements

§  MongoDB Support
 •  <cloud:mongo-db-factory>

§  Redis Support
 •  <cloud:redis-connection-factory>

§  RabbitMQ
 •  <cloud:rabbit-connection-factory>



§  Autocreate Services
 •  <cloud:service-scan>




                                        32
Agnostic War Files – Spring Profiles

§  Spring 3.1 adds new support for environments
§  Deploy to Cloud Foundry and Stand-alone Containers

<bean id="mongoTemplate"
      class="org.springframework.data.mongodb.core.MongoTemplate">
  <constructor-arg ref="mongoDbFactory" />
</bean>

<beans profile="default">
  <mongo:db-factory id="mongoDbFactory" dbname="pwdtest"
                    host="127.0.0.1" port="27017"
                    username="test_user" password=”s3cr3t" />
</beans>

<beans profile="cloud">
  <cloud:mongo-db-factory id="mongoDbFactory" />
</beans>
                                                                     33
Modular Cloud Apps




                     34
Monolithic Enterprise Application




                                    35
Benefits of App-level Modularity

§  Efficient Elasticity
§  Fault Isolation
§  Dynamic Configuration
§  “always-on”/Rolling Upgrades




                                   36
Modularized Enterprise Application




                                     37
DEMO
Spring Integration




                     38
Resources




            39
Resources

§  Cloud Foundry on Ubuntu
  http://blog.dustinkirkland.com/2011/08/howto-install-cloudfoundry-server-
  paas.html


§  VMC
  http://support.cloudfoundry.com/entries/20012337-getting-started-guide-
  command-line-vmc-users

  http://cloudfoundry.zendesk.com/entries/20012462-getting-started-guide-sts-users

  http://blog.dustinkirkland.com/2011/07/getting-started-with-cloudfoundry.html

  http://blog.cloudfoundry.com/post/9037486110/vmc-everywhere




                                                                                  40
Resources

§  Cloud Foundry Maven Plugin
  http://blog.springsource.com/2011/09/22/rapid-cloud-foundry-deployments-with-
  maven/

  https://github.com/cloudfoundry/vcap-java-client/tree/master/cloudfoundry-maven-
  plugin (Sources + Reference Documentation)


§  Caldecott
  http://blog.cloudfoundry.com/post/12928974099/now-you-can-tunnel-into-any-
  cloud-foundry-data-service


§  Cloud Foundry Samples
  https://github.com/SpringSource/cloudfoundry-samples




                                                                                  41
Resources

§  Spring Auto Reconfiguration
  http://blog.springsource.org/2011/11/04/using-cloud-foundry-services-with-spring-
  part-2-auto-reconfiguration/


§  Spring Insight for Cloud Foundry
  http://insight.cloudfoundry.com/


§  Cloud Foundry Namespace
  http://blog.springsource.org/2011/11/09/using-cloud-foundry-services-with-spring-
  applications-part-3-the-cloud-namespace/


§  Spring Profiles
  http://blog.springsource.org/2011/11/10/using-cloud-foundry-services-with-spring-
  part-4-%E2%80%93-spring-profiles/


                                                                                  42
Resources

§  Spring Integration
  http://www.springsource.org/spring-integration
  https://github.com/SpringSource/spring-integration


§  Samples
  https://github.com/SpringSource/cloudfoundry-samples
  https://github.com/markfisher/springone-wgrus




                                                         43
THANK YOU!
     Sign up for a free account at: http://www.cloudfoundry.com/




Email:      ghillert@vmware.com
Twitter:    https://twitter.com/ghillert
Blog:       http://blog.hillert.com

                                                                   44

More Related Content

What's hot

Staying Ahead of the Curve with Spring and Cassandra 4 (SpringOne 2020)
Staying Ahead of the Curve with Spring and Cassandra 4 (SpringOne 2020)Staying Ahead of the Curve with Spring and Cassandra 4 (SpringOne 2020)
Staying Ahead of the Curve with Spring and Cassandra 4 (SpringOne 2020)Alexandre Dutra
 
Building ‘Bootiful’ microservices cloud
Building ‘Bootiful’ microservices cloudBuilding ‘Bootiful’ microservices cloud
Building ‘Bootiful’ microservices cloudIdan Fridman
 
Intro to spring cloud &microservices by Eugene Hanikblum
Intro to spring cloud &microservices by Eugene HanikblumIntro to spring cloud &microservices by Eugene Hanikblum
Intro to spring cloud &microservices by Eugene HanikblumEugene Hanikblum
 
Game of Streams: How to Tame and Get the Most from Your Messaging Platforms
Game of Streams: How to Tame and Get the Most from Your Messaging PlatformsGame of Streams: How to Tame and Get the Most from Your Messaging Platforms
Game of Streams: How to Tame and Get the Most from Your Messaging PlatformsVMware Tanzu
 
Kubernetes - Sailing a Sea of Containers
Kubernetes - Sailing a Sea of ContainersKubernetes - Sailing a Sea of Containers
Kubernetes - Sailing a Sea of ContainersKel Cecil
 
Tech Talk: DevOps at LeanIX @ Startup Camp Berlin
Tech Talk: DevOps at LeanIX @ Startup Camp BerlinTech Talk: DevOps at LeanIX @ Startup Camp Berlin
Tech Talk: DevOps at LeanIX @ Startup Camp BerlinLeanIX GmbH
 
Luca Relandini - Microservices and containers networking: Contiv, deep dive a...
Luca Relandini - Microservices and containers networking: Contiv, deep dive a...Luca Relandini - Microservices and containers networking: Contiv, deep dive a...
Luca Relandini - Microservices and containers networking: Contiv, deep dive a...Codemotion
 
2012 CloudStack Design Camp in Taiwan--- CloudStack Overview-2
2012 CloudStack Design Camp in Taiwan--- CloudStack Overview-22012 CloudStack Design Camp in Taiwan--- CloudStack Overview-2
2012 CloudStack Design Camp in Taiwan--- CloudStack Overview-2tcloudcomputing-tw
 
Cloud Foundry Open Tour India 2012 , Keynote
Cloud Foundry Open Tour India 2012 , KeynoteCloud Foundry Open Tour India 2012 , Keynote
Cloud Foundry Open Tour India 2012 , Keynoterajdeep
 
Refactor your Java EE application using Microservices and Containers - Arun G...
Refactor your Java EE application using Microservices and Containers - Arun G...Refactor your Java EE application using Microservices and Containers - Arun G...
Refactor your Java EE application using Microservices and Containers - Arun G...Codemotion
 
Come sta la nostra applicazione? Un viaggio alla scoperta degli Health Check ...
Come sta la nostra applicazione? Un viaggio alla scoperta degli Health Check ...Come sta la nostra applicazione? Un viaggio alla scoperta degli Health Check ...
Come sta la nostra applicazione? Un viaggio alla scoperta degli Health Check ...Andrea Dottor
 
Introduction to WebMvc.fn
Introduction to WebMvc.fnIntroduction to WebMvc.fn
Introduction to WebMvc.fnVMware Tanzu
 
Security model for a remote company
Security model for a remote companySecurity model for a remote company
Security model for a remote companyPierre Mavro
 
A Series of Fortunate Events: Building an Operator in Java
A Series of Fortunate Events: Building an Operator in JavaA Series of Fortunate Events: Building an Operator in Java
A Series of Fortunate Events: Building an Operator in JavaVMware Tanzu
 
DCEU 18: Docker Enterprise Platform and Architecture
DCEU 18: Docker Enterprise Platform and ArchitectureDCEU 18: Docker Enterprise Platform and Architecture
DCEU 18: Docker Enterprise Platform and ArchitectureDocker, Inc.
 
Spring Boot on Kubernetes/OpenShift
Spring Boot on Kubernetes/OpenShiftSpring Boot on Kubernetes/OpenShift
Spring Boot on Kubernetes/OpenShiftKamesh Sampath
 
Ultimate Guide to Microservice Architecture on Kubernetes
Ultimate Guide to Microservice Architecture on KubernetesUltimate Guide to Microservice Architecture on Kubernetes
Ultimate Guide to Microservice Architecture on Kuberneteskloia
 
Session 4 - News from ACS Community
Session 4 - News from ACS CommunitySession 4 - News from ACS Community
Session 4 - News from ACS Communitytcloudcomputing-tw
 
If Hemingway Wrote JavaDocs
If Hemingway Wrote JavaDocsIf Hemingway Wrote JavaDocs
If Hemingway Wrote JavaDocsVMware Tanzu
 

What's hot (20)

Staying Ahead of the Curve with Spring and Cassandra 4 (SpringOne 2020)
Staying Ahead of the Curve with Spring and Cassandra 4 (SpringOne 2020)Staying Ahead of the Curve with Spring and Cassandra 4 (SpringOne 2020)
Staying Ahead of the Curve with Spring and Cassandra 4 (SpringOne 2020)
 
Building ‘Bootiful’ microservices cloud
Building ‘Bootiful’ microservices cloudBuilding ‘Bootiful’ microservices cloud
Building ‘Bootiful’ microservices cloud
 
Intro to spring cloud &microservices by Eugene Hanikblum
Intro to spring cloud &microservices by Eugene HanikblumIntro to spring cloud &microservices by Eugene Hanikblum
Intro to spring cloud &microservices by Eugene Hanikblum
 
Game of Streams: How to Tame and Get the Most from Your Messaging Platforms
Game of Streams: How to Tame and Get the Most from Your Messaging PlatformsGame of Streams: How to Tame and Get the Most from Your Messaging Platforms
Game of Streams: How to Tame and Get the Most from Your Messaging Platforms
 
Kubernetes - Sailing a Sea of Containers
Kubernetes - Sailing a Sea of ContainersKubernetes - Sailing a Sea of Containers
Kubernetes - Sailing a Sea of Containers
 
Tech Talk: DevOps at LeanIX @ Startup Camp Berlin
Tech Talk: DevOps at LeanIX @ Startup Camp BerlinTech Talk: DevOps at LeanIX @ Startup Camp Berlin
Tech Talk: DevOps at LeanIX @ Startup Camp Berlin
 
Luca Relandini - Microservices and containers networking: Contiv, deep dive a...
Luca Relandini - Microservices and containers networking: Contiv, deep dive a...Luca Relandini - Microservices and containers networking: Contiv, deep dive a...
Luca Relandini - Microservices and containers networking: Contiv, deep dive a...
 
2012 CloudStack Design Camp in Taiwan--- CloudStack Overview-2
2012 CloudStack Design Camp in Taiwan--- CloudStack Overview-22012 CloudStack Design Camp in Taiwan--- CloudStack Overview-2
2012 CloudStack Design Camp in Taiwan--- CloudStack Overview-2
 
Cloud Foundry Open Tour India 2012 , Keynote
Cloud Foundry Open Tour India 2012 , KeynoteCloud Foundry Open Tour India 2012 , Keynote
Cloud Foundry Open Tour India 2012 , Keynote
 
Refactor your Java EE application using Microservices and Containers - Arun G...
Refactor your Java EE application using Microservices and Containers - Arun G...Refactor your Java EE application using Microservices and Containers - Arun G...
Refactor your Java EE application using Microservices and Containers - Arun G...
 
Come sta la nostra applicazione? Un viaggio alla scoperta degli Health Check ...
Come sta la nostra applicazione? Un viaggio alla scoperta degli Health Check ...Come sta la nostra applicazione? Un viaggio alla scoperta degli Health Check ...
Come sta la nostra applicazione? Un viaggio alla scoperta degli Health Check ...
 
Introduction to WebMvc.fn
Introduction to WebMvc.fnIntroduction to WebMvc.fn
Introduction to WebMvc.fn
 
Security model for a remote company
Security model for a remote companySecurity model for a remote company
Security model for a remote company
 
A Series of Fortunate Events: Building an Operator in Java
A Series of Fortunate Events: Building an Operator in JavaA Series of Fortunate Events: Building an Operator in Java
A Series of Fortunate Events: Building an Operator in Java
 
DCEU 18: Docker Enterprise Platform and Architecture
DCEU 18: Docker Enterprise Platform and ArchitectureDCEU 18: Docker Enterprise Platform and Architecture
DCEU 18: Docker Enterprise Platform and Architecture
 
Spring Boot on Kubernetes/OpenShift
Spring Boot on Kubernetes/OpenShiftSpring Boot on Kubernetes/OpenShift
Spring Boot on Kubernetes/OpenShift
 
Ultimate Guide to Microservice Architecture on Kubernetes
Ultimate Guide to Microservice Architecture on KubernetesUltimate Guide to Microservice Architecture on Kubernetes
Ultimate Guide to Microservice Architecture on Kubernetes
 
Springboot Microservices
Springboot MicroservicesSpringboot Microservices
Springboot Microservices
 
Session 4 - News from ACS Community
Session 4 - News from ACS CommunitySession 4 - News from ACS Community
Session 4 - News from ACS Community
 
If Hemingway Wrote JavaDocs
If Hemingway Wrote JavaDocsIf Hemingway Wrote JavaDocs
If Hemingway Wrote JavaDocs
 

Viewers also liked

Cloud Foundry Technical Overview
Cloud Foundry Technical OverviewCloud Foundry Technical Overview
Cloud Foundry Technical Overviewcornelia davis
 
Cloudfoundry architecture
Cloudfoundry architectureCloudfoundry architecture
Cloudfoundry architectureRamnivas Laddad
 
Bluemix IoT Cloud Foundry Meetup slides
Bluemix IoT Cloud Foundry Meetup slidesBluemix IoT Cloud Foundry Meetup slides
Bluemix IoT Cloud Foundry Meetup slidesValerie Lampkin
 
Devoxx 2014 presentation
Devoxx 2014 presentationDevoxx 2014 presentation
Devoxx 2014 presentationEric Cattoir
 
Cloud Foundry Bootcamp
Cloud Foundry BootcampCloud Foundry Bootcamp
Cloud Foundry BootcampAndy Piper
 
Cloud Foundry Open Tour Beijing: Becoming a Node.js Ninja on
 Cloud Foundry
Cloud Foundry Open Tour Beijing: Becoming a Node.js Ninja on
 Cloud FoundryCloud Foundry Open Tour Beijing: Becoming a Node.js Ninja on
 Cloud Foundry
Cloud Foundry Open Tour Beijing: Becoming a Node.js Ninja on
 Cloud FoundryPatrick Chanezon
 
Autoscaling Distributed System with BOSH (Cloud Foundry Summit 2014)
Autoscaling Distributed System with BOSH (Cloud Foundry Summit 2014)Autoscaling Distributed System with BOSH (Cloud Foundry Summit 2014)
Autoscaling Distributed System with BOSH (Cloud Foundry Summit 2014)VMware Tanzu
 
Cloud Foundry Command Line
Cloud Foundry Command LineCloud Foundry Command Line
Cloud Foundry Command LineJulia R Nash
 
Cloud Foundry Bootcamp
Cloud Foundry BootcampCloud Foundry Bootcamp
Cloud Foundry BootcampJoshua Long
 
Build Scalable Internet of Things Apps using Cloud Foundry, Bluemix & Cloudant
Build Scalable Internet of Things Apps using Cloud Foundry, Bluemix & CloudantBuild Scalable Internet of Things Apps using Cloud Foundry, Bluemix & Cloudant
Build Scalable Internet of Things Apps using Cloud Foundry, Bluemix & CloudantAnimesh Singh
 
10 分でわかる Cloud Foundry Summit 2016 報告
10 分でわかる Cloud Foundry Summit 2016 報告10 分でわかる Cloud Foundry Summit 2016 報告
10 分でわかる Cloud Foundry Summit 2016 報告Hiroaki_UKAJI
 
Cloud Foundry, the Open Platform As A Service
Cloud Foundry, the Open Platform As A ServiceCloud Foundry, the Open Platform As A Service
Cloud Foundry, the Open Platform As A ServicePatrick Chanezon
 
Spring and Cloud Foundry; a Marriage Made in Heaven
Spring and Cloud Foundry; a Marriage Made in HeavenSpring and Cloud Foundry; a Marriage Made in Heaven
Spring and Cloud Foundry; a Marriage Made in HeavenJoshua Long
 
What's New in Cloud Foundry
What's New in Cloud FoundryWhat's New in Cloud Foundry
What's New in Cloud FoundryJennifer Hickey
 
Introduction to Cloud Foundry #JJUG
Introduction to Cloud Foundry #JJUGIntroduction to Cloud Foundry #JJUG
Introduction to Cloud Foundry #JJUGToshiaki Maki
 
Deploying Microservices to Cloud Foundry
Deploying Microservices to Cloud FoundryDeploying Microservices to Cloud Foundry
Deploying Microservices to Cloud FoundryMatt Stine
 
Cloud foundry Docker Openstack - Leading Open Source Triumvirate
Cloud foundry Docker Openstack - Leading Open Source TriumvirateCloud foundry Docker Openstack - Leading Open Source Triumvirate
Cloud foundry Docker Openstack - Leading Open Source TriumvirateAnimesh Singh
 

Viewers also liked (20)

Cloud Foundry Technical Overview
Cloud Foundry Technical OverviewCloud Foundry Technical Overview
Cloud Foundry Technical Overview
 
Cloudfoundry architecture
Cloudfoundry architectureCloudfoundry architecture
Cloudfoundry architecture
 
Bluemix IoT Cloud Foundry Meetup slides
Bluemix IoT Cloud Foundry Meetup slidesBluemix IoT Cloud Foundry Meetup slides
Bluemix IoT Cloud Foundry Meetup slides
 
Devoxx 2014 presentation
Devoxx 2014 presentationDevoxx 2014 presentation
Devoxx 2014 presentation
 
Cloud foundry
Cloud foundryCloud foundry
Cloud foundry
 
Cloud Foundry Bootcamp
Cloud Foundry BootcampCloud Foundry Bootcamp
Cloud Foundry Bootcamp
 
Cloud Foundry Open Tour Beijing: Becoming a Node.js Ninja on
 Cloud Foundry
Cloud Foundry Open Tour Beijing: Becoming a Node.js Ninja on
 Cloud FoundryCloud Foundry Open Tour Beijing: Becoming a Node.js Ninja on
 Cloud Foundry
Cloud Foundry Open Tour Beijing: Becoming a Node.js Ninja on
 Cloud Foundry
 
Cloud Foundry 101
Cloud Foundry 101Cloud Foundry 101
Cloud Foundry 101
 
What is BOSH? An over-overview
What is BOSH? An over-overviewWhat is BOSH? An over-overview
What is BOSH? An over-overview
 
Autoscaling Distributed System with BOSH (Cloud Foundry Summit 2014)
Autoscaling Distributed System with BOSH (Cloud Foundry Summit 2014)Autoscaling Distributed System with BOSH (Cloud Foundry Summit 2014)
Autoscaling Distributed System with BOSH (Cloud Foundry Summit 2014)
 
Cloud Foundry Command Line
Cloud Foundry Command LineCloud Foundry Command Line
Cloud Foundry Command Line
 
Cloud Foundry Bootcamp
Cloud Foundry BootcampCloud Foundry Bootcamp
Cloud Foundry Bootcamp
 
Build Scalable Internet of Things Apps using Cloud Foundry, Bluemix & Cloudant
Build Scalable Internet of Things Apps using Cloud Foundry, Bluemix & CloudantBuild Scalable Internet of Things Apps using Cloud Foundry, Bluemix & Cloudant
Build Scalable Internet of Things Apps using Cloud Foundry, Bluemix & Cloudant
 
10 分でわかる Cloud Foundry Summit 2016 報告
10 分でわかる Cloud Foundry Summit 2016 報告10 分でわかる Cloud Foundry Summit 2016 報告
10 分でわかる Cloud Foundry Summit 2016 報告
 
Cloud Foundry, the Open Platform As A Service
Cloud Foundry, the Open Platform As A ServiceCloud Foundry, the Open Platform As A Service
Cloud Foundry, the Open Platform As A Service
 
Spring and Cloud Foundry; a Marriage Made in Heaven
Spring and Cloud Foundry; a Marriage Made in HeavenSpring and Cloud Foundry; a Marriage Made in Heaven
Spring and Cloud Foundry; a Marriage Made in Heaven
 
What's New in Cloud Foundry
What's New in Cloud FoundryWhat's New in Cloud Foundry
What's New in Cloud Foundry
 
Introduction to Cloud Foundry #JJUG
Introduction to Cloud Foundry #JJUGIntroduction to Cloud Foundry #JJUG
Introduction to Cloud Foundry #JJUG
 
Deploying Microservices to Cloud Foundry
Deploying Microservices to Cloud FoundryDeploying Microservices to Cloud Foundry
Deploying Microservices to Cloud Foundry
 
Cloud foundry Docker Openstack - Leading Open Source Triumvirate
Cloud foundry Docker Openstack - Leading Open Source TriumvirateCloud foundry Docker Openstack - Leading Open Source Triumvirate
Cloud foundry Docker Openstack - Leading Open Source Triumvirate
 

Similar to Cloud Foundry for Spring Developers

Cf intro for spring devs
Cf intro for spring devsCf intro for spring devs
Cf intro for spring devsEric Bottard
 
Virtualizing Apache Spark and Machine Learning with Justin Murray
Virtualizing Apache Spark and Machine Learning with Justin MurrayVirtualizing Apache Spark and Machine Learning with Justin Murray
Virtualizing Apache Spark and Machine Learning with Justin MurrayDatabricks
 
Getting Started with MariaDB with Docker
Getting Started with MariaDB with DockerGetting Started with MariaDB with Docker
Getting Started with MariaDB with DockerMariaDB plc
 
Dockerization of Azure Platform
Dockerization of Azure PlatformDockerization of Azure Platform
Dockerization of Azure Platformnirajrules
 
MariaDB on Docker
MariaDB on DockerMariaDB on Docker
MariaDB on DockerMariaDB plc
 
Gaming across multiple devices
Gaming across multiple devicesGaming across multiple devices
Gaming across multiple devicesPatric Boscolo
 
Docker Seattle Meetup April 2015 - The Docker Orchestration Ecosystem on Azure
Docker Seattle Meetup April 2015 - The Docker Orchestration Ecosystem on AzureDocker Seattle Meetup April 2015 - The Docker Orchestration Ecosystem on Azure
Docker Seattle Meetup April 2015 - The Docker Orchestration Ecosystem on AzurePatrick Chanezon
 
JDD 2016 - Jacek Bukowski - "Flying To Clouds" - Can It Be Easy?
JDD 2016 - Jacek Bukowski - "Flying To Clouds" - Can It Be Easy?JDD 2016 - Jacek Bukowski - "Flying To Clouds" - Can It Be Easy?
JDD 2016 - Jacek Bukowski - "Flying To Clouds" - Can It Be Easy?PROIDEA
 
Flying to clouds - can it be easy? Cloud Native Applications
Flying to clouds - can it be easy? Cloud Native ApplicationsFlying to clouds - can it be easy? Cloud Native Applications
Flying to clouds - can it be easy? Cloud Native ApplicationsJacek Bukowski
 
Docker New York Meetup May 2015 - The Docker Orchestration Ecosystem on Azure
Docker New York Meetup May 2015 - The Docker Orchestration Ecosystem on Azure Docker New York Meetup May 2015 - The Docker Orchestration Ecosystem on Azure
Docker New York Meetup May 2015 - The Docker Orchestration Ecosystem on Azure Patrick Chanezon
 
Cloud Foundry Introduction and Overview
Cloud Foundry Introduction and OverviewCloud Foundry Introduction and Overview
Cloud Foundry Introduction and OverviewAndy Piper
 
Getting started with MariaDB with Docker
Getting started with MariaDB with DockerGetting started with MariaDB with Docker
Getting started with MariaDB with DockerMariaDB plc
 
Wars I’ve Seen From Java EE to Spring and more, Azure has you covered
Wars I’ve SeenFrom Java EE to Spring and more, Azure has you coveredWars I’ve SeenFrom Java EE to Spring and more, Azure has you covered
Wars I’ve Seen From Java EE to Spring and more, Azure has you coveredEdward Burns
 
What's New for the Windows Azure Developer? Lots!!
What's New for the Windows Azure Developer?  Lots!!What's New for the Windows Azure Developer?  Lots!!
What's New for the Windows Azure Developer? Lots!!Michael Collier
 
Smalltalk In the Cloud
Smalltalk In the CloudSmalltalk In the Cloud
Smalltalk In the CloudESUG
 
Running your Java EE 6 applications in the Cloud (FISL 12)
Running your Java EE 6 applications in the Cloud (FISL 12)Running your Java EE 6 applications in the Cloud (FISL 12)
Running your Java EE 6 applications in the Cloud (FISL 12)Arun Gupta
 
Running your Java EE 6 Apps in the Cloud - JavaOne India 2011
Running your Java EE 6 Apps in the Cloud - JavaOne India 2011Running your Java EE 6 Apps in the Cloud - JavaOne India 2011
Running your Java EE 6 Apps in the Cloud - JavaOne India 2011Arun Gupta
 
JavaOne India 2011 - Running your Java EE 6 Apps in the Cloud
JavaOne India 2011 - Running your Java EE 6 Apps in the CloudJavaOne India 2011 - Running your Java EE 6 Apps in the Cloud
JavaOne India 2011 - Running your Java EE 6 Apps in the CloudArun Gupta
 

Similar to Cloud Foundry for Spring Developers (20)

Cloud Foundry Overview
Cloud Foundry OverviewCloud Foundry Overview
Cloud Foundry Overview
 
Cf intro for spring devs
Cf intro for spring devsCf intro for spring devs
Cf intro for spring devs
 
Virtualizing Apache Spark and Machine Learning with Justin Murray
Virtualizing Apache Spark and Machine Learning with Justin MurrayVirtualizing Apache Spark and Machine Learning with Justin Murray
Virtualizing Apache Spark and Machine Learning with Justin Murray
 
Getting Started with MariaDB with Docker
Getting Started with MariaDB with DockerGetting Started with MariaDB with Docker
Getting Started with MariaDB with Docker
 
Dockerization of Azure Platform
Dockerization of Azure PlatformDockerization of Azure Platform
Dockerization of Azure Platform
 
MariaDB on Docker
MariaDB on DockerMariaDB on Docker
MariaDB on Docker
 
Gaming across multiple devices
Gaming across multiple devicesGaming across multiple devices
Gaming across multiple devices
 
Docker Seattle Meetup April 2015 - The Docker Orchestration Ecosystem on Azure
Docker Seattle Meetup April 2015 - The Docker Orchestration Ecosystem on AzureDocker Seattle Meetup April 2015 - The Docker Orchestration Ecosystem on Azure
Docker Seattle Meetup April 2015 - The Docker Orchestration Ecosystem on Azure
 
JDD 2016 - Jacek Bukowski - "Flying To Clouds" - Can It Be Easy?
JDD 2016 - Jacek Bukowski - "Flying To Clouds" - Can It Be Easy?JDD 2016 - Jacek Bukowski - "Flying To Clouds" - Can It Be Easy?
JDD 2016 - Jacek Bukowski - "Flying To Clouds" - Can It Be Easy?
 
Flying to clouds - can it be easy? Cloud Native Applications
Flying to clouds - can it be easy? Cloud Native ApplicationsFlying to clouds - can it be easy? Cloud Native Applications
Flying to clouds - can it be easy? Cloud Native Applications
 
Docker New York Meetup May 2015 - The Docker Orchestration Ecosystem on Azure
Docker New York Meetup May 2015 - The Docker Orchestration Ecosystem on Azure Docker New York Meetup May 2015 - The Docker Orchestration Ecosystem on Azure
Docker New York Meetup May 2015 - The Docker Orchestration Ecosystem on Azure
 
Cloud Foundry Introduction and Overview
Cloud Foundry Introduction and OverviewCloud Foundry Introduction and Overview
Cloud Foundry Introduction and Overview
 
Cloud Foundry et le Cloud vu par VMware
Cloud Foundry et le Cloud vu par VMwareCloud Foundry et le Cloud vu par VMware
Cloud Foundry et le Cloud vu par VMware
 
Getting started with MariaDB with Docker
Getting started with MariaDB with DockerGetting started with MariaDB with Docker
Getting started with MariaDB with Docker
 
Wars I’ve Seen From Java EE to Spring and more, Azure has you covered
Wars I’ve SeenFrom Java EE to Spring and more, Azure has you coveredWars I’ve SeenFrom Java EE to Spring and more, Azure has you covered
Wars I’ve Seen From Java EE to Spring and more, Azure has you covered
 
What's New for the Windows Azure Developer? Lots!!
What's New for the Windows Azure Developer?  Lots!!What's New for the Windows Azure Developer?  Lots!!
What's New for the Windows Azure Developer? Lots!!
 
Smalltalk In the Cloud
Smalltalk In the CloudSmalltalk In the Cloud
Smalltalk In the Cloud
 
Running your Java EE 6 applications in the Cloud (FISL 12)
Running your Java EE 6 applications in the Cloud (FISL 12)Running your Java EE 6 applications in the Cloud (FISL 12)
Running your Java EE 6 applications in the Cloud (FISL 12)
 
Running your Java EE 6 Apps in the Cloud - JavaOne India 2011
Running your Java EE 6 Apps in the Cloud - JavaOne India 2011Running your Java EE 6 Apps in the Cloud - JavaOne India 2011
Running your Java EE 6 Apps in the Cloud - JavaOne India 2011
 
JavaOne India 2011 - Running your Java EE 6 Apps in the Cloud
JavaOne India 2011 - Running your Java EE 6 Apps in the CloudJavaOne India 2011 - Running your Java EE 6 Apps in the Cloud
JavaOne India 2011 - Running your Java EE 6 Apps in the Cloud
 

More from Gunnar Hillert

High Precision GPS Positioning for Spring Developers
High Precision GPS Positioning for Spring DevelopersHigh Precision GPS Positioning for Spring Developers
High Precision GPS Positioning for Spring DevelopersGunnar Hillert
 
Migrating to Angular 5 for Spring Developers
Migrating to Angular 5 for Spring DevelopersMigrating to Angular 5 for Spring Developers
Migrating to Angular 5 for Spring DevelopersGunnar Hillert
 
Ajug - The Spring Update
Ajug - The Spring UpdateAjug - The Spring Update
Ajug - The Spring UpdateGunnar Hillert
 
s2gx2015 who needs batch
s2gx2015 who needs batchs2gx2015 who needs batch
s2gx2015 who needs batchGunnar Hillert
 
Spring Batch Performance Tuning
Spring Batch Performance TuningSpring Batch Performance Tuning
Spring Batch Performance TuningGunnar Hillert
 
Creating Modular Test-Driven SPAs with Spring and AngularJS
Creating Modular Test-Driven SPAs with Spring and AngularJSCreating Modular Test-Driven SPAs with Spring and AngularJS
Creating Modular Test-Driven SPAs with Spring and AngularJSGunnar Hillert
 
Modular Test-driven SPAs with Spring and AngularJS
Modular Test-driven SPAs with Spring and AngularJSModular Test-driven SPAs with Spring and AngularJS
Modular Test-driven SPAs with Spring and AngularJSGunnar Hillert
 
Atlanta JUG - Integrating Spring Batch and Spring Integration
Atlanta JUG - Integrating Spring Batch and Spring IntegrationAtlanta JUG - Integrating Spring Batch and Spring Integration
Atlanta JUG - Integrating Spring Batch and Spring IntegrationGunnar Hillert
 
DevNexus 2013 - Introduction to WebSockets
DevNexus 2013 - Introduction to WebSocketsDevNexus 2013 - Introduction to WebSockets
DevNexus 2013 - Introduction to WebSocketsGunnar Hillert
 
Introduction to WebSockets
Introduction to WebSocketsIntroduction to WebSockets
Introduction to WebSocketsGunnar Hillert
 
S2GX 2012 - Spring Projects Infrastructure
S2GX 2012 - Spring Projects InfrastructureS2GX 2012 - Spring Projects Infrastructure
S2GX 2012 - Spring Projects InfrastructureGunnar Hillert
 
S2GX 2012 - What's New in Spring Integration
S2GX 2012 - What's New in Spring IntegrationS2GX 2012 - What's New in Spring Integration
S2GX 2012 - What's New in Spring IntegrationGunnar Hillert
 
S2GX 2012 - Introduction to Spring Integration and Spring Batch
S2GX 2012 - Introduction to Spring Integration and Spring BatchS2GX 2012 - Introduction to Spring Integration and Spring Batch
S2GX 2012 - Introduction to Spring Integration and Spring BatchGunnar Hillert
 
Spring Projects Infrastructure
Spring Projects InfrastructureSpring Projects Infrastructure
Spring Projects InfrastructureGunnar Hillert
 
jRecruiter - The AJUG Job Posting Service
jRecruiter - The AJUG Job Posting ServicejRecruiter - The AJUG Job Posting Service
jRecruiter - The AJUG Job Posting ServiceGunnar Hillert
 

More from Gunnar Hillert (16)

High Precision GPS Positioning for Spring Developers
High Precision GPS Positioning for Spring DevelopersHigh Precision GPS Positioning for Spring Developers
High Precision GPS Positioning for Spring Developers
 
Migrating to Angular 5 for Spring Developers
Migrating to Angular 5 for Spring DevelopersMigrating to Angular 5 for Spring Developers
Migrating to Angular 5 for Spring Developers
 
The Spring Update
The Spring UpdateThe Spring Update
The Spring Update
 
Ajug - The Spring Update
Ajug - The Spring UpdateAjug - The Spring Update
Ajug - The Spring Update
 
s2gx2015 who needs batch
s2gx2015 who needs batchs2gx2015 who needs batch
s2gx2015 who needs batch
 
Spring Batch Performance Tuning
Spring Batch Performance TuningSpring Batch Performance Tuning
Spring Batch Performance Tuning
 
Creating Modular Test-Driven SPAs with Spring and AngularJS
Creating Modular Test-Driven SPAs with Spring and AngularJSCreating Modular Test-Driven SPAs with Spring and AngularJS
Creating Modular Test-Driven SPAs with Spring and AngularJS
 
Modular Test-driven SPAs with Spring and AngularJS
Modular Test-driven SPAs with Spring and AngularJSModular Test-driven SPAs with Spring and AngularJS
Modular Test-driven SPAs with Spring and AngularJS
 
Atlanta JUG - Integrating Spring Batch and Spring Integration
Atlanta JUG - Integrating Spring Batch and Spring IntegrationAtlanta JUG - Integrating Spring Batch and Spring Integration
Atlanta JUG - Integrating Spring Batch and Spring Integration
 
DevNexus 2013 - Introduction to WebSockets
DevNexus 2013 - Introduction to WebSocketsDevNexus 2013 - Introduction to WebSockets
DevNexus 2013 - Introduction to WebSockets
 
Introduction to WebSockets
Introduction to WebSocketsIntroduction to WebSockets
Introduction to WebSockets
 
S2GX 2012 - Spring Projects Infrastructure
S2GX 2012 - Spring Projects InfrastructureS2GX 2012 - Spring Projects Infrastructure
S2GX 2012 - Spring Projects Infrastructure
 
S2GX 2012 - What's New in Spring Integration
S2GX 2012 - What's New in Spring IntegrationS2GX 2012 - What's New in Spring Integration
S2GX 2012 - What's New in Spring Integration
 
S2GX 2012 - Introduction to Spring Integration and Spring Batch
S2GX 2012 - Introduction to Spring Integration and Spring BatchS2GX 2012 - Introduction to Spring Integration and Spring Batch
S2GX 2012 - Introduction to Spring Integration and Spring Batch
 
Spring Projects Infrastructure
Spring Projects InfrastructureSpring Projects Infrastructure
Spring Projects Infrastructure
 
jRecruiter - The AJUG Job Posting Service
jRecruiter - The AJUG Job Posting ServicejRecruiter - The AJUG Job Posting Service
jRecruiter - The AJUG Job Posting Service
 

Recently uploaded

Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Enterprise Knowledge
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking MenDelhi Call girls
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)wesley chun
 
Advantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessAdvantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessPixlogix Infotech
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Igalia
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsJoaquim Jorge
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEarley Information Science
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfEnterprise Knowledge
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUK Journal
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?Igalia
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024The Digital Insurer
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CVKhem
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxKatpro Technologies
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdfhans926745
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slidevu2urc
 

Recently uploaded (20)

Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
Advantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessAdvantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your Business
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 

Cloud Foundry for Spring Developers

  • 1. Cloud Foundry for Spring Developers Gunnar Hillert, Member of Technical Staff, Spring Integration © 2011 SpringSource, A division of VMware. All rights reserved
  • 2. Agenda §  Overview §  Deployment §  Debugging §  Profiling §  Agnostic War Files §  Modular Cloud Apps 2
  • 3. What is Cloud Foundry? 3
  • 4. 4
  • 5. Three Layers of Cloud Computing §  SaaS •  Software as a Service §  PaaS •  Platform as a Service §  IaaS •  Infrastructure as a Service 5
  • 6. Choice of clouds .js Data Services Private     Clouds     …   Msg Services Public   Clouds   .COM Other Micro   Services Clouds   6
  • 7. Broad Support for Languages/Application Frameworks §  JVM •  Spring, Grails, Roo, Lift, plain Java §  Ruby •  Rails, Sinatra §  Node.js §  Community contributions •  Erlang, Python, PHP 7
  • 8. JVM Frameworks §  Unit of deployment: Java WAR files •  Can run any standard War file •  Servlet 2.5 •  Don’t assume particular container §  Spring, Grails, Lift framework •  Auto-reconfiguration goodies 8
  • 9. Services §  Relational database •  Postgres •  MySQL §  Key-value store •  Redis §  Document store •  MongoDB §  Messaging •  RabbitMQ 9
  • 10. Open Source §  Source code available under Apache License v2.0 •  https://github.com/cloudfoundry/ •  VCAP •  https://github.com/cloudfoundry/vcap •  Project Website •  http://cloudfoundry.org/ 10
  • 12. Architecture Architecture 25 Thursday, October 27, 11 12
  • 14. Deployment Options §  VMC •  Ruby based command line tool §  SpringSource Tool Suite (STS) §  Grails §  Spring Roo Cloud Foundry Addon §  Cloud Foundry Maven Plugin §  vcap-java-client •  Used by STS and Cloud Foundry Maven Plugin 14
  • 16. Debugging 16
  • 17. Debugging §  Start Cloud Foundry applications in debug mode §  Set Break Points for Micro Cloud Foundry §  STS 2.8.1 supports it §  Coming with Micro Cloud Foundry 1.1.1 (Currently RC) 17
  • 18. Caldecott §  TCP over HTTP tunnel §  Local client §  Remote server 18
  • 19. Caldecott - Multiple Services and Sessions §  One vcc server instance •  Manages multiple tunnels §  One vcc client instance per service •  Multiple local apps may share a client if they connect to the same remote server:port •  Each listens on different local port 19
  • 21. Profiling 21
  • 22. Profiling – Spring Insight §  Providing real-time application runtime performance and behavior information for Java Spring applications §  Beta available for CloudFoundry.com §  Signup at: insight.cloudfoundry.com §  Write your own plugins •  https://github.com/SpringSource/spring-insight-plugins 22
  • 23. DEMO Spring Insight for Cloud Foundry 23
  • 25. Agnostic War Files – Toolbox §  Auto Reconfiguration §  Cloud Namespace §  Spring 3.1 Profiles 25
  • 26. Agnostic War Files – Auto Reconfiguration §  Move existing Applications easily to Cloud Foundry §  Makes 2 modifications at deploy time: •  Adds additional Jar •  Updates web.xml §  BeanFactoryPostProcessor examines the application context before creating beans §  Swaps existing beans of matching types 26
  • 27. Agnostic War Files – Auto Reconfiguration Service Type Replaced Bean Type MySQL javax.sql.DataSource Postgres javax.sql.DataSource Redis org.sf.data.redis.connection.RedisConnectionFactory MongoDB org.sf.data.document.mongodb.MongoDbFactory RabbitMQ org.sf.amqp.rabbit.connection.ConnectionFactory 27
  • 28. Agnostic War Files – Auto Reconfiguration §  Limitations •  one service of a given service type •  one bean of the matching type •  If application does not follow limits, auto-reconfiguration mechanism will not take place 28
  • 29. Agnostic War Files – Cloud Namespace §  Explicit configuration of Cloud Foundry Services §  Finer grained control of configuration parameters §  Necessary when configuring multiple services of same type 29
  • 30. Agnostic War Files – Cloud Namespace §  Setup – Maven <dependency> <groupId>org.cloudfoundry</groupId> <artifactId>cloudfoundry-runtime</artifactId> <version>0.8.1</version> </dependency> §  Setup – Spring Application Context <?xml version="1.0" encoding="UTF-8"?> <beans … xmlns:cloud="http://schema.cloudfoundry.org/spring" xsi:schemaLocation=“http://schema.cloudfoundry.org/spring http://schema.cloudfoundry.org/spring/cloudfoundry-spring-0.8.xsd"> 30
  • 31. Available Namespace Elements §  Define and use a DataSource <cloud:data-source id="dataSource" /> <bean id="jdbcTemplate” class="org.springframework.jdbc.core.JdbcTemplate"> <property name="dataSource" ref="dataSource" /> </bean> §  Optional Subelements •  <cloud:connection> •  <cloud:pool> 31
  • 32. Available Namespace Elements §  MongoDB Support •  <cloud:mongo-db-factory> §  Redis Support •  <cloud:redis-connection-factory> §  RabbitMQ •  <cloud:rabbit-connection-factory> §  Autocreate Services •  <cloud:service-scan> 32
  • 33. Agnostic War Files – Spring Profiles §  Spring 3.1 adds new support for environments §  Deploy to Cloud Foundry and Stand-alone Containers <bean id="mongoTemplate" class="org.springframework.data.mongodb.core.MongoTemplate"> <constructor-arg ref="mongoDbFactory" /> </bean> <beans profile="default"> <mongo:db-factory id="mongoDbFactory" dbname="pwdtest" host="127.0.0.1" port="27017" username="test_user" password=”s3cr3t" /> </beans> <beans profile="cloud"> <cloud:mongo-db-factory id="mongoDbFactory" /> </beans> 33
  • 36. Benefits of App-level Modularity §  Efficient Elasticity §  Fault Isolation §  Dynamic Configuration §  “always-on”/Rolling Upgrades 36
  • 39. Resources 39
  • 40. Resources §  Cloud Foundry on Ubuntu http://blog.dustinkirkland.com/2011/08/howto-install-cloudfoundry-server- paas.html §  VMC http://support.cloudfoundry.com/entries/20012337-getting-started-guide- command-line-vmc-users http://cloudfoundry.zendesk.com/entries/20012462-getting-started-guide-sts-users http://blog.dustinkirkland.com/2011/07/getting-started-with-cloudfoundry.html http://blog.cloudfoundry.com/post/9037486110/vmc-everywhere 40
  • 41. Resources §  Cloud Foundry Maven Plugin http://blog.springsource.com/2011/09/22/rapid-cloud-foundry-deployments-with- maven/ https://github.com/cloudfoundry/vcap-java-client/tree/master/cloudfoundry-maven- plugin (Sources + Reference Documentation) §  Caldecott http://blog.cloudfoundry.com/post/12928974099/now-you-can-tunnel-into-any- cloud-foundry-data-service §  Cloud Foundry Samples https://github.com/SpringSource/cloudfoundry-samples 41
  • 42. Resources §  Spring Auto Reconfiguration http://blog.springsource.org/2011/11/04/using-cloud-foundry-services-with-spring- part-2-auto-reconfiguration/ §  Spring Insight for Cloud Foundry http://insight.cloudfoundry.com/ §  Cloud Foundry Namespace http://blog.springsource.org/2011/11/09/using-cloud-foundry-services-with-spring- applications-part-3-the-cloud-namespace/ §  Spring Profiles http://blog.springsource.org/2011/11/10/using-cloud-foundry-services-with-spring- part-4-%E2%80%93-spring-profiles/ 42
  • 43. Resources §  Spring Integration http://www.springsource.org/spring-integration https://github.com/SpringSource/spring-integration §  Samples https://github.com/SpringSource/cloudfoundry-samples https://github.com/markfisher/springone-wgrus 43
  • 44. THANK YOU! Sign up for a free account at: http://www.cloudfoundry.com/ Email: ghillert@vmware.com Twitter: https://twitter.com/ghillert Blog: http://blog.hillert.com 44

Editor's Notes

  1. Cloud Controller Main Brain
  2. http://blog.springsource.com/2011/09/22/rapid-cloud-foundry-deployments-with-maven/git clone https://github.com/SpringSource/cloudfoundry-samples.gitcd cloudfoundry-samples/hello-javamvn clean packagevmc helpvmc target http://api.cloudfoundry.comVmc info
  3. ----- Meeting Notes (11/28/11 13:16) -----
  4. Sometime Autoconfiguration is not sufficient