+ All Categories
Home > Technology > 10 things the cloud has taught us

10 things the cloud has taught us

Date post: 12-Jul-2015
Category:
Upload: per-astroem
View: 1,885 times
Download: 1 times
Share this document with a friend
Popular Tags:
109
”Ten things the cloud has taught us” Per Åström, TV4 Disruptive Media 2010
Transcript
Page 1: 10 things the cloud has taught us

”Ten things the cloud has taught us”Per Åström, TV4Disruptive Media 2010

Page 2: 10 things the cloud has taught us

20 years ago

Page 4: 10 things the cloud has taught us

TV4.se - anno 1997

Page 5: 10 things the cloud has taught us

Some of our sites

tv4.setv4play.serecept.nuresor.nufotbollskanalen.senyhetskanalen.sevaderkanalen.sehockeykanalen.sehemmakanalen.se

>150 blogsCommunity (Hemmakanalen.se)soko.seblip.secanalplus.se/no/dk/fi

5

Page 6: 10 things the cloud has taught us

What is the cloud?The definition of cloud computing according to Wikipedia is:

Cloud computing is Internet-based computing, whereby shared resources, software, and information are provided to computers and other devices on demand, like the electricity grid.

6

Page 7: 10 things the cloud has taught us

What is the cloud?Continued...:Cloud computing is a paradigm shift following the shift from mainframe to client–server in the early 1980s.

Details are abstracted from the users, who no longer have need for expertise in, or control over, the technology infrastructure "in the cloud" that supports them.

Cloud computing describes a new supplement, consumption, and delivery model for IT services based on the Internet, and it typically involves over-the-Internet provision of dynamically scalable and often virtualized resources.

7

Page 8: 10 things the cloud has taught us

Traffic

8

Peak

People asleepAverage?

#1

Page 9: 10 things the cloud has taught us

Evolution of publishing platformsGeneration #1 - Static Files Static html - Editors needed to know html No database No reuse of content No channel publishing

Typical Feature: Server Side Include Cause Of Death: Too static and too limited publishing

9

Page 10: 10 things the cloud has taught us

Evolution of publishing platformsGeneration #2 - Home grown with db Database! DIY - typically home made/home grown Depended on a few developers In the long run: expensive and complicated to develop

Typical Feature: Taylor made for the own needs Cause Of Death: To complicated to continue develop (EOL)

10

Page 11: 10 things the cloud has taught us

Evolution of publishing platformsGeneration #3 - A CMS Product A CMS - one product Multi channel publishing Typically offsprings of internal products Closed source Expensive (?)

Typical Feature: A swiss army knife: customize for own needs Cause Of Death: Slow development pace, limited upgrade path

11

Page 12: 10 things the cloud has taught us

Evolution of publishing platformsGeneration #4 - Open Platforms Many different products and tools Open API:s Built to integrate or to be integrated Ready for cloud computing ”Small pieces connected” Open source?

Typical Feature: Open for integration and iterative development Cause Of Death: ?

12

#2

Page 14: 10 things the cloud has taught us

Focus - What do we want to focus our resources on?

hardware OS patches

network infrastructure scaling failover redundancy antivirus upgrades capacity

backup installation planning firewall specification design coding

operations gui SLA maintenance

new features

14

#4

Page 15: 10 things the cloud has taught us

#5 Learn - and improve our products

15

Page 16: 10 things the cloud has taught us

How do we use the cloud today?

16

www.tv4.se IN CNAME www.tv4.se.edgesuite.net

Cache-Control: public, max-age=60

Page 17: 10 things the cloud has taught us

Origin vs. Delivery

17

Origin

Delivery

Users

Brain

Muscles

Page 18: 10 things the cloud has taught us

Origin vs. Delivery

18

OriginDelivery

Offload: average 90%, images 97%

Page 19: 10 things the cloud has taught us

Idol Auditions 2010

19

Origin

Delivery

Page 20: 10 things the cloud has taught us

Comments

20

Page 21: 10 things the cloud has taught us

Comments - User Management

21

Page 22: 10 things the cloud has taught us

Addthis

22

Page 23: 10 things the cloud has taught us

Addthis - Analytics

23

Page 24: 10 things the cloud has taught us

