SlideShare a Scribd company logo
1 of 77
Developing Social Games
      in the Cloud



                   Pieter De Schepper
                      Jurriaan Persyn
Tags



        Cloud Computing
IaaS (Infrastructure as a Service)
  PaaS (Platform as a Service)
  AWS (Amazon Web Services)
          Amazon EC2
       Social Applications
          Multi Platform
       Game Development
Who we are


Pieter De Schepper             Jurriaan Persyn

previously working on Netlog   previously part of the front-end
APIs, OpenSocial & other       development team focusing on
integrations in Netlog         user features

Netlog team member for 3       Netlog team member for 4
years                          years
Gatcha! wants to bring people
together through gaming wherever
             they are.
Gatcha! builds and distributes
           games to
social networks and web-portals.
Who we are


For Game Developers      For Site Owners

We offer:                We offer:

• Reach & distribution   • Quality gaming content
• Social Enrichment      • Social engagement
• Features               • Monetization
 • High-scores
 • Achievements
 • Challenges
 • ...
• Monetization
• Localization
Every single day:

   over 1M game plays
over 2200 days of play time
Where we come from




  Grown and successful as one of
        Netlogʼs features

Since Jan 2010 a dedicated team of 8
with a more stand-alone approach to
         go cross-platform.
UC Berkeley RAD Lab Definition


Huge Resources
The illusion of infinite computing resources available on demand,
thereby eliminating the need for users to plan far ahead for
provisioning resources.

No Commitment
The elimination of an up front commitment by users, thereby
allowing companies to start small and increase resources only
when there is an increase in their needs.

Pay By The Drink
The ability to pay for use of computing resources on a short-term
basis as needed (e.g., processors by hour and storage by the
day) and release them as needed.
Types


Infrastructure as a Service (IaaS)
Amazon EC2, GoGrid, Eucalyptus, ...

Platform as a Service (PaaS)
Google AppEngine, Windows Azure, Amazon Simple DB, ...

Software as a Service (SaaS)
Gmail, Google Documents, ...
Why IaaS?


You donʼt want to worry ...

• about building an expensive datacenter
• about the location of your datacenter
• about finding the right ITS team & field engineers
• about broken discs
• about hardware getting out of fashion
• ...



             (minimal CAPEX, Capital Expenditures)
But?




 We have a dedicated team
   We have a datacenter
We have negotiated contracts

         So, why?
Our main goal ...

• instant scaling
  • the promise of hardware on demand
  • handling peaks in traffic
  • handling heavy single tasks
• cost optimization
Why Amazon?

Simple Storage Service (S3)
   since March 2006

Elastic Cloud Computing (EC2)
   since August 2006

Almost immediately de facto standard
for cloud computing

 Others: Rackspace, GoGrid
Amazon Web Services



IaaS
S3: Simple Storage Service
EC2: Elastic Compute Cloud
EBS: Elastic Block Storage


PaaS
SQS: Simple Queue System
RDS: Relational Database Service
SDB: SimpleDB
Cloudfront: Content Delivery
What is Amazon EC2?




           Amazon EC2
    is a virtual computer grid
provisioning virtual environments
    on Amazon infrastructure
What is Amazon EC2? (contʼd)



Elastic capacity
   easy scaling within minutes
Full Control
   root-level system access
Flexible
   multiple instance types & sizes
Can be used in combination with other services
   e.g. S3, SimpleDB, SQS, ...
Secure
   network security model
Amazon Concepts

AMI - Amazon Machine Images
 packaged-up environment for setting up and
 booting your instance
Availability Region
 geographically dispersed in separate geographic
 areas or countries
Availability Zone
 distinct datacenter locations that are engineered
 to be insulated from failures
External IPʼs
 mapped via NAT on Amazon routers
 1 external IP -> 1 internal IP (max 2 IPs / instance)
Security
   firewall security groups
Amazon Concepts (contʼd)

CU - Computing Unit
  1 CU = 1 GHz 2007 opteron/xeon processor
  each instance has a certain number of CUʼs
IAM - Identity Authentication Management
  AWS Credentials & X.509 Certificates
Load Balancing
  AWS auto-scaling
API
  Web API, Command-Line Tools
Management
  AWS Management Console
  Firefox Elasticfox plug-in
Security
    firewall security groups
Storage Solutions


EC2 Instance Default Local Storage

Ephemeral virtual disks that are integral part of EC2 VM
instance


Range from 160GB to 1.7 TB total space


Only use this for temporary storage
Storage Solutions (contʼd)


EBS - Elastic Block Share
Persistent disk volumes that can be mounted on your instances

1 GB to 1 TB per volume, default quota of 20 volumes

You can create any filesystem on EBS volumes

Easy to backup with snapshots

Usage:
 • Create volume (same availability region)
 • Attach to instance
 • Create filesystem
 • Mount filesystem in your operating system
Storage Solutions (contʼd)


S3 File Storage
Reliable, Web URL accessible file-based storage

Doesnʼt really store files, but objects, buckets and keys

Max 5GB per bucket, unlimited amount of buckets

Use:
 • Backups
 • Storing Bundled AMIʼs
</hype>
<?php

// Getting Started
// with Amazon EC2
echo "Hello Cloud!";

?>
Amazon EC2 sign up

Contact information
Billing information
    credit card
Pricing information
    since August 2006
The first Instance

Choosing an AMI
  from a list of Amazon AMI
  user uploaded AMIʼs
  (be careful of which AMIʼs you trust)
  typical LAMP setups available
     Gearman AMIʼs, memcached AMIʼs, MySQL AMIʼs, ...
Creating a key-pair
   = security credentials
   public/private keypair for authentication
Creating a security group
   = firewall rules
Access instance
   ssh -i keypair.pem root@ec2-
   <...>.compute-1.amazonaws.com
More tools


  RESTful / SOAP API
several php API clients available
 some maintained by Amazon


 Command Line Tools
 launch/terminate/... from CLI


        ElasticFox
           FF plugin
    similar to AWS console
Gatcha EC2 Setup


Management Servers         Application servers
 Inventory Management       Web Servers
 Configuration Management    Databases
 Monitoring Service         Memcache Servers
 DNS Service                Gearman
 Load Balancing Service     Smartfox
                            ...


Development server
Gatcha EC2 Setup (contʼd)

Inventory Management

 Which servers are running?
 What is their role?
 What is their instance id?

Read:
 SQLite database and API with list of instances
 and their core meta-data
Gatcha EC2 Setup (contʼd)

Configuration Management

 via puppet:
 “Open Source Configuration Management Tool”

 Custom declarative language to describe system configuration
 “Templates” to describe parts of the system
    users / services / packages
 On deploy
   Puppet puts managed systems into declared state


Read:
 Puppet installs right version of Apache, MySQL.
 Configures users, access, ...
Gatcha EC2 Setup (contʼd)

Monitoring

 via Zabbix:
 “Open Source Distributed Monitoring Solution”

 (Amazon offers “CloudWatch”)


Read:
 Periodic polling of all instances and get health &
 performance parameters. Trigger alerts when
 needed.
Gatcha EC2 Setup (contʼd)

Internal DNS Server

 via Bind9:
  “Berkeley Internet Name Domain DNS Server”

