DevOps & Apps - Building and Operating Successful Mobile Apps

Preview:

DESCRIPTION

 

Citation preview

DevOps and AppsBuilding and Operating Successful Mobile Apps

Apigee@apigee

Ben Whaley@iAmTheWhaley

Alan Ho@karlunho

groups.google.com/group/api-craft

youtube.com/apigee

slideshare.net/apigee

@iAmTheWhaleyBen Whaley

@karlunhoAlan Ho

Agenda

• The business model for mobile• DevOps in the context of mobile• Unique operational challenges• Addressing performance issues• Controlling Mobile configuration

• What’s next for DevOps in this space?

The landscape

The freshness of mobile means that companies don’t yet care about revenue

It’s a land grab for mobile apps

Two most important things for business owners:

- user engagement

- reputation

Performance and stability impact both

DevOps can help with both

HTML5 to native . . .

small increase in speed . . .

double number of Facebook posts read == double ad revenue

Why is this business problem a DevOps problem?

“You cannot improve what you cannot measure.” -Lord Kelvin

Mobile DevOps vs. Back-end DevOps

The code is running on a device

Scale: controlling millions versus thousands

Consistency in the cloud server environment does not apply in a mobile environment

Diversity: Literally 100s of thousands of combinations of Android OS / Device MODEL / Carriers

Less control but you as the software developer are responsible for quality

Unique Mobile Challenges

Battery life

Intermittent connectivity to the network

Limitations imposed by the carriers and manufacturers

Duopoly by Apple and Google

Rapidly changing landscape for devices, apps and the OS

Regulatory Implications

Many manufacturers and vendors support CISPA, for example

Wide gap among users in throughput, latency, depending on network / carrier

Communication with the end user

Operating an app – Tips and Tricks

Use the app! On many devices!

Measuring the problem first

Store metrics in system of choice (munin, graphite, ganglia, or apigee )

identify trends

System layer

(load, memory, disk, standard operational metrics)

Application layer

(memory allocation, DB stats)

API Layer

(network latency, back-end availability)

Response Time by Network Types

Business layer

# signups, #active users, # invites, social media sharing

Monitor what is measured

Engage key stakeholders

Keep engineering involved from design through operation & management

Eliminate barriers between groups

Via HTTP expiry tag, set whether certain configuration remains valid or not

Control configuration by model, carrier, platform,

multitude of dynamic properties by which to change configuration

Changes and challenges to come

More devices: The Internet of Things

Mobile becomes the primary revenue provider instead of web

Design the backend to be resilient across multiple providers, and in a transparent way to the mobile device

A short story about websockets . . .

An app developer in the Philippines writes telco apps assuming a websocket is available . . .

But some telcos do not support websockets . . .

Negative reviews from users of the telco that doesn’t support it . . .

Lesson: know the limitations of a carrier

Explosion in data volume

Geographic services increasingly important

In Summary . . .

mobile apps become a primary source of revenue success depends on engaging users and building a 5-

star reputationperformance and stability are criticalDevOps is the centerpiece of an app’s successnew DevOps challenges when code runs on a devicemeasure all the things! (literally) the transformation is only beginning

Questions

groups.google.com/group/api-craft

THANK YOUQuestions and ideas to:

@iAmTheWhaley@karlunho

groups.google.com/group/api-craft

Recommended