Polldaddy - thumbs up and voting

24

Page 25: 10 things the cloud has taught us

Heroku - Ruby Cloud Platform as a Service

25

Page 26: 10 things the cloud has taught us

Väderkanalen.se - runs on Heroku

26

Page 27: 10 things the cloud has taught us

Väderkanalen.se - runs on Heroku

27

API4

SMHITV4

Heroku

Page 28: 10 things the cloud has taught us

Soko.se - runs on Heroku

28

Page 29: 10 things the cloud has taught us

29

Page 30: 10 things the cloud has taught us

What’s our platform?

Before

Polopoly

Xcap

Basefarm

svn

30

Now

Polopoly

Disqus

Wordpress

Addthis

Polldaddy

Google API

Cover it Live

Basefarm

Akamai

Heroku

Amazon AWS

Github m.fl.

Then

?

Page 31: 10 things the cloud has taught us

What’s our platform?

Before

31

Now

Page 32: 10 things the cloud has taught us

Example: Introducing Wordpress

php - not Java

Wordpress MU

Subdomain with Wordpress MU Multi Domain Mapping plugin (with minor change)

> 150 blogs + Resor.nu

Five themes

Home made and released plugin ”External Markup”

Other plugins: All in One SEO Pack, DISQUS Comment System, Maintenance Mode, My Custom Widgets, PollDaddy Polls, Report Comments, WP-PageNavi, WP-SpamFree, Domain mapping, Vipers Video Quicktags, WP Super Cache, WPMU Blog Defaults, PubSubHubbub

Delivered through a CDN

32

Page 33: 10 things the cloud has taught us

Same WP-installation, same theme

33

Page 34: 10 things the cloud has taught us
Page 35: 10 things the cloud has taught us

Example: Introducing Wordpress

php - not Java

Wordpress MU

Subdomain with Wordpress MU Multi Domain Mapping plugin (with minor change)

> 150 blogs + Resor.nu

Five themes

Home made and released plugin ”External Markup”

Other plugins: All in One SEO Pack, DISQUS Comment System, Maintenance Mode, My Custom Widgets, PollDaddy Polls, Report Comments, WP-PageNavi, WP-SpamFree, Domain mapping, Vipers Video Quicktags, WP Super Cache, WPMU Blog Defaults, PubSubHubbub

Delivered through a CDN

35

Page 36: 10 things the cloud has taught us

Resor.nu ..is made in cooperation with Momondo.com

..is a Wordpress MU blog

..was launched with ”a big bang”: TV-commercial, Ads in Expressen, Ads, links and Editorial Content on Express.se and TV4-sites.

36

Page 37: 10 things the cloud has taught us

#1: The Team - the doers and decisionmakers

37

Teletext

Teletext

Java a

nd Ruby

Project

Manager

html/css/js

CTO 80% Paren

tal leave

SM/PM/Doer

Java and Ruby

Page 38: 10 things the cloud has taught us

38

Page 39: 10 things the cloud has taught us

#2: The Vision - Where do you want to go?

39

Examples of our vision:

Scaling should not be an issue

Products should improve continously

Instant and frequent deploys

Don´t reinvent the wheel (”Stand on the shoulder of giants”)

Lower baseline costs

Less operations

Create a platform that is open (create API:s)

Page 40: 10 things the cloud has taught us

#3: Be Agile - Execute!

40

Decide the next steps but dont plan too long ahead

With smaller applications its easier to make changes

Use a method

Sprint Daily

Ticket planning Retrospective

Page 41: 10 things the cloud has taught us

Old way with hardware

41

Page 42: 10 things the cloud has taught us

42

Page 43: 10 things the cloud has taught us

43

Page 44: 10 things the cloud has taught us

44

ASF

$ sudo gem install heroku

Page 45: 10 things the cloud has taught us

45

ASF

$ heroku create tv4weather-stage

Created http://[email protected]:tv4weather-stage.git

Page 46: 10 things the cloud has taught us

46

ASF

$ git push heroku master

-----> Heroku recieving push-----> Rails app detected-----> Launching..... done http://tv4weather-stage.heroku.com deployed

Page 47: 10 things the cloud has taught us

47

Page 48: 10 things the cloud has taught us