Read:
 Instances talk to each other via hosts names.
 hostname to ip translation via internal DNS
 server
Gatcha EC2 Setup (contʼd)

Load Balancing

 via Amazon Elastic Load Balancing

 = Amazon Service
   Amazon provides failover
 Public via Elastic IP
 Distributing incoming traffic between all instances in same
 availability zone
 Performs health checks (polling of instances)
 Also possible via own instances, eg. HaProxy AMIʼs


Read:
 Responsible for distributing user requests to
 array of web servers
Gatcha EC2 Setup (contʼd)

Applications Servers

Servers that need CPU &         Servers that need
Memory                          persistent storage
 web servers                     databases
 gearman                           order services: Amazon SDB, Amazon
   other services: Amazon SQS      RDS
 smartfox
 memcached
   other services: gear6



2 AMIʼs:
  instance store AMI
  EBS AMI
(Auto) Scaling

Typical set up of new web server

 custom AMI w/ Debian distribution

 boot script
   sets up SSH keys
   configures hostname
   updates internal DNS server


 further provisioning via Puppet

 ultimately
   health checks to Zabbix
   contact AmazonLoadBalancer API and start serving requests
(Auto) Scaling

Zabbix sees high load on web servers?

 Triggers bash script to create new web
  launch new instance on Amazon
  add to Inventory Management
  boot scripts and puppet bring it into production


Zabbix sees low load on web servers?

 Triggers bash script to terminate instance
Backups

Backups

 via:
     “Open Source Network Backup Solution”

Read:
 Separate service that polls Inventory
 Management for list of database.
 Create EBS snapshots for volumes of those DBs
... but ...
Gotchaʼs
Gotchaʼs

Default storage = instance storage (ephemeral)
 If instance goes down -> storage is gone
 Persistent storage: use EBS bases AMIʼs

No external static IP available for instances
 Use Elastic IP (only when necessary)

No guarantee that your instance will run forever

No need to worry about hardware, but... what is
Amazon doing, how, when, why?

Donʼt trust any AMI youʼll stumble upon
Some obstacles

Database server crashes

 Eventually found out it was related to kernel.

 No possibility to create own kernels.
 The most recent kernel on Amazon was 3 years
 old

 Experience with Amazon Support wasnʼt that
 smooth.
Some obstacles (contʼd)

Custom VPN

 Still working out the best way to create and
 manage the VPN over both Netlog & Gatcha
 servers.

 Amazon servers are a maze of networks. Difficult
 to control in custom VPN.

 Amazon offers Virtual Private Cloud
  Currently only in US-EAST
Extra services


RightScale
“Cloud Computing Management Platform”

A management tool, with different features atop of AWS, enabling
you to take full control of all concepts of your clouds

Also provides support and consultancy

You pay for what you get (pretty expensive)

Power users:
• Zynga (FarmVille, Maffia wars, Zynga Poker, ...)
• Playfish (Hotel City, Word Challenge, ...)
Extra services (contʼd)


Scalr
Cheaper alternative to RightScale
Part Open Source

Focus
  Easy scaling: scaling your database, application servers and
  load balancers
  Monitoring: automatically replaces servers when one fails
  Backups: makes automated backups to Amazon EBS
Impact on application

Focus on application needs, not on hardware
specs.

  What do I need today?
  Upgrade hardware when itʼs needed.
    (e.g.. start with normal instance for you db, upgrade to large, extra-
    large when needed.)
Impact on application (contʼd)

Dynamic Configuration

  e.g.. New Memcached server?
    Add it to your configuration files
    (Use consistent hashing algorithms for Memcached)
Impact on application (contʼd)

Stand alone system

  Try to identify components in your application
  that could stand alone.
  Loosely-coupled systems are easier to scale.
Impact on application (contʼd)

Auto Scaling not simple for database servers

 Adding MySQL slaves can be automated
 for scaling READS

 Scaling databases is still the hardest part

 AWS only helps us in scaling infrastructure.
 Scalability is more than that.
Impact on application (contʼd)

“Everything fails, all the time.”

   Avoid single points of failure.
   Design for failure.
Conclusion

Set-up

  Initial set-up is very simple and easy.
  Enough solutions, partners and documentation
  to help you out.

  For custom stuff, it gets harder.

    Integration with existing monitoring / backup /
    configuration management not that simple.
    You depend on Amazon.
    Thereʼs always the unexpected stuff.
Conclusion

The money?

  +    No expensive set-up costs.
       No long term commitments to make.
       No planning for hardware.
       Impact of performance improvements (cpu/
       bandwidth) has direct relation to money
       saved.

   -   Consultancy and Cloud manager
       tools are expensive.
Conclusion

Pricing Scenario per month

Set up:

 10 web & memcached servers

 2 gearman job processors

 2 databases

 1TB provisioned storage

 3TB data transfer from public ips

(these are not the Gatcha! figures)
Conclusion

Amazon Elastic Compute Cloud - EU (Ireland) Region

Amazon EC2 running Linux/UNIX

  $0.38 per Large Instance (m1.large) instance-hour (or partial hour)

  
    
   
   e.g.. 10 web, memcached, load balancer, ... servers

  
    
   
   
    10 * 24 * 31 = 7400 hours

  
    
   
   
    $2812

  $0.76 per Extra Large Instance (m1.xlarge) instance-hour (or partial
  hour)

  
    
   
   e.g.. 2 database servers

  
    
   
   
    2 * 24 * 31 = 1488 hours

  
    
   
   
    $1130

  $0.76 per High-CPU Extra Large Instance (c1.xlarge) instance-hour (or
  partial hour)

  
    
   
   e.g.. 2 gearman worker server

  
    
   
   
    2 * 24 * 31 = 1488 hours

  
    
   
   
    $1130
Conclusion

Amazon EC2 EBS

  $0.11 per GB-month of provisioned storage

  
    
   
  e.g.. 1TB-Mo

  
    
   
  
    $110

  $0.11 per 1 million I/O requests

  
    
   
   e.g.. 2OOM IOs

  
    
   
   
    $22

  $0.15 per GB-Month of snapshot data stored

  
    
   
  e.g.. 10GB-Mo

  
    
   
  
    $15

  $0.010 per 10,000 gets (when loading a snapshot)

  
   
   
    e.g.. 150k requests

  
   
   
    
    $0.15

  $0.010 per 1,000 puts (when saving a snapshot)

  
   
   
    e.g.. 30k requests

  
   
   
    
    $0.30
Conclusion

Elastic IP Addresses

  $0.01 per non-attached Elastic IP address per complete hour

  
    
   
  e.g.. 1 ip you want to keep in use

  
    
   
  
    1 * 24 * 31 = 744 hours

  
    
   
  
    $8

Elastic Load Balancing

  $0.028 per LoadBalancer-hour (or partial hour)

  
   
   
   e.g.. 1 load balancer

  
   
   
   
    1 * 24 * 31 = 744 hours

  
   
   
   
    $21

  $0.008 per GB Data Processed by the LoadBalancer

  
   
   
   insignificant
Conclusion

