OpenChain Education Work Group Monthly Meeting - 2024-04-10 - Full Recording
Grails in the Cloud (2013)
1. Grails in the cloud
Meni Lubetkin
menil@opentunities.com
1
2. • From hosting to PaaS
• Why Cloud?
• Grails providers
• Comparison
• Take outs
2
3. 3
Shared VPS Dedicated
Price $ $$ $$$
control # ## Full
O/S & Middleware
Selection
No Yes Yes
reliability low High High
V Scale No Yes Yes
Resource Control No Yes Yes
Management Limit Optional Optional and $$$
permgen space of
256M
Not available available available
5. 5
“Cloud computing is a model for enabling convenient,
on-demand network access to a shared pool of
configurable computing resources (e.g., networks,
servers, storage, applications, and services) that can be
rapidly provisioned and released with minimal
management effort or service provider interaction. This
cloud model promotes availability and is composed of
essential characteristics, deployment models, and
various service models. “
(according: National Institute of Standards and Technology (NIST))
Definition
13. 13
PaaS + IaaS = DevOps
DevOps
"DevOps" is an emerging set of principles,
methods and practices for communication,
collaboration and integration between
software development
(application/software engineering) and IT
operations (systems
administration/infrastructure) professionals
Automating as much as possible !!!
14. Amazon EC2
14
• Since 2006 – proven
• Very Flexible
• Lot of add-on services S3, SNS, SES, RDS…..
• Lots of architecture possibilities
• APIs for each service
• Console and tools
• Region and zones
• Scale with Elastic Load Balancer.
15. Amazon Beanstalk
15
• New service but evolving fast
• Not so friendly…
• Only one application on instance
• Scalable using Elastic load balancer
• SQL on RDS that is expensive
• Tomcat 6 or 7
• Configuration options
• Not efficient logs
17. 17
Google App Engine
• Grails Plugin.
• Limit support for JEE
• No Hibernate support – use JPA annotation for
GORM
• Uninstall Hibernate
• Annotate all GORM classes
• read only file system
• Auto session management
• Services: Mail, task queue,
Image processing
• Sticky vendor
18. Heroku
• Build for Ruby
• SalesForce.com company
• Free account
• Grails support with buildpack tool to push and
build grails application from GIT.
• Grails Heroku plugin
• no support for session affinity or clustered
sessions
18
20. Cloud Foundry
• VM ware company the Grails sponsors.
• Still Beta.
• Public, Private , Micro(local).
• Local run on VMware Player
• Install command line tool or STS plugin (Ruby +
vmc
• Vendor agnostic
• Many platforms and frameworks support.
• Sticky session
20
21. Jelastic
• Java Paas layer for hosting
• Production since April 2012
• 5 vendors in different location and different
pricing
• User friendly java Paas
• Application servers, SQL & noSQL selection
• War or Maven deploy.
21
22. CloudBees
• End to end PaaS
• Development & runtime services
• Provider agnostic service
22
26. 26
EC2 Beanstalk
Database Amazon RDS: MySql,
Oracle, SqlServer
Any DB you can run on
EC2 Instance
BigTable PostgreSql
MongoHQ,
MongoLabs
CouchDB
Neo4j
Redis To Go
Amazon
RDS
MySQL,
PostgreSQL
MongoDB
MariaDB
MySql
PostgreSql
CouchDB
MongoDB
MySql +
sevrvice:
CouchDB
MongoDB
27. Take outs
• Competition and changes are fast
• Better keep “loosely coupled”
• PaaS solutions are young…
• Price comparison is difficult / unknown
• Support and documentation
• Tools and API
• Security and access
• Use the free trail to test
27
Notes de l'éditeur
the cloud infrastructure is operated solely for an organization. it may be managed by the organization or a third party, and may exist on or off the premises.
the cloud infrastructure is shared by several organizations and supports a specific community that has shared concerns (e.g., mission, security requirements, policy, and compliance considerations
the cloud infrastructure is made available to the general public or a large industry group, and is owned by an organization selling cloud services.
the cloud infrastructure is a composition of two or more clouds (private, community, or public) that remain unique entities but are bound together by standardized or proprietary technology that enables data and application portability (e.g., cloud bursting).