48

Page 49: 10 things the cloud has taught us

49

Page 50: 10 things the cloud has taught us

50

Page 51: 10 things the cloud has taught us

51

Page 52: 10 things the cloud has taught us

52

Page 53: 10 things the cloud has taught us

53

Page 54: 10 things the cloud has taught us

54

ASF

$ heroku addons:add custom:domains_basic

Adding custom_domains to myapp...done.

Page 55: 10 things the cloud has taught us

55

ASF

$ heroku domains:add stage.vaderkanalen.se

Added stage.vaderkanalen.se as a custom domain name to tv4weather-stage.heroku.com

Page 56: 10 things the cloud has taught us

56

ASF

$ heroku addons:memcache add:5mb

Adding memcache to myapp...done.

Page 57: 10 things the cloud has taught us

57

ASF

$ heroku addons:add exceptional:basic

Adding exceptional to myapp...done.

Page 58: 10 things the cloud has taught us

58

ASF

$ git push heroku master

-----> Heroku recieving push-----> Rails app detected-----> Launching..... done http://stage.vaderkanalen.se deployed

Page 59: 10 things the cloud has taught us

59

Page 60: 10 things the cloud has taught us

60

Page 61: 10 things the cloud has taught us

61

Page 62: 10 things the cloud has taught us

What is a Dyno?

A dyno is roughly equivalent to an individual Mongrel, Thin, or FastCGI backend in traditional Ruby deployment environments.

4 dynos are equivalent to the compute power of one CPU-core on other systems.

Elasticity: The number of dynos allocated for your app can be increased or decreased at any time – without server provisioning of any kind.

Intelligent routing: The routing mesh tracks the availability of each dyno and balances load accordingly. Requests are routed to a dyno only once it becomes available. If a dyno is tied up due to a long-running request, the request is routed to another dyno instead of piling up on the unavailable dyno’s backlog.

Process management: Each dyno process is monitored for responsiveness. Misbehaving dynos are taken down and new dynos are launched in their place.

Distribution and redundancy: Dynos are distributed across a large cluster of machines called the “dyno grid”. An app configured with two dynos is running two processes, as you'd expect, but each process is running on a separate machine. If a machine goes down, your site stays up – even with only two dynos.

62

Page 63: 10 things the cloud has taught us

63

Page 64: 10 things the cloud has taught us

64

Page 65: 10 things the cloud has taught us

65

ASF

$ heroku dynos 1

vaderkanalen-stage now running on 1 dyno

Page 66: 10 things the cloud has taught us

66

ASF

$ heroku dynos 24

vaderkanalen-stage now running on 24 dynos

Page 67: 10 things the cloud has taught us

67

ASF

$ heroku dynos 100

vaderkanalen-stage now running on 100 dynos

Page 68: 10 things the cloud has taught us

Does it scale?

68

”For dynos - there is no real limit. You can already set your app to 100 dynos through the command line "heroku dynos 100". If you need more, we can up that limit to just about any number you need. Let us know a week in advance at least, and we'll get your limit increased. If you're going to need a few thousand, it's best if we can work with you to understand your demand.”

Page 69: 10 things the cloud has taught us

Heroku - there’s an app for that

69

Page 70: 10 things the cloud has taught us

Heroku - there’s an app for that

70

Page 71: 10 things the cloud has taught us

#4: Forget about perfect - there is no such thing as PERFECT

71

Remember - things break

Things change, always

You never finish, the target is moving

Developing products is hard work

Find the product you think will do best in the future

Page 72: 10 things the cloud has taught us

#5: It’s getting better all the time - it’s not perfect, but it improves

72

Watch your products improve

Behind every product there are specialists

Easy installation, easy configuration, no maintenance, no operations and it keeps improving

Page 73: 10 things the cloud has taught us

Disqus improvements since we began using it

73

Mobile version of Disqus

iPhone-app

More Community functions

Like, Dislike and ”who does what”

Security improvements with Trusted Domains

Remake of the Commenting experience

Updated Wordpress plugins

Early Adopter Features and Settings

Rewritten implementation for faster download and rendering

Better Spam reporting and close commenting features

Inline Moderating

Yahoo and Facebook login