AWS Data Transfer (excluding Amazon CloudFront) (EU (Ireland) Region)

  $0.150 per GB - up to 10 TB / month data transfer out

  
   
   e.g.. 200GB

  
   
   
    $30

  $0.000 per GB - first 1 GB / month data transfer out

  
   
   
    $0

  $0.000 per GB - data transfer in (free Until June 30, 2010)

  
   
   
   $0

  $0.010 per GB - regional data transfer - in/out/between EC2 Avail Zones or
  when using public/elastic IP addresses or ELB

  
   
   e.g.. 3TG

  
   
   
    $30
Total:


$5308
Conclusion

The money? (contʼd)

  If you have a fairly static set up, own hardware
  will be cheaper.

  Not being able to quickly scale has itʼs price
  too.

  Ideally: use hybrid set up where Amazon helps
  in handling peak traffic or unexpected traffic.

  (Typical situation: 1/3 of servers only in use for 1/5
  of the time, to be able to handle peak.)
Conclusion




Get:
   Flexible resource handling
   Minimal capital expenses


Need:
  Efficiency needs automation
  Effectiveness needs experience
Conclusion



             AWS allows you to focus on
                        product
                             and
                          users
Amount of hardware available buys you time.
You can temporarily solve problems with
  “throwing hardware at the problem”
VELO PERS
FO R DE
A ME           High-score Handling
   R G
YOU                       Tournaments
                A ME    Challenge builder
           IA LG         Achievements
       S OC
  OP
AT


 Got an idea for a game? Great!
Gatcha For Game Developers



Game tracking
Start game and end game calls results in accurate gameplay
tracking and allows us to show who is playing the game at any
given moment, compute popularity, target games.

High-scores
You push your high-score to our API, we do the hard work of
creating different types of leader boards and rankings.

Achievements
Pushing achievements reached in your game, just takes one API
call, no configuration needed.
Gatcha For Game Developers



Multiplayer Games
We run SmartFox servers that enable you to build real-time
multiplayer games, with e.g.. in game chat


coming:

Challenges & Tournaments
Allow your game players to challenge each other, or build
challenges & contests yourself.
Gatcha For Game Developers

                  How to integrate?
Flash Games
We offer wrapper for AS3 and AS2 games with full
implementation of our API

Unity3D Games

OpenSocial Games
Talk to the supported containers via the Gatcha OpenSocial
Extension

Other Games
Simple iframe implementation. PHP Client API available for the
Gatcha API

           Start developing in our sandbox.
Job openings



Weʼre searching for great developers!

  PHP Talents
  Working on integrations and the gaming platform


  Flash Developers
  Working on Flash Games and the gaming platform


  Design Artists
  Designing games and integrations
Want to know more?
        Ask.

 pieter@netlog.com
jurriaan@netlog.com
  toon@netlog.com

 www.gatcha.com
sources
   developer.amazonwebservices.com
   hyperstratus.com
   rightscale.com
   eucalyptus.com
   jochen-lillich.de
   gatcha.com


pictures
    Iko - flickr.com/photos/iko/106957481
    Marco Fulle - antwrp.gsfc.nasa.gov
Developing Social Games in the Cloud

More Related Content

What's hot

AWS re:Invent 2016 recap (part 1)
AWS re:Invent 2016 recap (part 1)AWS re:Invent 2016 recap (part 1)
AWS re:Invent 2016 recap (part 1)Julien SIMON
 
Cloud Computing in PHP With the Amazon Web Services
Cloud Computing in PHP With the Amazon Web ServicesCloud Computing in PHP With the Amazon Web Services
Cloud Computing in PHP With the Amazon Web ServicesAmazon Web Services
 
Amazon EC2 - Masterclass - Pop-up Loft Tel Aviv
Amazon EC2 - Masterclass - Pop-up Loft Tel AvivAmazon EC2 - Masterclass - Pop-up Loft Tel Aviv
Amazon EC2 - Masterclass - Pop-up Loft Tel AvivAmazon Web Services
 
Overview of Amazon Web Services
Overview of Amazon Web ServicesOverview of Amazon Web Services
Overview of Amazon Web ServicesHarish Ganesan
 
Cloudformation & VPC, EC2, RDS
Cloudformation & VPC, EC2, RDSCloudformation & VPC, EC2, RDS
Cloudformation & VPC, EC2, RDSCan Abacıgil
 
2009.11.20 BPstudy#27 Amazon Web Service
2009.11.20 BPstudy#27 Amazon Web Service2009.11.20 BPstudy#27 Amazon Web Service
2009.11.20 BPstudy#27 Amazon Web ServiceHiro Fukami
 
AWS 201 - A Walk through the AWS Cloud: App Hosting on AWS - Games, Apps and ...
AWS 201 - A Walk through the AWS Cloud: App Hosting on AWS - Games, Apps and ...AWS 201 - A Walk through the AWS Cloud: App Hosting on AWS - Games, Apps and ...
AWS 201 - A Walk through the AWS Cloud: App Hosting on AWS - Games, Apps and ...Amazon Web Services
 
