SlideShare a Scribd company logo
Follow us @Blinkist
Nonfiction made easy.
mobile devices.
A format native to
Blinkist’s planned Infrastructure
Tomcat
Instances
Java
Spring
Enterprise
Apps
Load
Balancing
Scaling
Notification
and stats
Failover
strategies
User
Behaviour
Tracking
Automated
Push
Notifications
Bug
Tracking User
origin
tracking
Replica
Sets
Caching
Continous
deployment
Funnel
measure-
ment
User
Cluster-
ing
Mailing-
Services
Failover-
strategiesFailover-
tests
Backups
Rollbacks
Monitoring
and
Performance
Measurement
MongoDB
Monitoring
and
Performance
Measurement
Dedicated
Application
Servers
Continous
integration
Native iOs
App
Follow us @Blinkist
Objective
C
Landing
Page
Follow us @Blinkist
Who is gonna
That?
Work on
Blinkist’s planned Infrastructure
Tomcat
Instances
Java
Spring
Enterprise
Apps
Load
Balancing
Scaling
Notification
and stats
Failover
strategies
User
Behaviour
Tracking
Automated
Push
Notifications
Bug
Tracking
User
origin
tracking
Replica
Sets
Caching
Continous
deployment
Funnel
measure-
ment
User
Cluster-
ing
Mailing-
Services
Failover-
strategies
Failover-
tests
Backups
Rollbacks
Monitoring
and
Performance
Measurement
Monitoring
and
Performance
Measurement
Continous
integration
Follow us @Blinkist
Objective
C
1 CTO ??
Landing
Page
Follow us @Blinkist
Of course not!
Manpower
We got huge
Blinkist’s planned Infrastructure
Tomcat
Instances
Java
Spring
Enterprise
Apps
Load
Balancing
Scaling
Notification
and stats
Failover
strategies
User
Behaviour
Tracking
Automated
Push
Notifications
Bug
Tracking
User
origin
tracking
Replica
Sets
Caching
Continous
deployment
Funnel
measure-
ment
User
Cluster-
ing
Mailing-
Services
Failover-
strategies
Failover-
tests
Backups
Rollbacks
Monitoring
and
Performance
Measurement
Monitoring
and
Performance
Measurement
Continous
integration
Follow us @Blinkist
Objective
C
1 CTO
(fulltime) 1 iOs Dev
(6 days/month)
1 Java Dev
(4 days/month)
Landing
Page
Follow us @Blinkist
Sounds great??
We‘ve tried it!
Sure!
Follow us @Blinkist
Wanna now
Happened?
What
Follow us @Blinkist
At our first internal alpha launch our dedicated Server went
down
Our onliest dedicated server that dayI got an email at 3.25 am and went to the officeAlt+Ctrl+Del via website ...Hard reset via website...Hoster hotline call and…
The server rebooted at 3:45 pm!!! With nearly 12 hours
downtime
Follow us @Blinkist
Blinkist moved to
The cloud
Application
Servers
Blinkist’s planned Infrastructure
Tomcat
Instances
Java
Spring
Enterprise
Apps
Load
Balancing
Scaling
Notification
and stats
User
Behaviour
Tracking
Automated
Push
Notifications
Bug
Tracking
User
origin
tracking
Replica
Sets
Failover
strategies
Caching
Continous
deployment
Funnel
measure-
ment
User
Cluster-
ing
Mailing-
Services
Failover-
strategiesFailover-
tests
Dedicated
Application
Servers
Backups
Rollbacks
Monitoring
and
Performance
Measurement
MongoDB
Monitoring
and
Performance
Measurement
Continous
integration
Native iOs
App
Follow us @Blinkist
Objective
C
Landing
Page
Follow us @Blinkist
And now?
Blinkist’s planned Infrastructure
Java
Spring
Enterprise
Apps
Follow us @Blinkist
Objective
C
Landing
Page
1 CTO
(fulltime)
1 iOs Dev
(6 days/month)
1 Java Dev
(4 days/month)
Follow us @Blinkist
Costs and Functions
Costs and Functions
Follow us @Blinkist
Heroku
PaaS
1st dyno for free
+1 dyno 34 $/month
1 dyno is able to run
3 rails instances
Scaling from 1 to
100 dynos in < 1min
Deployment via
github hooks
S3 Bucket
CDN
0.095$/GB&month
0.004$/10k GET
requests
Fully power of
amazon cloud
Codeship.io
Continous Delivery
$0 for 1st 50 builds
$9 for 50
builds/month
Triggered via github
hooks
Testrun
Heroku deployment
per git branch
Newrelic
App-Monitoring
$0/month for 8 days
data retention
0.06$/dyno&month
for 90 days data
retention
DB performance
measurement
Request duration
analysis
Costs and Functions
Follow us @Blinkist
MemCachier
MemCache
25MB $0/month
100MB $15/month
Analytics
Dashboard
Setup in < 1min
Logentries
Log-Management
1GB 7-days
Storage $0/month
Unlimited storage
5$/GB&month
Log-search
Event/Pattern
definition and
Email-Notification
MongoHQ
Database
2GB Storage + 250
Ram $15/month
Automated health
checks
Daily backups to
Amazon S3
$15/month
One Click Backup-
Restore
Jira
BugTracking
$10/10users&month
Fully hosted
RESTful API
Costs and Functions
Follow us @Blinkist
Adjust-IO
BI for APP marketing
--
User origin clicks and
install measurement
Data Clustering
KPIs and retention
rate definitons
Dashboard overview
Mixpanel
User tracking
150$/month for
500k datapoints
Customer
segmentation
Funnel definitions
and tracking
Retention definition
and tracking
Mailchimp
Email Service
0$/month for 12k
emails
Unlimited mails for
up to 10k
subscribers
$75/month
Email templating
Email tracking
CI-Simple
Continous Integration
for mobile
19$/month for 200
builds
Automated
deployment via
testflight
Automated testing
Github hooks
Costs and Functions
Follow us @Blinkist
Mailgun
Email-Automation
0$/month for 300
messages a day
own domain & 50k
mails/month for
$19/month
Mailing lists
Batch sending
Email tracking
Blitz.io
Load-Testing
250 concurrent
users $0/month
1000 concurrent
users 799$/month
(de)activate billed
by seconds
7-different regions
to test from
Test statistics
TestflightApp
Mobile-App
Deployment
$0/month
Ships your iOs and
Android apps to
your testers without
any store release
VersionEye
Software-Package
notifier
$3/month for 5
private repositories
Keep your software
dependencies up to
date easily
No webcrawling
needed
Email notifications
Overall costs
1) Survey among active users
Follow us
< 300$/
month
Biggest Benefit
1) Survey among active users
Follow us
Focus on your business
Follow us @Blinkist
Disadvantages?
Follow us @Blinkist
Heroku is cycling your applications every 24 hours
Java Spring took nearly 60 seconds to boot
Once the App took more then 60 secs to boot the dyno
crashed
Follow us @Blinkist
One standard Heroku dyno got 512 MB ram
The used jetty server reserved mostly 520MB which lead to
permanent memory warnings which made all notifications
useless
Follow us @Blinkist
One mobile app-start lead to avg. 3 api requests
But the Spring Data mongodb driver does not support lazy
loading
Therefore one mobile app-start lead to 1000+ db requests
Follow us @Blinkist
Blinkist switched
From java to ruby
Follow us @Blinkist
Heroku is cycling your applications every 24 hours
Java Spring took nearly 60 seconds to boot
Once the App took more then 60 secs to boot the dyno
crashed
The grape app boots within 6 seconds
Follow us @Blinkist
One standard Heroku dyno got 512 MB ram
The used jetty server reserved mostly 520MB which lead to
permanent memory warnings which made all notifications
useless
One grape instance needs avg 80 MB ram
We introduced unicorn to easily run 3 grape applications
within one single heroku dyno
Follow us @Blinkist
One mobile app-start lead to avg. 3 api requests
But the Spring Data mongodb driver does not support lazy
loading
Therefore one mobile app-start leads to about 10-15 db
requests
The ruby gem mongoid supports lazy loading out of the box
Therefore one mobile app-start lead to 1000+ db requests
Follow us @Blinkist
Live Demo

