About me André Boonzaaijer - CTO - Trainer - Software engineer / architect / coach - Excavator operator 2
About Sogyo Founded in1995 Office at Landgoed Sandwijck in De Bilt Around 85 employees Fascinated by software innovation: design, development and integration van software. 3
Agenda Historische context Technische context Cloud: IaaS, PaaS, SaaS Development in de cloud: 3 platformen vergeleken 4
Informatie Systemen: Evolutie Mainframe Client/Server Web-based SOA, RIA Cloud? Terminal Client Browser Monoliet Webserver Database Database 1970 1980 1990 2000 2010 ~ 5
0 tot Cloud Lancering Spoetnik, oprichting ARPA Eerste boodschap verstuurd tussen 2 hosts, ARPANET; 4 hosts 1000 hosts, DNS Eerste aansluiting NL, 5000 hosts Eerste zoekmachine: Lycos, 1M hosts Java / JavaScript, 5M hosts Napster, Wikipedia, blogs, 100M hosts YouTube, Social Networks, Twitter (2006), AWS GAE (2008), Cloud computing mainstream, MS Azure 23 hosts TCP/IP HTTP, HTML, 100.000 hosts XML Eerste SPAM 1957 1969 1971 1974 1978 1984 1986 1989 1993 1995 1998 2001 2005 2009 6
Ontwikkelstraat 7
Abstractie 8
Virtualizatie: IaaS 9
PaaS 10
Schaalbaarheid: twee vormen Source: Herbjorn Wilhelmsen 11
http://www.saasblogs.com/author/sinclair/ 12
SaaS PaaS IaaS Nuts 13
Een paar architectuurpatronen... 14
En de cloud-gebaseerde versies: Layering: REST / AJAX Master / Slave: Map / Reduce Event bus: Queues, web hooks / sockets Pipe & Filter: Queues 15
Data in de cloud GAE: Azure: AWS: Bigtable Windows Azure storage services S3 16
Typische cloud applicatie (silo) HTML / CSS Browser Provider Javascript / JQuery /... REST Services (JSON), XML / SOAP Queue Backend logic (Java, Python, C#) Storage: Bigtable / Bucket 17
3 platformen vergeleken Amazon Web Services (AWS) Microsoft Azure Google App Engine (GAE) 18
Referentie Platform Progr. Language Compiler / runtime Tools, IDE Infrastructure Issue tracking / comm. Frameworks Components Patterns Practices Testtooling Metrics Deployment Monitoring 19
Microsoft Azure Issue tracking / comm. Platform Progr. Language Compiler / runtime Tools, IDE Visual Studio Cloud Templates Frameworks Components Infrastructure Patterns Practices MS P&P, MSDN Testtooling Metrics Deployment Monitoring MS P&P 20
Amazon Web Services Custom built / bought EC2 Images AWS Toolkit for Eclipse, AWS MMC, Elastic beanstalk Platform Progr. Language Compiler / runtime Tools, IDE SDK s for Java, Dotnet, PHP Infrastructure AWS Developer Centers Issue tracking / comm. Frameworks Components Patterns Practices Testtooling Metrics Deployment Monitoring EC2 Elastic Compute Cloud AWS Cloudwatch 21
Google App Engine Java (Eclipse) / Python (IDLE) Issue tracking / comm. Platform Progr. Language Compiler / runtime Tools, IDE Webapp, JSPs, Django, GWT Frameworks Components Infrastructure Developers Guide, Community Patterns Practices Testtooling Metrics Deployment Monitoring Embedded in platform Embedded in platform 22
Monitoring (GAE) 23
Monitoring (AWS) Amazon CloudWatch 24
Deployment (GAE) 25
Deployment (Azure) 26
Deployment (AWS elastic beanstalk)
Prijsstelling Azure heeft nu ook een x-small role voor 0,05 ct / CPU uur Maakt het plaatje 40,20 per omg. 28
Samengevat: PaaS Features Language support Nr. Of languages Platform abstraction GAE AWS Azure ++ ++ ++ +/- - ++ ++ + / - - Components + ++ + Scalability ++ + + Monitoring ++ ++ - Deployment ++ + + Issue tracking + n.a. + SLA -- ++ + Costs ++ + - 29
Belangrijkste non-functional topics: SLA Vendor lock-in ( private cloud?) >GAE: VMWare + Spring framework of AppScale >Azure: In-a-box, Azure Appliance >AWS: Beanstalk (Tomcat stack) Auto scaling Prijsstelling Legal issues (locatie)
Alternatieven voor deze 3? Appharbor ( Azure done right ) Force.com (salesforce PaaS) Rackspace Zoho VMWare vcloud Citrix OpenCloud
Front-end Shift naar meer JavaScript + frameworks (JQuery) HTML 5 XML Specifieke formaten? (JSON) 32
Consequenties: Operating Systems Shift Dunne operating systems verschijnen: >Google Chrome OS >MS Gazelle / ServiceOS >Jolicloud SOFTWARE INNOVATORS 33
Vragen? 34
Contact André Boonzaaijer aboonzaaijer@sogyo.nl 030-220 22 16 35