cloudy ajax 08 10
TRANSCRIPT
![Page 1: Cloudy Ajax 08 10](https://reader031.vdocuments.site/reader031/viewer/2022020115/5552a1f6b4c905e8128b5321/html5/thumbnails/1.jpg)
Cloudy AjaxChristopher Keene
![Page 2: Cloudy Ajax 08 10](https://reader031.vdocuments.site/reader031/viewer/2022020115/5552a1f6b4c905e8128b5321/html5/thumbnails/2.jpg)
2
Agenda
● What isn’t a cloud?● What issues does cloud raise for Ajax developer?● Example: building and deploying Ajax app on EC2
![Page 3: Cloudy Ajax 08 10](https://reader031.vdocuments.site/reader031/viewer/2022020115/5552a1f6b4c905e8128b5321/html5/thumbnails/3.jpg)
3
Cloud – What Is It?
● Data center with an API● Next generation of hosting● Logical extension to
virtualization● Way for Gartner to sell
more reports● Sure fire VC fundraising
pitch ;-)
![Page 4: Cloudy Ajax 08 10](https://reader031.vdocuments.site/reader031/viewer/2022020115/5552a1f6b4c905e8128b5321/html5/thumbnails/4.jpg)
4
There are Clouds…
● No setup● No up front costs● IT as nature intended
![Page 5: Cloudy Ajax 08 10](https://reader031.vdocuments.site/reader031/viewer/2022020115/5552a1f6b4c905e8128b5321/html5/thumbnails/5.jpg)
5
And Then There Are Clouds
● Insecure● Proprietary● Dude, where’d my
data go?
![Page 6: Cloudy Ajax 08 10](https://reader031.vdocuments.site/reader031/viewer/2022020115/5552a1f6b4c905e8128b5321/html5/thumbnails/6.jpg)
6
What Isn’t A Cloud? 5 Tests
1. Wallet test: can you buy it with a credit card?2. ATM test: do you have to talk to a person to get it?3. Kick test: do you own “thing” you could trip over?4. Supersize me test: can you get 10x as much of it
whenever you want?5. Roach motel test: can you take your app + data
somewhere else whenever you want?
![Page 7: Cloudy Ajax 08 10](https://reader031.vdocuments.site/reader031/viewer/2022020115/5552a1f6b4c905e8128b5321/html5/thumbnails/7.jpg)
7
Components of the Cloud Stack
*Source: McKinsey & Co, 2008
Cloud - Based DevelopmentEnvironment
Common Services(provision, monitor, manage)
Runtime Environment
On-Demand Infrastructure
WaveMaker, Coghead
RightScale, Elastra
Amazon EC2
Amazon EC2, S3, SQS
“We expect new vendors to offer powerful cloud-based IDEs that includetraditional programming languages and tools for mashup development.”
- McKinsey & Company, “Emerging SaaS Platform Wars”, 2008
Cloud Application Stack
![Page 8: Cloudy Ajax 08 10](https://reader031.vdocuments.site/reader031/viewer/2022020115/5552a1f6b4c905e8128b5321/html5/thumbnails/8.jpg)
8
Why Cloud Matters: For Business
● Sandbox: A place to experiment● Fewer restrictions● Try first, justify to IT later● Release from the data center straightjacket● Business success drives IT investment
![Page 9: Cloudy Ajax 08 10](https://reader031.vdocuments.site/reader031/viewer/2022020115/5552a1f6b4c905e8128b5321/html5/thumbnails/9.jpg)
9
Why Cloud Matters: For ISVs
● Sell to business, not IT● Lower cost of sales● Easy to roll out new versions● Ability to create ecosystem around the platform
(e.g., SalesForce AppExchange)
![Page 10: Cloudy Ajax 08 10](https://reader031.vdocuments.site/reader031/viewer/2022020115/5552a1f6b4c905e8128b5321/html5/thumbnails/10.jpg)
10
Cloud Market Opportunity
● Cloud democratizes application deployment –don’t need a data center to deploy a web app
● Platform adoption is driven by tools – needopen source IDEs for the cloud
● Enterprise adoption requires flexibility –appsshould be deployable on site or on demand
![Page 11: Cloudy Ajax 08 10](https://reader031.vdocuments.site/reader031/viewer/2022020115/5552a1f6b4c905e8128b5321/html5/thumbnails/11.jpg)
11
Agenda
● What isn’t a cloud?● What issues does cloud raise for Ajax developer?● Example: building and deploying Ajax app on EC2
![Page 12: Cloudy Ajax 08 10](https://reader031.vdocuments.site/reader031/viewer/2022020115/5552a1f6b4c905e8128b5321/html5/thumbnails/12.jpg)
12
How Does The Cloud Change Ajax?
● Planning: persistent data, failover, email● Developing: tools, source code control● Staging: keeping versions/builds in sync● Deploying: can’t manage what you can’t see
![Page 13: Cloudy Ajax 08 10](https://reader031.vdocuments.site/reader031/viewer/2022020115/5552a1f6b4c905e8128b5321/html5/thumbnails/13.jpg)
13
Cloud Architecture
DB Master
DB Slave
App Server
App Server
Load Balancer
LoadBalancer
MySQL
Tomcat/Spring
Tomcat/Balancer
● Redundant loadbalancer
● Two applicationservers
● Master/slavedatabase
Dojo
![Page 14: Cloudy Ajax 08 10](https://reader031.vdocuments.site/reader031/viewer/2022020115/5552a1f6b4c905e8128b5321/html5/thumbnails/14.jpg)
14
Cloud Costs
● 6 small instances(EC2)
● Need persistentstorage too (S3)
● 720 hours/month =$72/server
● Also need systemsmanagement
![Page 15: Cloudy Ajax 08 10](https://reader031.vdocuments.site/reader031/viewer/2022020115/5552a1f6b4c905e8128b5321/html5/thumbnails/15.jpg)
15
What Would Google Do?
● Cloud apps have different architectural concerns:– Multi-tenant– Extensible– Self-service– Collaborative
WW D?
![Page 16: Cloudy Ajax 08 10](https://reader031.vdocuments.site/reader031/viewer/2022020115/5552a1f6b4c905e8128b5321/html5/thumbnails/16.jpg)
16
Components of the SaaS Stack
*Source: McKinsey & Co, 2008
Cloud - Based DevelopmentEnvironment
Common Services(provision, monitor, manage)
Runtime Environment
On-Demand Infrastructure
WaveMaker
RightScale, Elastra
Amazon EC2
Amazon EC2, S3, SQS
“We expect new vendors to offer powerful cloud-based IDEs that includetraditional programming languages and tools for mashup development.”
- McKinsey & Company, “Emerging SaaS Platform Wars”, 2008
SaaS Applications
![Page 17: Cloudy Ajax 08 10](https://reader031.vdocuments.site/reader031/viewer/2022020115/5552a1f6b4c905e8128b5321/html5/thumbnails/17.jpg)
17
Cloud Gotchas
● Testing (solution: SaaS testing service likeSOASTA)
● Scaling (solution: SaaS management service likeRightScale)
● Web integration (solution: WOA using REST,SOAP)
● Data integration (solution: VPN or SaaSintegration platform like Boomi)
● Email from “cloud” IP addresses goes to spam(solution: use web service email like gmail)
![Page 18: Cloudy Ajax 08 10](https://reader031.vdocuments.site/reader031/viewer/2022020115/5552a1f6b4c905e8128b5321/html5/thumbnails/18.jpg)
18
Why Cloud-Based Tools?
● Easy to try: nothing to download/install
● Easy to collaborate: project in the sky
● Easy to deploy/scale
● Easy to maintain: nothing to get lost
![Page 19: Cloudy Ajax 08 10](https://reader031.vdocuments.site/reader031/viewer/2022020115/5552a1f6b4c905e8128b5321/html5/thumbnails/19.jpg)
19
Comparing Cloud-Based Tools
● Language
● Architecture
● Hosting
● Licensing
Java, Python,Ruby, JavascriptSpring, RoR, Django,Dojo, Ext, jQuery
On demand (EC2)or on premisesOpen source(AGPL)
Open Closed
Proprietary
Proprietary
Proprietary
Proprietary
![Page 20: Cloudy Ajax 08 10](https://reader031.vdocuments.site/reader031/viewer/2022020115/5552a1f6b4c905e8128b5321/html5/thumbnails/20.jpg)
20
Agenda
● What isn’t a cloud?● What issues does cloud raise for Ajax developer?● Example: building and deploying Ajax app on EC2
![Page 21: Cloudy Ajax 08 10](https://reader031.vdocuments.site/reader031/viewer/2022020115/5552a1f6b4c905e8128b5321/html5/thumbnails/21.jpg)
21
Sign Up For Amazon EC2
● Use credit card● 5 minutes max● Funky security
(key pairs, 508certs, etc)
![Page 22: Cloudy Ajax 08 10](https://reader031.vdocuments.site/reader031/viewer/2022020115/5552a1f6b4c905e8128b5321/html5/thumbnails/22.jpg)
22
Sign Up for Rightscale (Free Version)
![Page 23: Cloudy Ajax 08 10](https://reader031.vdocuments.site/reader031/viewer/2022020115/5552a1f6b4c905e8128b5321/html5/thumbnails/23.jpg)
23
Build Ajax Application
DojoWidgetPalette
Open SourceCloud IDE
Connectwidgets todata
Create WARfile based onDojo, Spring,Hibernate
Drag&DropDesigner
Import data orservices
![Page 24: Cloudy Ajax 08 10](https://reader031.vdocuments.site/reader031/viewer/2022020115/5552a1f6b4c905e8128b5321/html5/thumbnails/24.jpg)
24
WaveMaker Deployment Architecture
Dojo 1.0● AJAX Widgets used to
assemble applications
JSON RPC● Messaging from browser
to server
Spring / Hibernate● Basic container and
data access
JaxWS / Acegi● Web services and security
Tomcat, JBoss, WLS and WAS
Runs on Cloud
![Page 25: Cloudy Ajax 08 10](https://reader031.vdocuments.site/reader031/viewer/2022020115/5552a1f6b4c905e8128b5321/html5/thumbnails/25.jpg)
25
Open And Extensible
● Extensible client - drop into JavaScript code● Extensible server - drop into Java code● Extensible widgets – import or write your own● RAD without the black box – extend WAR files in
Eclipse or your favorite coding tool
![Page 26: Cloudy Ajax 08 10](https://reader031.vdocuments.site/reader031/viewer/2022020115/5552a1f6b4c905e8128b5321/html5/thumbnails/26.jpg)
26
Live Demo
● Let’s Hope This Works!
![Page 27: Cloudy Ajax 08 10](https://reader031.vdocuments.site/reader031/viewer/2022020115/5552a1f6b4c905e8128b5321/html5/thumbnails/27.jpg)
27
Questions?