More Related Content

Similar to Why you should move your apps to the cloud

Improve monitoring and monetization of your mobile apps
Improve monitoring and monetization of your mobile appsImprove monitoring and monetization of your mobile apps
Improve monitoring and monetization of your mobile apps
Amazon Web Services
 
[TTT Meetup] Enhance mobile app testing with performance-centric strategies (...
[TTT Meetup] Enhance mobile app testing with performance-centric strategies (...[TTT Meetup] Enhance mobile app testing with performance-centric strategies (...
[TTT Meetup] Enhance mobile app testing with performance-centric strategies (...
NITHIN S.S
 
Metrics-Driven Devops: Delivering High Quality Software Faster!
Metrics-Driven Devops: Delivering High Quality Software Faster! Metrics-Driven Devops: Delivering High Quality Software Faster!
Metrics-Driven Devops: Delivering High Quality Software Faster!
Dynatrace
 
Practical Tips for Ops: End User Monitoring
Practical Tips for Ops: End User MonitoringPractical Tips for Ops: End User Monitoring
Practical Tips for Ops: End User Monitoring
Dynatrace
 
Offline of web applications
Offline of web applicationsOffline of web applications
Offline of web applications
FDConf
 
Offline for web - Frontend Dev Conf Minsk 2014
Offline for web - Frontend Dev Conf Minsk 2014Offline for web - Frontend Dev Conf Minsk 2014
Offline for web - Frontend Dev Conf Minsk 2014
Jan Jongboom
 
7 Tips for Optimizing Mobile App Metrics
7 Tips for Optimizing Mobile App Metrics7 Tips for Optimizing Mobile App Metrics
7 Tips for Optimizing Mobile App Metrics
Apteligent
 
Updates on the Data Center Apps Program
Updates on the Data Center Apps ProgramUpdates on the Data Center Apps Program
Updates on the Data Center Apps Program
Atlassian
 
Mobile apps & Server Apis, the weak link? par Emanuele Pecorari
Mobile apps & Server Apis, the weak link? par Emanuele PecorariMobile apps & Server Apis, the weak link? par Emanuele Pecorari
Mobile apps & Server Apis, the weak link? par Emanuele Pecorari
Olivier DASINI
 
Using Customer Development to get Traction in a Crowded Space
Using Customer Development to get Traction in a Crowded SpaceUsing Customer Development to get Traction in a Crowded Space
Using Customer Development to get Traction in a Crowded Space
Outlyer
 
Microservices, Events, and Breaking the Data Monolith with Kafka
Microservices, Events, and Breaking the Data Monolith with KafkaMicroservices, Events, and Breaking the Data Monolith with Kafka
Microservices, Events, and Breaking the Data Monolith with Kafka
VMware Tanzu
 
Four Steps Toward a Safer Continuous Delivery Practice (Hint: Add Monitoring)
Four Steps Toward a Safer Continuous Delivery Practice (Hint: Add Monitoring)Four Steps Toward a Safer Continuous Delivery Practice (Hint: Add Monitoring)
Four Steps Toward a Safer Continuous Delivery Practice (Hint: Add Monitoring)
VMware Tanzu
 
Making awesome apps
Making awesome appsMaking awesome apps
Making awesome apps
DroidConTLV
 
OSSF 2018 - Brandon Jung of GitLab - Is Your DevOps 'Tool Tax' Weighing You D...
OSSF 2018 - Brandon Jung of GitLab - Is Your DevOps 'Tool Tax' Weighing You D...OSSF 2018 - Brandon Jung of GitLab - Is Your DevOps 'Tool Tax' Weighing You D...
OSSF 2018 - Brandon Jung of GitLab - Is Your DevOps 'Tool Tax' Weighing You D...
FINOS
 
App engine devfest_mexico_10
App engine devfest_mexico_10App engine devfest_mexico_10
App engine devfest_mexico_10
Chris Schalk
 
APM Talk
APM TalkAPM Talk
APM Talk
MongoDB
 
Thinking about the full stack to create great mobile experiences
Thinking about the full stack to create great mobile experiencesThinking about the full stack to create great mobile experiences
Thinking about the full stack to create great mobile experiences
New Relic
 
Why Progressive Web Apps For WordPress - WordCamp Finland
Why Progressive Web Apps For WordPress - WordCamp FinlandWhy Progressive Web Apps For WordPress - WordCamp Finland
Why Progressive Web Apps For WordPress - WordCamp Finland
Imran Sayed
 
AWS re:Invent 2016: Getting Started with Serverless Architectures (CMP211)
AWS re:Invent 2016: Getting Started with Serverless Architectures (CMP211)AWS re:Invent 2016: Getting Started with Serverless Architectures (CMP211)
AWS re:Invent 2016: Getting Started with Serverless Architectures (CMP211)
Amazon Web Services
 
Building for, perceiving and measuring performance for mobile web
Building for, perceiving and measuring performance for mobile webBuilding for, perceiving and measuring performance for mobile web
Building for, perceiving and measuring performance for mobile web
Robin Glen
 

Similar to Why you should move your apps to the cloud (20)

Improve monitoring and monetization of your mobile apps
Improve monitoring and monetization of your mobile appsImprove monitoring and monetization of your mobile apps
Improve monitoring and monetization of your mobile apps
 
[TTT Meetup] Enhance mobile app testing with performance-centric strategies (...
[TTT Meetup] Enhance mobile app testing with performance-centric strategies (...[TTT Meetup] Enhance mobile app testing with performance-centric strategies (...
[TTT Meetup] Enhance mobile app testing with performance-centric strategies (...
 
Metrics-Driven Devops: Delivering High Quality Software Faster!
Metrics-Driven Devops: Delivering High Quality Software Faster! Metrics-Driven Devops: Delivering High Quality Software Faster!
Metrics-Driven Devops: Delivering High Quality Software Faster!
 
Practical Tips for Ops: End User Monitoring
Practical Tips for Ops: End User MonitoringPractical Tips for Ops: End User Monitoring
Practical Tips for Ops: End User Monitoring
 
Offline of web applications
Offline of web applicationsOffline of web applications
Offline of web applications
 
Offline for web - Frontend Dev Conf Minsk 2014
Offline for web - Frontend Dev Conf Minsk 2014Offline for web - Frontend Dev Conf Minsk 2014
Offline for web - Frontend Dev Conf Minsk 2014
 
7 Tips for Optimizing Mobile App Metrics
7 Tips for Optimizing Mobile App Metrics7 Tips for Optimizing Mobile App Metrics
7 Tips for Optimizing Mobile App Metrics
 
Updates on the Data Center Apps Program
Updates on the Data Center Apps ProgramUpdates on the Data Center Apps Program
Updates on the Data Center Apps Program
 
Mobile apps & Server Apis, the weak link? par Emanuele Pecorari
Mobile apps & Server Apis, the weak link? par Emanuele PecorariMobile apps & Server Apis, the weak link? par Emanuele Pecorari
Mobile apps & Server Apis, the weak link? par Emanuele Pecorari
 
Using Customer Development to get Traction in a Crowded Space
Using Customer Development to get Traction in a Crowded SpaceUsing Customer Development to get Traction in a Crowded Space
Using Customer Development to get Traction in a Crowded Space
 
Microservices, Events, and Breaking the Data Monolith with Kafka
Microservices, Events, and Breaking the Data Monolith with KafkaMicroservices, Events, and Breaking the Data Monolith with Kafka
Microservices, Events, and Breaking the Data Monolith with Kafka
 
Four Steps Toward a Safer Continuous Delivery Practice (Hint: Add Monitoring)
Four Steps Toward a Safer Continuous Delivery Practice (Hint: Add Monitoring)Four Steps Toward a Safer Continuous Delivery Practice (Hint: Add Monitoring)
Four Steps Toward a Safer Continuous Delivery Practice (Hint: Add Monitoring)
 
Making awesome apps
Making awesome appsMaking awesome apps
Making awesome apps
 
OSSF 2018 - Brandon Jung of GitLab - Is Your DevOps 'Tool Tax' Weighing You D...
OSSF 2018 - Brandon Jung of GitLab - Is Your DevOps 'Tool Tax' Weighing You D...OSSF 2018 - Brandon Jung of GitLab - Is Your DevOps 'Tool Tax' Weighing You D...
OSSF 2018 - Brandon Jung of GitLab - Is Your DevOps 'Tool Tax' Weighing You D...
 
App engine devfest_mexico_10
App engine devfest_mexico_10App engine devfest_mexico_10
App engine devfest_mexico_10
 
APM Talk
APM TalkAPM Talk
APM Talk
 
Thinking about the full stack to create great mobile experiences
Thinking about the full stack to create great mobile experiencesThinking about the full stack to create great mobile experiences
Thinking about the full stack to create great mobile experiences
 
Why Progressive Web Apps For WordPress - WordCamp Finland
Why Progressive Web Apps For WordPress - WordCamp FinlandWhy Progressive Web Apps For WordPress - WordCamp Finland
Why Progressive Web Apps For WordPress - WordCamp Finland
 
AWS re:Invent 2016: Getting Started with Serverless Architectures (CMP211)
AWS re:Invent 2016: Getting Started with Serverless Architectures (CMP211)AWS re:Invent 2016: Getting Started with Serverless Architectures (CMP211)
AWS re:Invent 2016: Getting Started with Serverless Architectures (CMP211)
 
Building for, perceiving and measuring performance for mobile web
Building for, perceiving and measuring performance for mobile webBuilding for, perceiving and measuring performance for mobile web
Building for, perceiving and measuring performance for mobile web
 

Recently uploaded

Your One-Stop Shop for Python Success: Top 10 US Python Development Providers
Your One-Stop Shop for Python Success: Top 10 US Python Development ProvidersYour One-Stop Shop for Python Success: Top 10 US Python Development Providers
Your One-Stop Shop for Python Success: Top 10 US Python Development Providers
akankshawande
 
Project Management Semester Long Project - Acuity
Project Management Semester Long Project - AcuityProject Management Semester Long Project - Acuity
Project Management Semester Long Project - Acuity
jpupo2018
 
Driving Business Innovation: Latest Generative AI Advancements & Success Story
Driving Business Innovation: Latest Generative AI Advancements & Success StoryDriving Business Innovation: Latest Generative AI Advancements & Success Story
Driving Business Innovation: Latest Generative AI Advancements & Success Story
Safe Software
 
HCL Notes and Domino License Cost Reduction in the World of DLAU
HCL Notes and Domino License Cost Reduction in the World of DLAUHCL Notes and Domino License Cost Reduction in the World of DLAU
HCL Notes and Domino License Cost Reduction in the World of DLAU
panagenda
 
Fueling AI with Great Data with Airbyte Webinar
Fueling AI with Great Data with Airbyte WebinarFueling AI with Great Data with Airbyte Webinar
Fueling AI with Great Data with Airbyte Webinar
Zilliz
 
GraphRAG for Life Science to increase LLM accuracy
GraphRAG for Life Science to increase LLM accuracyGraphRAG for Life Science to increase LLM accuracy
GraphRAG for Life Science to increase LLM accuracy
Tomaz Bratanic
 
Mariano G Tinti - Decoding SpaceX
Mariano G Tinti - Decoding SpaceXMariano G Tinti - Decoding SpaceX
Mariano G Tinti - Decoding SpaceX
Mariano Tinti
 
Building Production Ready Search Pipelines with Spark and Milvus
Building Production Ready Search Pipelines with Spark and MilvusBuilding Production Ready Search Pipelines with Spark and Milvus
Building Production Ready Search Pipelines with Spark and Milvus
Zilliz
 
Webinar: Designing a schema for a Data Warehouse
Webinar: Designing a schema for a Data WarehouseWebinar: Designing a schema for a Data Warehouse
Webinar: Designing a schema for a Data Warehouse
Federico Razzoli
 
HCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAU
HCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAUHCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAU
HCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAU
panagenda
 
June Patch Tuesday
June Patch TuesdayJune Patch Tuesday
June Patch Tuesday
Ivanti
 
Serial Arm Control in Real Time Presentation
Serial Arm Control in Real Time PresentationSerial Arm Control in Real Time Presentation
Serial Arm Control in Real Time Presentation
tolgahangng
 
How to Get CNIC Information System with Paksim Ga.pptx
How to Get CNIC Information System with Paksim Ga.pptxHow to Get CNIC Information System with Paksim Ga.pptx
How to Get CNIC Information System with Paksim Ga.pptx
danishmna97
 
5th LF Energy Power Grid Model Meet-up Slides
5th LF Energy Power Grid Model Meet-up Slides5th LF Energy Power Grid Model Meet-up Slides
5th LF Energy Power Grid Model Meet-up Slides
DanBrown980551
 
Salesforce Integration for Bonterra Impact Management (fka Social Solutions A...
Salesforce Integration for Bonterra Impact Management (fka Social Solutions A...Salesforce Integration for Bonterra Impact Management (fka Social Solutions A...
Salesforce Integration for Bonterra Impact Management (fka Social Solutions A...
Jeffrey Haguewood
 
Skybuffer SAM4U tool for SAP license adoption
Skybuffer SAM4U tool for SAP license adoptionSkybuffer SAM4U tool for SAP license adoption
Skybuffer SAM4U tool for SAP license adoption
Tatiana Kojar
 
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
Edge AI and Vision Alliance
 
UI5 Controls simplified - UI5con2024 presentation
UI5 Controls simplified - UI5con2024 presentationUI5 Controls simplified - UI5con2024 presentation
UI5 Controls simplified - UI5con2024 presentation
Wouter Lemaire
 
Programming Foundation Models with DSPy - Meetup Slides
Programming Foundation Models with DSPy - Meetup SlidesProgramming Foundation Models with DSPy - Meetup Slides
Programming Foundation Models with DSPy - Meetup Slides
Zilliz
 
Presentation of the OECD Artificial Intelligence Review of Germany
Presentation of the OECD Artificial Intelligence Review of GermanyPresentation of the OECD Artificial Intelligence Review of Germany
Presentation of the OECD Artificial Intelligence Review of Germany
innovationoecd
 

Recently uploaded (20)

Your One-Stop Shop for Python Success: Top 10 US Python Development Providers
Your One-Stop Shop for Python Success: Top 10 US Python Development ProvidersYour One-Stop Shop for Python Success: Top 10 US Python Development Providers
Your One-Stop Shop for Python Success: Top 10 US Python Development Providers
 
Project Management Semester Long Project - Acuity
Project Management Semester Long Project - AcuityProject Management Semester Long Project - Acuity
Project Management Semester Long Project - Acuity
 
Driving Business Innovation: Latest Generative AI Advancements & Success Story
Driving Business Innovation: Latest Generative AI Advancements & Success StoryDriving Business Innovation: Latest Generative AI Advancements & Success Story
Driving Business Innovation: Latest Generative AI Advancements & Success Story
 
HCL Notes and Domino License Cost Reduction in the World of DLAU
HCL Notes and Domino License Cost Reduction in the World of DLAUHCL Notes and Domino License Cost Reduction in the World of DLAU
HCL Notes and Domino License Cost Reduction in the World of DLAU
 
Fueling AI with Great Data with Airbyte Webinar
Fueling AI with Great Data with Airbyte WebinarFueling AI with Great Data with Airbyte Webinar
Fueling AI with Great Data with Airbyte Webinar
 
GraphRAG for Life Science to increase LLM accuracy
GraphRAG for Life Science to increase LLM accuracyGraphRAG for Life Science to increase LLM accuracy
GraphRAG for Life Science to increase LLM accuracy
 
Mariano G Tinti - Decoding SpaceX
Mariano G Tinti - Decoding SpaceXMariano G Tinti - Decoding SpaceX
Mariano G Tinti - Decoding SpaceX
 
Building Production Ready Search Pipelines with Spark and Milvus
Building Production Ready Search Pipelines with Spark and MilvusBuilding Production Ready Search Pipelines with Spark and Milvus
Building Production Ready Search Pipelines with Spark and Milvus
 
Webinar: Designing a schema for a Data Warehouse
Webinar: Designing a schema for a Data WarehouseWebinar: Designing a schema for a Data Warehouse
Webinar: Designing a schema for a Data Warehouse
 
HCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAU
HCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAUHCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAU
HCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAU
 
June Patch Tuesday
June Patch TuesdayJune Patch Tuesday
June Patch Tuesday
 
Serial Arm Control in Real Time Presentation
Serial Arm Control in Real Time PresentationSerial Arm Control in Real Time Presentation
Serial Arm Control in Real Time Presentation
 
How to Get CNIC Information System with Paksim Ga.pptx
How to Get CNIC Information System with Paksim Ga.pptxHow to Get CNIC Information System with Paksim Ga.pptx
How to Get CNIC Information System with Paksim Ga.pptx
 
5th LF Energy Power Grid Model Meet-up Slides
5th LF Energy Power Grid Model Meet-up Slides5th LF Energy Power Grid Model Meet-up Slides
5th LF Energy Power Grid Model Meet-up Slides
 
Salesforce Integration for Bonterra Impact Management (fka Social Solutions A...
Salesforce Integration for Bonterra Impact Management (fka Social Solutions A...Salesforce Integration for Bonterra Impact Management (fka Social Solutions A...
Salesforce Integration for Bonterra Impact Management (fka Social Solutions A...
 
Skybuffer SAM4U tool for SAP license adoption
Skybuffer SAM4U tool for SAP license adoptionSkybuffer SAM4U tool for SAP license adoption
Skybuffer SAM4U tool for SAP license adoption
 
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
 
UI5 Controls simplified - UI5con2024 presentation
UI5 Controls simplified - UI5con2024 presentationUI5 Controls simplified - UI5con2024 presentation
UI5 Controls simplified - UI5con2024 presentation
 
Programming Foundation Models with DSPy - Meetup Slides
Programming Foundation Models with DSPy - Meetup SlidesProgramming Foundation Models with DSPy - Meetup Slides
Programming Foundation Models with DSPy - Meetup Slides
 
Presentation of the OECD Artificial Intelligence Review of Germany
Presentation of the OECD Artificial Intelligence Review of GermanyPresentation of the OECD Artificial Intelligence Review of Germany
Presentation of the OECD Artificial Intelligence Review of Germany
 

Why you should move your apps to the cloud

  • 1.
  • 2. Follow us @Blinkist Nonfiction made easy. mobile devices. A format native to
  • 3. Blinkist’s planned Infrastructure Tomcat Instances Java Spring Enterprise Apps Load Balancing Scaling Notification and stats Failover strategies User Behaviour Tracking Automated Push Notifications Bug Tracking User origin tracking Replica Sets Caching Continous deployment Funnel measure- ment User Cluster- ing Mailing- Services Failover- strategiesFailover- tests Backups Rollbacks Monitoring and Performance Measurement MongoDB Monitoring and Performance Measurement Dedicated Application Servers Continous integration Native iOs App Follow us @Blinkist Objective C Landing Page
  • 4. Follow us @Blinkist Who is gonna That? Work on
  • 5. Blinkist’s planned Infrastructure Tomcat Instances Java Spring Enterprise Apps Load Balancing Scaling Notification and stats Failover strategies User Behaviour Tracking Automated Push Notifications Bug Tracking User origin tracking Replica Sets Caching Continous deployment Funnel measure- ment User Cluster- ing Mailing- Services Failover- strategies Failover- tests Backups Rollbacks Monitoring and Performance Measurement Monitoring and Performance Measurement Continous integration Follow us @Blinkist Objective C 1 CTO ?? Landing Page
  • 6. Follow us @Blinkist Of course not! Manpower We got huge
  • 7. Blinkist’s planned Infrastructure Tomcat Instances Java Spring Enterprise Apps Load Balancing Scaling Notification and stats Failover strategies User Behaviour Tracking Automated Push Notifications Bug Tracking User origin tracking Replica Sets Caching Continous deployment Funnel measure- ment User Cluster- ing Mailing- Services Failover- strategies Failover- tests Backups Rollbacks Monitoring and Performance Measurement Monitoring and Performance Measurement Continous integration Follow us @Blinkist Objective C 1 CTO (fulltime) 1 iOs Dev (6 days/month) 1 Java Dev (4 days/month) Landing Page
  • 8. Follow us @Blinkist Sounds great?? We‘ve tried it! Sure!
  • 9. Follow us @Blinkist Wanna now Happened? What
  • 10. Follow us @Blinkist At our first internal alpha launch our dedicated Server went down Our onliest dedicated server that dayI got an email at 3.25 am and went to the officeAlt+Ctrl+Del via website ...Hard reset via website...Hoster hotline call and… The server rebooted at 3:45 pm!!! With nearly 12 hours downtime
  • 11. Follow us @Blinkist Blinkist moved to The cloud
  • 12. Application Servers Blinkist’s planned Infrastructure Tomcat Instances Java Spring Enterprise Apps Load Balancing Scaling Notification and stats User Behaviour Tracking Automated Push Notifications Bug Tracking User origin tracking Replica Sets Failover strategies Caching Continous deployment Funnel measure- ment User Cluster- ing Mailing- Services Failover- strategiesFailover- tests Dedicated Application Servers Backups Rollbacks Monitoring and Performance Measurement MongoDB Monitoring and Performance Measurement Continous integration Native iOs App Follow us @Blinkist Objective C Landing Page
  • 14. Blinkist’s planned Infrastructure Java Spring Enterprise Apps Follow us @Blinkist Objective C Landing Page 1 CTO (fulltime) 1 iOs Dev (6 days/month) 1 Java Dev (4 days/month)
  • 15. Follow us @Blinkist Costs and Functions
  • 16. Costs and Functions Follow us @Blinkist Heroku PaaS 1st dyno for free +1 dyno 34 $/month 1 dyno is able to run 3 rails instances Scaling from 1 to 100 dynos in < 1min Deployment via github hooks S3 Bucket CDN 0.095$/GB&month 0.004$/10k GET requests Fully power of amazon cloud Codeship.io Continous Delivery $0 for 1st 50 builds $9 for 50 builds/month Triggered via github hooks Testrun Heroku deployment per git branch Newrelic App-Monitoring $0/month for 8 days data retention 0.06$/dyno&month for 90 days data retention DB performance measurement Request duration analysis
  • 17. Costs and Functions Follow us @Blinkist MemCachier MemCache 25MB $0/month 100MB $15/month Analytics Dashboard Setup in < 1min Logentries Log-Management 1GB 7-days Storage $0/month Unlimited storage 5$/GB&month Log-search Event/Pattern definition and Email-Notification MongoHQ Database 2GB Storage + 250 Ram $15/month Automated health checks Daily backups to Amazon S3 $15/month One Click Backup- Restore Jira BugTracking $10/10users&month Fully hosted RESTful API
  • 18. Costs and Functions Follow us @Blinkist Adjust-IO BI for APP marketing -- User origin clicks and install measurement Data Clustering KPIs and retention rate definitons Dashboard overview Mixpanel User tracking 150$/month for 500k datapoints Customer segmentation Funnel definitions and tracking Retention definition and tracking Mailchimp Email Service 0$/month for 12k emails Unlimited mails for up to 10k subscribers $75/month Email templating Email tracking CI-Simple Continous Integration for mobile 19$/month for 200 builds Automated deployment via testflight Automated testing Github hooks
  • 19. Costs and Functions Follow us @Blinkist Mailgun Email-Automation 0$/month for 300 messages a day own domain & 50k mails/month for $19/month Mailing lists Batch sending Email tracking Blitz.io Load-Testing 250 concurrent users $0/month 1000 concurrent users 799$/month (de)activate billed by seconds 7-different regions to test from Test statistics TestflightApp Mobile-App Deployment $0/month Ships your iOs and Android apps to your testers without any store release VersionEye Software-Package notifier $3/month for 5 private repositories Keep your software dependencies up to date easily No webcrawling needed Email notifications
  • 20. Overall costs 1) Survey among active users Follow us < 300$/ month
  • 21. Biggest Benefit 1) Survey among active users Follow us Focus on your business
  • 23. Follow us @Blinkist Heroku is cycling your applications every 24 hours Java Spring took nearly 60 seconds to boot Once the App took more then 60 secs to boot the dyno crashed
  • 24. Follow us @Blinkist One standard Heroku dyno got 512 MB ram The used jetty server reserved mostly 520MB which lead to permanent memory warnings which made all notifications useless
  • 25. Follow us @Blinkist One mobile app-start lead to avg. 3 api requests But the Spring Data mongodb driver does not support lazy loading Therefore one mobile app-start lead to 1000+ db requests
  • 26. Follow us @Blinkist Blinkist switched From java to ruby
  • 27. Follow us @Blinkist Heroku is cycling your applications every 24 hours Java Spring took nearly 60 seconds to boot Once the App took more then 60 secs to boot the dyno crashed The grape app boots within 6 seconds
  • 28. Follow us @Blinkist One standard Heroku dyno got 512 MB ram The used jetty server reserved mostly 520MB which lead to permanent memory warnings which made all notifications useless One grape instance needs avg 80 MB ram We introduced unicorn to easily run 3 grape applications within one single heroku dyno
  • 29. Follow us @Blinkist One mobile app-start lead to avg. 3 api requests But the Spring Data mongodb driver does not support lazy loading Therefore one mobile app-start leads to about 10-15 db requests The ruby gem mongoid supports lazy loading out of the box Therefore one mobile app-start lead to 1000+ db requests