2. Bulkypix in a few numbers
A 40 person company
A catalog of over a 100 games and mobile applications
15 million users
International publisher
Facebook and mobile platform
developper
Expert in mobile marketing, PR and
social networks
3. Online Game Challenges
Online platform requirements … and risks
State of the art
Business continuity
Scalability
Controlled costs
Service disruption due to
Server overload
Datacenter failure
Security issues
Cheating
Data theft
All of those result in loss of
revenue and reputation
4. Initial Investment
Bulkypix requirements Traditional Server Platform
Linux servers
A turnkey MySQL DB
Datacenter
Hardware (servers, storage)
Network (switches, routers,
load balancers)
Security (firewalls)
Bandwidth
Systems & networks
administration !
High initial investment (time
and money) !
5. Cloud Computing
Linux servers: AWS EC2 (IaaS)
Run pretty much any linux distro you want/need
Snapshot servers anytime you want
MySQL DB: AWS RDS (PaaS)
Turnkey MySQL server (runs Oracle and MSSQL too)
provision the CPU/storage that you need now
increase CPU/storage later if necessary
snapshots
can be highly available (clusters !)
7. Business Continuity
Bulkypix requirements Traditional Server Platform
Server failover
Load balancing
What happens when a
datacenter crashes ?
Load balancers / failover
Service Level Agreements
Multiple Datacenters
8. High Availability
AWS RDS – Multiple Availability Zones
Standby Master
Automatic Failover
Transparent Snapshots (no service interruption)
AWS EC2 – ELB (Elastic Load Balancing)
Failover in case of server failure
Load balancing !
9. RDS
MySQL Database
EC2 Instance
Web Server
Client
AWS EC2
EC2 Availability Zone
AWS RDS
EC2 Availability Zone
EC2 Instance
Web Server
RDS – Standby
MySQL Database
Client ELB
(Elastic
Load Balancer)
10. Featured on an App Store
Bulkypix requirements Traditional Server Platform
Horizontal Scalability
Vertical Scalability
Increase number of servers
Increase server size
11. Scaling
AWS EC2 – Resize an EC2 instance
Stop instance, resize instance, start instance.
AWS EC2 - Autoscaling
Automatically scale up when server load increases
User experience stays the same
No server drop out from ELB because of load saturation
No server failure cascade
Automatically scale down when load decreases
Scales costs down
12. RDS
MySQL Database
EC2 Instances
Web Server
AWS EC2
EC2 Availability Zone
AWS RDS
EC2 Availability Zone
EC2 Instances
Web Server
RDS – Standby
MySQL Database
Client ELB
(Elastic
Load Balancer(
EC2 Autoscaling
13. Conclusion
We’ve only covered very basics offered by cloud computing.
Cloud computing has given Bulkypix
inexpensive access to the big toys.
high availability.
high scalability.
Learnings
Costs management
=> Reserve instances or commit bandwidth for better rates.
=> Use autoscaling.
Can be challenging when designing the software stacks.
=> Test and iterate.