AWS re:Invent 2016: Simplifying Microsoft Architectures with AWS services (WI...
AWS re:Invent 2016: Simplifying Microsoft Architectures with AWS services (WI...AWS re:Invent 2016: Simplifying Microsoft Architectures with AWS services (WI...
AWS re:Invent 2016: Simplifying Microsoft Architectures with AWS services (WI...Amazon Web Services
 
AWS basics session
AWS basics sessionAWS basics session
AWS basics sessionSharad Gupta
 
AWS Webcast - Website Hosting in the Cloud
AWS Webcast - Website Hosting in the CloudAWS Webcast - Website Hosting in the Cloud
AWS Webcast - Website Hosting in the CloudAmazon Web Services
 
ARC302 AWS Cloud Design Patterns - AWS re: Invent 2012
ARC302 AWS Cloud Design Patterns - AWS re: Invent 2012ARC302 AWS Cloud Design Patterns - AWS re: Invent 2012
ARC302 AWS Cloud Design Patterns - AWS re: Invent 2012Amazon Web Services
 
Enterprise Grade SQL Server Deployments in AWS
Enterprise Grade SQL Server Deployments in AWSEnterprise Grade SQL Server Deployments in AWS
Enterprise Grade SQL Server Deployments in AWSAmazon Web Services
 
Storage with Amazon S3 and Amazon Glacier
Storage with Amazon S3 and Amazon GlacierStorage with Amazon S3 and Amazon Glacier
Storage with Amazon S3 and Amazon GlacierAmazon Web Services
 
AWS Webcast - Amazon EC2 Masterclass
AWS Webcast - Amazon EC2 MasterclassAWS Webcast - Amazon EC2 Masterclass
AWS Webcast - Amazon EC2 MasterclassAmazon Web Services
 
Programming Amazon Web Services for Beginners (1)
Programming Amazon Web Services for Beginners (1)Programming Amazon Web Services for Beginners (1)
Programming Amazon Web Services for Beginners (1)Markus Klems
 
Deploying a Disaster Recovery Site on AWS: Minimal Cost with Maximum Efficiency
Deploying a Disaster Recovery Site on AWS: Minimal Cost with Maximum EfficiencyDeploying a Disaster Recovery Site on AWS: Minimal Cost with Maximum Efficiency
Deploying a Disaster Recovery Site on AWS: Minimal Cost with Maximum EfficiencyAmazon Web Services
 
An introduction to AWS CloudFormation - Pop-up Loft Tel Aviv
An introduction to AWS CloudFormation - Pop-up Loft Tel AvivAn introduction to AWS CloudFormation - Pop-up Loft Tel Aviv
An introduction to AWS CloudFormation - Pop-up Loft Tel AvivAmazon Web Services
 

What's hot (20)

Amazon ECS Deep Dive
Amazon ECS Deep DiveAmazon ECS Deep Dive
Amazon ECS Deep Dive
 
AWS re:Invent 2016 recap (part 1)
AWS re:Invent 2016 recap (part 1)AWS re:Invent 2016 recap (part 1)
AWS re:Invent 2016 recap (part 1)
 
Comenzando com la nube hibrida
Comenzando com la nube hibrida Comenzando com la nube hibrida
Comenzando com la nube hibrida
 
Cloud Computing in PHP With the Amazon Web Services
Cloud Computing in PHP With the Amazon Web ServicesCloud Computing in PHP With the Amazon Web Services
Cloud Computing in PHP With the Amazon Web Services
 
Amazon EC2 - Masterclass - Pop-up Loft Tel Aviv
Amazon EC2 - Masterclass - Pop-up Loft Tel AvivAmazon EC2 - Masterclass - Pop-up Loft Tel Aviv
Amazon EC2 - Masterclass - Pop-up Loft Tel Aviv
 
Overview of Amazon Web Services
Overview of Amazon Web ServicesOverview of Amazon Web Services
Overview of Amazon Web Services
 
Cloudformation & VPC, EC2, RDS
Cloudformation & VPC, EC2, RDSCloudformation & VPC, EC2, RDS
Cloudformation & VPC, EC2, RDS
 
2009.11.20 BPstudy#27 Amazon Web Service
2009.11.20 BPstudy#27 Amazon Web Service2009.11.20 BPstudy#27 Amazon Web Service
2009.11.20 BPstudy#27 Amazon Web Service
 
AWS 201 - A Walk through the AWS Cloud: App Hosting on AWS - Games, Apps and ...
AWS 201 - A Walk through the AWS Cloud: App Hosting on AWS - Games, Apps and ...AWS 201 - A Walk through the AWS Cloud: App Hosting on AWS - Games, Apps and ...
AWS 201 - A Walk through the AWS Cloud: App Hosting on AWS - Games, Apps and ...
 
AWS re:Invent 2016: Simplifying Microsoft Architectures with AWS services (WI...
AWS re:Invent 2016: Simplifying Microsoft Architectures with AWS services (WI...AWS re:Invent 2016: Simplifying Microsoft Architectures with AWS services (WI...
AWS re:Invent 2016: Simplifying Microsoft Architectures with AWS services (WI...
 
AWS basics session
AWS basics sessionAWS basics session
AWS basics session
 
AWS Webcast - Website Hosting in the Cloud
AWS Webcast - Website Hosting in the CloudAWS Webcast - Website Hosting in the Cloud
AWS Webcast - Website Hosting in the Cloud
 
ARC302 AWS Cloud Design Patterns - AWS re: Invent 2012
ARC302 AWS Cloud Design Patterns - AWS re: Invent 2012ARC302 AWS Cloud Design Patterns - AWS re: Invent 2012
ARC302 AWS Cloud Design Patterns - AWS re: Invent 2012
 
Enterprise Grade SQL Server Deployments in AWS
Enterprise Grade SQL Server Deployments in AWSEnterprise Grade SQL Server Deployments in AWS
Enterprise Grade SQL Server Deployments in AWS
 
Storage with Amazon S3 and Amazon Glacier
Storage with Amazon S3 and Amazon GlacierStorage with Amazon S3 and Amazon Glacier
Storage with Amazon S3 and Amazon Glacier
 
Your First Week with Amazon EC2
Your First Week with Amazon EC2Your First Week with Amazon EC2
Your First Week with Amazon EC2
 
AWS Webcast - Amazon EC2 Masterclass
AWS Webcast - Amazon EC2 MasterclassAWS Webcast - Amazon EC2 Masterclass
AWS Webcast - Amazon EC2 Masterclass
 
Programming Amazon Web Services for Beginners (1)
Programming Amazon Web Services for Beginners (1)Programming Amazon Web Services for Beginners (1)
Programming Amazon Web Services for Beginners (1)
 
Deploying a Disaster Recovery Site on AWS: Minimal Cost with Maximum Efficiency
Deploying a Disaster Recovery Site on AWS: Minimal Cost with Maximum EfficiencyDeploying a Disaster Recovery Site on AWS: Minimal Cost with Maximum Efficiency
Deploying a Disaster Recovery Site on AWS: Minimal Cost with Maximum Efficiency
 
An introduction to AWS CloudFormation - Pop-up Loft Tel Aviv
An introduction to AWS CloudFormation - Pop-up Loft Tel AvivAn introduction to AWS CloudFormation - Pop-up Loft Tel Aviv
An introduction to AWS CloudFormation - Pop-up Loft Tel Aviv
 

Viewers also liked

Viewers also liked (8)

Corrubedo
CorrubedoCorrubedo
Corrubedo
 
Golden gondola pw
Golden gondola pwGolden gondola pw
Golden gondola pw
 
OGD in Afrika
OGD in AfrikaOGD in Afrika
OGD in Afrika
 
Blog Instead!
Blog Instead!Blog Instead!
Blog Instead!
 
君はだれの歌?
君はだれの歌?君はだれの歌?
君はだれの歌?
 
Josep vila
Josep vilaJosep vila
Josep vila
 
ARGuing European Union Project-Games in Education
ARGuing European Union Project-Games in EducationARGuing European Union Project-Games in Education
ARGuing European Union Project-Games in Education
 
3 Core Principles of Kung Fu
3 Core Principles of Kung Fu3 Core Principles of Kung Fu
3 Core Principles of Kung Fu
 

Similar to Developing Social Games in the Cloud

Aws-What You Need to Know_Simon Elisha
Aws-What You Need to Know_Simon ElishaAws-What You Need to Know_Simon Elisha
Aws-What You Need to Know_Simon ElishaHelen Rogers
 
Sweet! Running SugarCRM on the Amazon Cloud | SugarCon 2011
Sweet! Running SugarCRM on the Amazon Cloud | SugarCon 2011Sweet! Running SugarCRM on the Amazon Cloud | SugarCon 2011
Sweet! Running SugarCRM on the Amazon Cloud | SugarCon 2011SugarCRM
 
AWS Webcast - Explore the AWS Cloud for Government
AWS Webcast - Explore the AWS Cloud for GovernmentAWS Webcast - Explore the AWS Cloud for Government
AWS Webcast - Explore the AWS Cloud for GovernmentAmazon Web Services
 
Cloud computing-Practical Example
Cloud computing-Practical ExampleCloud computing-Practical Example
Cloud computing-Practical ExampleTasawar Gulzar
 
Increase Speed and Agility with Amazon Web Services
Increase Speed and Agility with Amazon Web ServicesIncrease Speed and Agility with Amazon Web Services
Increase Speed and Agility with Amazon Web ServicesAmazon Web Services
 
Increase Speed and Agility with Amazon Web Services
Increase Speed and Agility with Amazon Web ServicesIncrease Speed and Agility with Amazon Web Services
Increase Speed and Agility with Amazon Web ServicesAmazon Web Services
 
AWS re:Invent 2016 Day 1 Keynote re:Cap
AWS re:Invent 2016 Day 1 Keynote re:CapAWS re:Invent 2016 Day 1 Keynote re:Cap
AWS re:Invent 2016 Day 1 Keynote re:CapIan Massingham
 
AWS re:Invent 2016 Day 1 Keynote re:Cap
AWS re:Invent 2016 Day 1 Keynote re:CapAWS re:Invent 2016 Day 1 Keynote re:Cap
AWS re:Invent 2016 Day 1 Keynote re:CapAdrian Hornsby
 
AWS Services Overview and Quarterly Update - April 2017 AWS Online Tech Talks
AWS Services Overview and Quarterly Update - April 2017 AWS Online Tech TalksAWS Services Overview and Quarterly Update - April 2017 AWS Online Tech Talks
AWS Services Overview and Quarterly Update - April 2017 AWS Online Tech TalksAmazon Web Services
 
AWS Services Overview and Quarterly Update - April 2017 AWS Online Tech Talks
AWS Services Overview and Quarterly Update - April 2017 AWS Online Tech TalksAWS Services Overview and Quarterly Update - April 2017 AWS Online Tech Talks
AWS Services Overview and Quarterly Update - April 2017 AWS Online Tech TalksAmazon Web Services
 
From your First Migration to Mass migrations.
From your First Migration to Mass migrations. From your First Migration to Mass migrations.
From your First Migration to Mass migrations. Amazon Web Services
 
Technical Essentials Training: AWS Innovate Ottawa
Technical Essentials Training: AWS Innovate OttawaTechnical Essentials Training: AWS Innovate Ottawa
Technical Essentials Training: AWS Innovate OttawaAmazon Web Services
 
O'Reilly Webcast: Architecting Applications For The Cloud
O'Reilly Webcast: Architecting Applications For The CloudO'Reilly Webcast: Architecting Applications For The Cloud
O'Reilly Webcast: Architecting Applications For The CloudO'Reilly Media
 
Architecting Cloud Apps
Architecting Cloud AppsArchitecting Cloud Apps
Architecting Cloud Appsjineshvaria
 
Cloud for Developers: Azure vs. Google App Engine vs. Amazon vs. AppHarbor
Cloud for Developers: Azure vs. Google App Engine vs. Amazon vs. AppHarborCloud for Developers: Azure vs. Google App Engine vs. Amazon vs. AppHarbor
Cloud for Developers: Azure vs. Google App Engine vs. Amazon vs. AppHarborSvetlin Nakov
 
Java Developer on AWS 在AWS上開發Java應用
Java Developer on AWS 在AWS上開發Java應用Java Developer on AWS 在AWS上開發Java應用
Java Developer on AWS 在AWS上開發Java應用Amazon Web Services
 

Similar to Developing Social Games in the Cloud (20)

Aws-What You Need to Know_Simon Elisha
Aws-What You Need to Know_Simon ElishaAws-What You Need to Know_Simon Elisha
Aws-What You Need to Know_Simon Elisha
 
Sweet! Running SugarCRM on the Amazon Cloud | SugarCon 2011
Sweet! Running SugarCRM on the Amazon Cloud | SugarCon 2011Sweet! Running SugarCRM on the Amazon Cloud | SugarCon 2011
Sweet! Running SugarCRM on the Amazon Cloud | SugarCon 2011
 
AMAZON CLOUD Course Content
AMAZON CLOUD Course ContentAMAZON CLOUD Course Content
AMAZON CLOUD Course Content
 
Aws coi7
Aws coi7Aws coi7
Aws coi7
 
AWS Webcast - Explore the AWS Cloud for Government
AWS Webcast - Explore the AWS Cloud for GovernmentAWS Webcast - Explore the AWS Cloud for Government
AWS Webcast - Explore the AWS Cloud for Government
 
Cloud computing-Practical Example
Cloud computing-Practical ExampleCloud computing-Practical Example
Cloud computing-Practical Example
 
Increase Speed and Agility with Amazon Web Services
Increase Speed and Agility with Amazon Web ServicesIncrease Speed and Agility with Amazon Web Services
Increase Speed and Agility with Amazon Web Services
 
Increase Speed and Agility with Amazon Web Services
Increase Speed and Agility with Amazon Web ServicesIncrease Speed and Agility with Amazon Web Services
Increase Speed and Agility with Amazon Web Services
 
Aws class demo
Aws class demoAws class demo
Aws class demo
 
AWS re:Invent 2016 Day 1 Keynote re:Cap
AWS re:Invent 2016 Day 1 Keynote re:CapAWS re:Invent 2016 Day 1 Keynote re:Cap
AWS re:Invent 2016 Day 1 Keynote re:Cap
 
AWS re:Invent 2016 Day 1 Keynote re:Cap
AWS re:Invent 2016 Day 1 Keynote re:CapAWS re:Invent 2016 Day 1 Keynote re:Cap
AWS re:Invent 2016 Day 1 Keynote re:Cap
 
AWS Services Overview and Quarterly Update - April 2017 AWS Online Tech Talks
AWS Services Overview and Quarterly Update - April 2017 AWS Online Tech TalksAWS Services Overview and Quarterly Update - April 2017 AWS Online Tech Talks
AWS Services Overview and Quarterly Update - April 2017 AWS Online Tech Talks
 
AWS Services Overview and Quarterly Update - April 2017 AWS Online Tech Talks
AWS Services Overview and Quarterly Update - April 2017 AWS Online Tech TalksAWS Services Overview and Quarterly Update - April 2017 AWS Online Tech Talks
AWS Services Overview and Quarterly Update - April 2017 AWS Online Tech Talks
 
From your First Migration to Mass migrations.
From your First Migration to Mass migrations. From your First Migration to Mass migrations.
From your First Migration to Mass migrations.
 
Technical Essentials Training: AWS Innovate Ottawa
Technical Essentials Training: AWS Innovate OttawaTechnical Essentials Training: AWS Innovate Ottawa
Technical Essentials Training: AWS Innovate Ottawa
 
O'Reilly Webcast: Architecting Applications For The Cloud
O'Reilly Webcast: Architecting Applications For The CloudO'Reilly Webcast: Architecting Applications For The Cloud
O'Reilly Webcast: Architecting Applications For The Cloud
 
Architecting Cloud Apps
Architecting Cloud AppsArchitecting Cloud Apps
Architecting Cloud Apps
 
Cloud for Developers: Azure vs. Google App Engine vs. Amazon vs. AppHarbor
Cloud for Developers: Azure vs. Google App Engine vs. Amazon vs. AppHarborCloud for Developers: Azure vs. Google App Engine vs. Amazon vs. AppHarbor
Cloud for Developers: Azure vs. Google App Engine vs. Amazon vs. AppHarbor
 
Java Developer on AWS 在AWS上開發Java應用
Java Developer on AWS 在AWS上開發Java應用Java Developer on AWS 在AWS上開發Java應用
Java Developer on AWS 在AWS上開發Java應用
 
Java-Developer-on-AWS
Java-Developer-on-AWSJava-Developer-on-AWS
Java-Developer-on-AWS
 

More from Jurriaan Persyn

An Introduction to Elastic Search.
An Introduction to Elastic Search.An Introduction to Elastic Search.
An Introduction to Elastic Search.Jurriaan Persyn
 
Introduction to memcached
Introduction to memcachedIntroduction to memcached
Introduction to memcachedJurriaan Persyn
 
Database Sharding At Netlog
Database Sharding At NetlogDatabase Sharding At Netlog
Database Sharding At NetlogJurriaan Persyn
 
Database Sharding at Netlog
Database Sharding at NetlogDatabase Sharding at Netlog
Database Sharding at NetlogJurriaan Persyn
 
Meet the OpenSocial Containers: Netlog
Meet the OpenSocial Containers: NetlogMeet the OpenSocial Containers: Netlog
Meet the OpenSocial Containers: NetlogJurriaan Persyn
 
Get Your Frontend Sorted (Barcamp Gent 2008)
Get Your Frontend Sorted (Barcamp Gent 2008)Get Your Frontend Sorted (Barcamp Gent 2008)
Get Your Frontend Sorted (Barcamp Gent 2008)Jurriaan Persyn
 

More from Jurriaan Persyn (7)

An Introduction to Elastic Search.
An Introduction to Elastic Search.An Introduction to Elastic Search.
An Introduction to Elastic Search.
 
Engagor Walkthrough
Engagor WalkthroughEngagor Walkthrough
Engagor Walkthrough
 
Introduction to memcached
Introduction to memcachedIntroduction to memcached
Introduction to memcached
 
Database Sharding At Netlog
Database Sharding At NetlogDatabase Sharding At Netlog
Database Sharding At Netlog
 
Database Sharding at Netlog
Database Sharding at NetlogDatabase Sharding at Netlog
Database Sharding at Netlog
 
Meet the OpenSocial Containers: Netlog
Meet the OpenSocial Containers: NetlogMeet the OpenSocial Containers: Netlog
Meet the OpenSocial Containers: Netlog
 
Get Your Frontend Sorted (Barcamp Gent 2008)
Get Your Frontend Sorted (Barcamp Gent 2008)Get Your Frontend Sorted (Barcamp Gent 2008)
Get Your Frontend Sorted (Barcamp Gent 2008)
 

Recently uploaded

How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyesHow to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyesThousandEyes
 
React Native vs Ionic - The Best Mobile App Framework
React Native vs Ionic - The Best Mobile App FrameworkReact Native vs Ionic - The Best Mobile App Framework
React Native vs Ionic - The Best Mobile App FrameworkPixlogix Infotech
 
Varsha Sewlal- Cyber Attacks on Critical Critical Infrastructure
Varsha Sewlal- Cyber Attacks on Critical Critical InfrastructureVarsha Sewlal- Cyber Attacks on Critical Critical Infrastructure
Varsha Sewlal- Cyber Attacks on Critical Critical Infrastructureitnewsafrica
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity PlanDatabarracks
 
Generative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdfGenerative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdfIngrid Airi González
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024Lonnie McRorey
 
So einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdfSo einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdfpanagenda
 
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxA Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxLoriGlavin3
 
Generative AI - Gitex v1Generative AI - Gitex v1.pptx
Generative AI - Gitex v1Generative AI - Gitex v1.pptxGenerative AI - Gitex v1Generative AI - Gitex v1.pptx
Generative AI - Gitex v1Generative AI - Gitex v1.pptxfnnc6jmgwh
 
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...Alkin Tezuysal
 
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024BookNet Canada
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.Curtis Poe
 
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxDigital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxLoriGlavin3
 
Data governance with Unity Catalog Presentation
Data governance with Unity Catalog PresentationData governance with Unity Catalog Presentation
Data governance with Unity Catalog PresentationKnoldus Inc.
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsPixlogix Infotech
 
The State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxThe State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxLoriGlavin3
 
Bridging Between CAD & GIS: 6 Ways to Automate Your Data Integration
Bridging Between CAD & GIS:  6 Ways to Automate Your Data IntegrationBridging Between CAD & GIS:  6 Ways to Automate Your Data Integration
Bridging Between CAD & GIS: 6 Ways to Automate Your Data Integrationmarketing932765
 
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxLoriGlavin3
 
Potential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and InsightsPotential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and InsightsRavi Sanghani
 

Recently uploaded (20)

How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyesHow to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
 
React Native vs Ionic - The Best Mobile App Framework
React Native vs Ionic - The Best Mobile App FrameworkReact Native vs Ionic - The Best Mobile App Framework
React Native vs Ionic - The Best Mobile App Framework
 
Varsha Sewlal- Cyber Attacks on Critical Critical Infrastructure
Varsha Sewlal- Cyber Attacks on Critical Critical InfrastructureVarsha Sewlal- Cyber Attacks on Critical Critical Infrastructure
Varsha Sewlal- Cyber Attacks on Critical Critical Infrastructure
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity Plan
 
Generative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdfGenerative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdf
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024
 
So einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdfSo einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdf
 
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxA Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
 
Generative AI - Gitex v1Generative AI - Gitex v1.pptx
Generative AI - Gitex v1Generative AI - Gitex v1.pptxGenerative AI - Gitex v1Generative AI - Gitex v1.pptx
Generative AI - Gitex v1Generative AI - Gitex v1.pptx
 
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...
 
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.
 
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxDigital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
 
Data governance with Unity Catalog Presentation
Data governance with Unity Catalog PresentationData governance with Unity Catalog Presentation
Data governance with Unity Catalog Presentation
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and Cons
 
The State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxThe State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptx
 
Bridging Between CAD & GIS: 6 Ways to Automate Your Data Integration
Bridging Between CAD & GIS:  6 Ways to Automate Your Data IntegrationBridging Between CAD & GIS:  6 Ways to Automate Your Data Integration
Bridging Between CAD & GIS: 6 Ways to Automate Your Data Integration
 
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
 
Potential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and InsightsPotential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and Insights
 

Developing Social Games in the Cloud

  • 1. Developing Social Games in the Cloud Pieter De Schepper Jurriaan Persyn
  • 2. Tags Cloud Computing IaaS (Infrastructure as a Service) PaaS (Platform as a Service) AWS (Amazon Web Services) Amazon EC2 Social Applications Multi Platform Game Development
  • 3. Who we are Pieter De Schepper Jurriaan Persyn previously working on Netlog previously part of the front-end APIs, OpenSocial & other development team focusing on integrations in Netlog user features Netlog team member for 3 Netlog team member for 4 years years
  • 4. Gatcha! wants to bring people together through gaming wherever they are.
  • 5. Gatcha! builds and distributes games to social networks and web-portals.
  • 6. Who we are For Game Developers For Site Owners We offer: We offer: • Reach & distribution • Quality gaming content • Social Enrichment • Social engagement • Features • Monetization • High-scores • Achievements • Challenges • ... • Monetization • Localization
  • 7. Every single day: over 1M game plays over 2200 days of play time
  • 8. Where we come from Grown and successful as one of Netlogʼs features Since Jan 2010 a dedicated team of 8 with a more stand-alone approach to go cross-platform.
  • 9.
  • 10. UC Berkeley RAD Lab Definition Huge Resources The illusion of infinite computing resources available on demand, thereby eliminating the need for users to plan far ahead for provisioning resources. No Commitment The elimination of an up front commitment by users, thereby allowing companies to start small and increase resources only when there is an increase in their needs. Pay By The Drink The ability to pay for use of computing resources on a short-term basis as needed (e.g., processors by hour and storage by the day) and release them as needed.
  • 11. Types Infrastructure as a Service (IaaS) Amazon EC2, GoGrid, Eucalyptus, ... Platform as a Service (PaaS) Google AppEngine, Windows Azure, Amazon Simple DB, ... Software as a Service (SaaS) Gmail, Google Documents, ...
  • 12. Why IaaS? You donʼt want to worry ... • about building an expensive datacenter • about the location of your datacenter • about finding the right ITS team & field engineers • about broken discs • about hardware getting out of fashion • ... (minimal CAPEX, Capital Expenditures)
  • 13. But? We have a dedicated team We have a datacenter We have negotiated contracts So, why?
  • 14. Our main goal ... • instant scaling • the promise of hardware on demand • handling peaks in traffic • handling heavy single tasks • cost optimization
  • 15. Why Amazon? Simple Storage Service (S3) since March 2006 Elastic Cloud Computing (EC2) since August 2006 Almost immediately de facto standard for cloud computing Others: Rackspace, GoGrid
  • 16. Amazon Web Services IaaS S3: Simple Storage Service EC2: Elastic Compute Cloud EBS: Elastic Block Storage PaaS SQS: Simple Queue System RDS: Relational Database Service SDB: SimpleDB Cloudfront: Content Delivery
  • 17. What is Amazon EC2? Amazon EC2 is a virtual computer grid provisioning virtual environments on Amazon infrastructure
  • 18. What is Amazon EC2? (contʼd) Elastic capacity easy scaling within minutes Full Control root-level system access Flexible multiple instance types & sizes Can be used in combination with other services e.g. S3, SimpleDB, SQS, ... Secure network security model
  • 19. Amazon Concepts AMI - Amazon Machine Images packaged-up environment for setting up and booting your instance Availability Region geographically dispersed in separate geographic areas or countries Availability Zone distinct datacenter locations that are engineered to be insulated from failures External IPʼs mapped via NAT on Amazon routers 1 external IP -> 1 internal IP (max 2 IPs / instance) Security firewall security groups
  • 20. Amazon Concepts (contʼd) CU - Computing Unit 1 CU = 1 GHz 2007 opteron/xeon processor each instance has a certain number of CUʼs IAM - Identity Authentication Management AWS Credentials & X.509 Certificates Load Balancing AWS auto-scaling API Web API, Command-Line Tools Management AWS Management Console Firefox Elasticfox plug-in Security firewall security groups
  • 21. Storage Solutions EC2 Instance Default Local Storage Ephemeral virtual disks that are integral part of EC2 VM instance Range from 160GB to 1.7 TB total space Only use this for temporary storage
  • 22. Storage Solutions (contʼd) EBS - Elastic Block Share Persistent disk volumes that can be mounted on your instances 1 GB to 1 TB per volume, default quota of 20 volumes You can create any filesystem on EBS volumes Easy to backup with snapshots Usage: • Create volume (same availability region) • Attach to instance • Create filesystem • Mount filesystem in your operating system
  • 23. Storage Solutions (contʼd) S3 File Storage Reliable, Web URL accessible file-based storage Doesnʼt really store files, but objects, buckets and keys Max 5GB per bucket, unlimited amount of buckets Use: • Backups • Storing Bundled AMIʼs
  • 25. <?php // Getting Started // with Amazon EC2 echo "Hello Cloud!"; ?>
  • 26.
  • 27. Amazon EC2 sign up Contact information Billing information credit card Pricing information since August 2006
  • 28.
  • 29. The first Instance Choosing an AMI from a list of Amazon AMI user uploaded AMIʼs (be careful of which AMIʼs you trust) typical LAMP setups available Gearman AMIʼs, memcached AMIʼs, MySQL AMIʼs, ... Creating a key-pair = security credentials public/private keypair for authentication Creating a security group = firewall rules Access instance ssh -i keypair.pem root@ec2- <...>.compute-1.amazonaws.com
  • 30. More tools RESTful / SOAP API several php API clients available some maintained by Amazon Command Line Tools launch/terminate/... from CLI ElasticFox FF plugin similar to AWS console
  • 31. Gatcha EC2 Setup Management Servers Application servers Inventory Management Web Servers Configuration Management Databases Monitoring Service Memcache Servers DNS Service Gearman Load Balancing Service Smartfox ... Development server
  • 32. Gatcha EC2 Setup (contʼd) Inventory Management Which servers are running? What is their role? What is their instance id? Read: SQLite database and API with list of instances and their core meta-data
  • 33. Gatcha EC2 Setup (contʼd) Configuration Management via puppet: “Open Source Configuration Management Tool” Custom declarative language to describe system configuration “Templates” to describe parts of the system users / services / packages On deploy Puppet puts managed systems into declared state Read: Puppet installs right version of Apache, MySQL. Configures users, access, ...
  • 34. Gatcha EC2 Setup (contʼd) Monitoring via Zabbix: “Open Source Distributed Monitoring Solution” (Amazon offers “CloudWatch”) Read: Periodic polling of all instances and get health & performance parameters. Trigger alerts when needed.
  • 35. Gatcha EC2 Setup (contʼd) Internal DNS Server via Bind9: “Berkeley Internet Name Domain DNS Server” Read: Instances talk to each other via hosts names. hostname to ip translation via internal DNS server
  • 36. Gatcha EC2 Setup (contʼd) Load Balancing via Amazon Elastic Load Balancing = Amazon Service Amazon provides failover Public via Elastic IP Distributing incoming traffic between all instances in same availability zone Performs health checks (polling of instances) Also possible via own instances, eg. HaProxy AMIʼs Read: Responsible for distributing user requests to array of web servers
  • 37. Gatcha EC2 Setup (contʼd) Applications Servers Servers that need CPU & Servers that need Memory persistent storage web servers databases gearman order services: Amazon SDB, Amazon other services: Amazon SQS RDS smartfox memcached other services: gear6 2 AMIʼs: instance store AMI EBS AMI
  • 38. (Auto) Scaling Typical set up of new web server custom AMI w/ Debian distribution boot script sets up SSH keys configures hostname updates internal DNS server further provisioning via Puppet ultimately health checks to Zabbix contact AmazonLoadBalancer API and start serving requests
  • 39. (Auto) Scaling Zabbix sees high load on web servers? Triggers bash script to create new web launch new instance on Amazon add to Inventory Management boot scripts and puppet bring it into production Zabbix sees low load on web servers? Triggers bash script to terminate instance
  • 40. Backups Backups via: “Open Source Network Backup Solution” Read: Separate service that polls Inventory Management for list of database. Create EBS snapshots for volumes of those DBs
  • 43. Gotchaʼs Default storage = instance storage (ephemeral) If instance goes down -> storage is gone Persistent storage: use EBS bases AMIʼs No external static IP available for instances Use Elastic IP (only when necessary) No guarantee that your instance will run forever No need to worry about hardware, but... what is Amazon doing, how, when, why? Donʼt trust any AMI youʼll stumble upon
  • 44. Some obstacles Database server crashes Eventually found out it was related to kernel. No possibility to create own kernels. The most recent kernel on Amazon was 3 years old Experience with Amazon Support wasnʼt that smooth.
  • 45. Some obstacles (contʼd) Custom VPN Still working out the best way to create and manage the VPN over both Netlog & Gatcha servers. Amazon servers are a maze of networks. Difficult to control in custom VPN. Amazon offers Virtual Private Cloud Currently only in US-EAST
  • 46. Extra services RightScale “Cloud Computing Management Platform” A management tool, with different features atop of AWS, enabling you to take full control of all concepts of your clouds Also provides support and consultancy You pay for what you get (pretty expensive) Power users: • Zynga (FarmVille, Maffia wars, Zynga Poker, ...) • Playfish (Hotel City, Word Challenge, ...)
  • 47. Extra services (contʼd) Scalr Cheaper alternative to RightScale Part Open Source Focus Easy scaling: scaling your database, application servers and load balancers Monitoring: automatically replaces servers when one fails Backups: makes automated backups to Amazon EBS
  • 48. Impact on application Focus on application needs, not on hardware specs. What do I need today? Upgrade hardware when itʼs needed. (e.g.. start with normal instance for you db, upgrade to large, extra- large when needed.)
  • 49. Impact on application (contʼd) Dynamic Configuration e.g.. New Memcached server? Add it to your configuration files (Use consistent hashing algorithms for Memcached)
  • 50. Impact on application (contʼd) Stand alone system Try to identify components in your application that could stand alone. Loosely-coupled systems are easier to scale.
  • 51. Impact on application (contʼd) Auto Scaling not simple for database servers Adding MySQL slaves can be automated for scaling READS Scaling databases is still the hardest part AWS only helps us in scaling infrastructure. Scalability is more than that.
  • 52. Impact on application (contʼd) “Everything fails, all the time.” Avoid single points of failure. Design for failure.
  • 53. Conclusion Set-up Initial set-up is very simple and easy. Enough solutions, partners and documentation to help you out. For custom stuff, it gets harder. Integration with existing monitoring / backup / configuration management not that simple. You depend on Amazon. Thereʼs always the unexpected stuff.
  • 54. Conclusion The money? + No expensive set-up costs. No long term commitments to make. No planning for hardware. Impact of performance improvements (cpu/ bandwidth) has direct relation to money saved. - Consultancy and Cloud manager tools are expensive.
  • 55. Conclusion Pricing Scenario per month Set up: 10 web & memcached servers 2 gearman job processors 2 databases 1TB provisioned storage 3TB data transfer from public ips (these are not the Gatcha! figures)
  • 56. Conclusion Amazon Elastic Compute Cloud - EU (Ireland) Region Amazon EC2 running Linux/UNIX $0.38 per Large Instance (m1.large) instance-hour (or partial hour) e.g.. 10 web, memcached, load balancer, ... servers 10 * 24 * 31 = 7400 hours $2812 $0.76 per Extra Large Instance (m1.xlarge) instance-hour (or partial hour) e.g.. 2 database servers 2 * 24 * 31 = 1488 hours $1130 $0.76 per High-CPU Extra Large Instance (c1.xlarge) instance-hour (or partial hour) e.g.. 2 gearman worker server 2 * 24 * 31 = 1488 hours $1130
  • 57. Conclusion Amazon EC2 EBS $0.11 per GB-month of provisioned storage e.g.. 1TB-Mo $110 $0.11 per 1 million I/O requests e.g.. 2OOM IOs $22 $0.15 per GB-Month of snapshot data stored e.g.. 10GB-Mo $15 $0.010 per 10,000 gets (when loading a snapshot) e.g.. 150k requests $0.15 $0.010 per 1,000 puts (when saving a snapshot) e.g.. 30k requests $0.30
  • 58. Conclusion Elastic IP Addresses $0.01 per non-attached Elastic IP address per complete hour e.g.. 1 ip you want to keep in use 1 * 24 * 31 = 744 hours $8 Elastic Load Balancing $0.028 per LoadBalancer-hour (or partial hour) e.g.. 1 load balancer 1 * 24 * 31 = 744 hours $21 $0.008 per GB Data Processed by the LoadBalancer insignificant
  • 59. Conclusion AWS Data Transfer (excluding Amazon CloudFront) (EU (Ireland) Region) $0.150 per GB - up to 10 TB / month data transfer out e.g.. 200GB $30 $0.000 per GB - first 1 GB / month data transfer out $0 $0.000 per GB - data transfer in (free Until June 30, 2010) $0 $0.010 per GB - regional data transfer - in/out/between EC2 Avail Zones or when using public/elastic IP addresses or ELB e.g.. 3TG $30
  • 61. Conclusion The money? (contʼd) If you have a fairly static set up, own hardware will be cheaper. Not being able to quickly scale has itʼs price too. Ideally: use hybrid set up where Amazon helps in handling peak traffic or unexpected traffic. (Typical situation: 1/3 of servers only in use for 1/5 of the time, to be able to handle peak.)
  • 62. Conclusion Get: Flexible resource handling Minimal capital expenses Need: Efficiency needs automation Effectiveness needs experience
  • 63.
  • 64.
  • 65. Conclusion AWS allows you to focus on product and users Amount of hardware available buys you time. You can temporarily solve problems with “throwing hardware at the problem”
  • 67. A ME High-score Handling R G YOU Tournaments A ME Challenge builder IA LG Achievements S OC OP AT Got an idea for a game? Great!
  • 68. Gatcha For Game Developers Game tracking Start game and end game calls results in accurate gameplay tracking and allows us to show who is playing the game at any given moment, compute popularity, target games. High-scores You push your high-score to our API, we do the hard work of creating different types of leader boards and rankings. Achievements Pushing achievements reached in your game, just takes one API call, no configuration needed.
  • 69. Gatcha For Game Developers Multiplayer Games We run SmartFox servers that enable you to build real-time multiplayer games, with e.g.. in game chat coming: Challenges & Tournaments Allow your game players to challenge each other, or build challenges & contests yourself.
  • 70. Gatcha For Game Developers How to integrate? Flash Games We offer wrapper for AS3 and AS2 games with full implementation of our API Unity3D Games OpenSocial Games Talk to the supported containers via the Gatcha OpenSocial Extension Other Games Simple iframe implementation. PHP Client API available for the Gatcha API Start developing in our sandbox.
  • 71.
  • 72.
  • 73.
  • 74. Job openings Weʼre searching for great developers! PHP Talents Working on integrations and the gaming platform Flash Developers Working on Flash Games and the gaming platform Design Artists Designing games and integrations
  • 75. Want to know more? Ask. pieter@netlog.com jurriaan@netlog.com toon@netlog.com www.gatcha.com
  • 76. sources developer.amazonwebservices.com hyperstratus.com rightscale.com eucalyptus.com jochen-lillich.de gatcha.com pictures Iko - flickr.com/photos/iko/106957481 Marco Fulle - antwrp.gsfc.nasa.gov

Editor's Notes