Page 74: 10 things the cloud has taught us

74

iPhone-app: 22 kr

Page 75: 10 things the cloud has taught us

Heroku and Polldaddy improvements since we began using it

75

Heroku Rails 3 available

MongoDB and CouchDB as an Addon

Redis to go

Polldaddy Media Library

Location Filtering

iPhone/iPad application

Swedish translation

SSL Support

Multi user accounts

and so on.......

Page 76: 10 things the cloud has taught us

#6: Quality and standards - Add to Cart

76

Use standard setups

”Thinner” products are easier to implement

Every line of code needs to be maintained

Done!

Open source

Speed of light matters

If you can automate it - automate it (builds, deploy, testing and so on)

Even advanced services can be delivered as products/platforms

Page 77: 10 things the cloud has taught us

#7: Build and use API’s - Standing on the shoulders of giants

77

Page 78: 10 things the cloud has taught us

78

Page 79: 10 things the cloud has taught us

79

Page 80: 10 things the cloud has taught us

80

Page 81: 10 things the cloud has taught us

Search with and without Solr

81

Index Server

Polopoly

Old Setup New Setup

Index Server

Polopoly

Solr MasterSo

lr Sl

ave

Solr

Slav

e

Solr

Slav

e

Solr

Slav

e

Solr

Slav

e

Solr

Slav

eScales horizontally

Page 82: 10 things the cloud has taught us

82

Page 83: 10 things the cloud has taught us

83

Page 84: 10 things the cloud has taught us

Väderkanalen.se

84

Page 85: 10 things the cloud has taught us

Väderkanalen.se - mobile version

85

Page 86: 10 things the cloud has taught us

Variations built upon the API

86

Page 87: 10 things the cloud has taught us

Variations built upon the API

87

Page 88: 10 things the cloud has taught us

Old TV4Play and new TV4Play

88

TV4Play.se

iPhone

BackendBackend

API

TV4Play.se iPhone

AndroidOTT

Old TV4Play New TV4Play

Plex

Plex

Page 89: 10 things the cloud has taught us

TV4Play.se’s API

89

Search

API

Editorial Content

Page 90: 10 things the cloud has taught us

90

gKX8dF3mQs2NDbUN&Vw,p]RqFsBAX)CX>D4c/LEp

Page 91: 10 things the cloud has taught us

#8: Security, operations and status

91

gKX8dF3mQs2NDbUN&Vw,p]RqFsBAX)CX>D4c/LEp

Page 92: 10 things the cloud has taught us

Mistakes can be fatal

92

Page 93: 10 things the cloud has taught us

Export your content

93

Page 94: 10 things the cloud has taught us

Väderkanalen.se

94

Page 95: 10 things the cloud has taught us

Väderkanalen.se

95

Page 96: 10 things the cloud has taught us

status.*.com

96

Page 97: 10 things the cloud has taught us
Page 98: 10 things the cloud has taught us
Page 99: 10 things the cloud has taught us
Page 100: 10 things the cloud has taught us

#9: The Echosystem of the Cloud - use it and be a part of it

100

Page 101: 10 things the cloud has taught us

101

Page 102: 10 things the cloud has taught us

102

Page 103: 10 things the cloud has taught us

103

IaaS - PaaS - SaaS > You

IaaS

PaaS

SaaS

You!

Amazon AWS

Heroku

Lightspun

TV4.se

=

Page 104: 10 things the cloud has taught us

#10: It’s business! - Talk business, not clouds

104

Use terms that your management understands: money, quality, ROI, QoS, TTM etc.

Find the price model that fits you

Use the right numbers when you calculate costs (easy to forget what you don’t see)

More arguments: ”We can increase the time to market” ”We can scale (cheaper?)” ”We get "this" (ex. functionality developed)” ”We dont have to spend time doing xxx”

Increased Transparency

Page 105: 10 things the cloud has taught us

105

#10: It’s business! - Talk business, not clouds

Page 106: 10 things the cloud has taught us

Transparency

106

Page 107: 10 things the cloud has taught us

107

Page 109: 10 things the cloud has taught us

#Extra: Opportunities!

109

Local clouds

More products and services based on ”thin” needs

Operations (backup, performance, tuning, support and more)


Recommended