faz.net technical challenges 2000 - 2009. what i won’t show business numbers, € business plans

56
Faz.net technical challenges 2000 - 2009

Post on 18-Dec-2015

221 views

Category:

Documents


5 download

TRANSCRIPT

Page 1: Faz.net technical challenges 2000 - 2009. what i won’t show business numbers, € business plans

Faz.net technical challenges 2000 - 2009

Page 2: Faz.net technical challenges 2000 - 2009. what i won’t show business numbers, € business plans

what i won’t show

• business numbers, €• business plans

Page 3: Faz.net technical challenges 2000 - 2009. what i won’t show business numbers, € business plans

what to do (from the point of view of lowly programmer)

• invent a business plan• define, plan, and implement desired functionality• build a robust, secure, scalable system• keep that system up 100% of the time• allow changes to support new business initiatives

Page 4: Faz.net technical challenges 2000 - 2009. what i won’t show business numbers, € business plans

a brief history

• launched 8 Jan 2001• “stable” by Spring of 2001• unstable on 11 Sep 2001• better able to handle (many classes of) huge load increases by

Spring 2002

Page 5: Faz.net technical challenges 2000 - 2009. what i won’t show business numbers, € business plans
Page 6: Faz.net technical challenges 2000 - 2009. what i won’t show business numbers, € business plans

how big is faz.net?

• much smaller than google • smaller than spiegel

Page 7: Faz.net technical challenges 2000 - 2009. what i won’t show business numbers, € business plans
Page 8: Faz.net technical challenges 2000 - 2009. what i won’t show business numbers, € business plans

how big is faz.net?

• much smaller than google • smaller than spiegel• comparable to other newspapers

Page 9: Faz.net technical challenges 2000 - 2009. what i won’t show business numbers, € business plans
Page 10: Faz.net technical challenges 2000 - 2009. what i won’t show business numbers, € business plans
Page 11: Faz.net technical challenges 2000 - 2009. what i won’t show business numbers, € business plans
Page 12: Faz.net technical challenges 2000 - 2009. what i won’t show business numbers, € business plans
Page 13: Faz.net technical challenges 2000 - 2009. what i won’t show business numbers, € business plans

a sketch of our system layout (a couple years old)

• load balancer• web servers• DB and file servers• other application servers• client machines, e.g. newsroom• external partners, e.g. freemail provider

Page 14: Faz.net technical challenges 2000 - 2009. what i won’t show business numbers, € business plans
Page 15: Faz.net technical challenges 2000 - 2009. what i won’t show business numbers, € business plans
Page 16: Faz.net technical challenges 2000 - 2009. what i won’t show business numbers, € business plans

an ancient attempt to show how changing an article affects site

• editor publishes a new article (or a new version of an existing article)

• a DB trigger fires• cached DB result sets get updated• cached HTML gets updated or deleted• (we do things differently now)

Page 17: Faz.net technical challenges 2000 - 2009. what i won’t show business numbers, € business plans
Page 18: Faz.net technical challenges 2000 - 2009. what i won’t show business numbers, € business plans
Page 19: Faz.net technical challenges 2000 - 2009. what i won’t show business numbers, € business plans

how to measure what is happening / whether things are ok

• measure throughput at / between various points

Page 20: Faz.net technical challenges 2000 - 2009. what i won’t show business numbers, € business plans

(partial) network traffic over time

• MRTG (http://oss.oetiker.ch/mrtg/)

• Standard, free (Gnu)

• Useful at a glance info

Page 21: Faz.net technical challenges 2000 - 2009. what i won’t show business numbers, € business plans

how to measure what is happening / whether things are ok

• measure throughput at / between various points• measure, e.g. cpu load on web servers (NB: load is pretty low, max

would be 12*100)

Page 22: Faz.net technical challenges 2000 - 2009. what i won’t show business numbers, € business plans
Page 23: Faz.net technical challenges 2000 - 2009. what i won’t show business numbers, € business plans
Page 24: Faz.net technical challenges 2000 - 2009. what i won’t show business numbers, € business plans
Page 25: Faz.net technical challenges 2000 - 2009. what i won’t show business numbers, € business plans

long term trend: one year

Page 26: Faz.net technical challenges 2000 - 2009. what i won’t show business numbers, € business plans
Page 27: Faz.net technical challenges 2000 - 2009. what i won’t show business numbers, € business plans

Some errors can be seen by any user with a browser who runs into them

• Server error• Wrong contents• Broken HTML, images, or …

Page 28: Faz.net technical challenges 2000 - 2009. what i won’t show business numbers, € business plans

some page ailments complain helpfully

Page 29: Faz.net technical challenges 2000 - 2009. what i won’t show business numbers, € business plans
Page 30: Faz.net technical challenges 2000 - 2009. what i won’t show business numbers, € business plans
Page 31: Faz.net technical challenges 2000 - 2009. what i won’t show business numbers, € business plans

digested log files can be helpful

• web sites tend to have many log files, several kinds of log files; and some kinds can be *huge*

• they tend to be straight ascii files in some format you might have little control over

• various kinds of statistics might sometimes interest you• in particular error statistics

Page 32: Faz.net technical challenges 2000 - 2009. what i won’t show business numbers, € business plans

ad hoc (logfiles | awk ... excel

Page 33: Faz.net technical challenges 2000 - 2009. what i won’t show business numbers, € business plans

ad hoc: mrtg + paint o.ä.

Page 34: Faz.net technical challenges 2000 - 2009. what i won’t show business numbers, € business plans

ad hoc

Page 35: Faz.net technical challenges 2000 - 2009. what i won’t show business numbers, € business plans

ad hoc: DB query -> Excel

Page 36: Faz.net technical challenges 2000 - 2009. what i won’t show business numbers, € business plans

external, hired monitoring service

• hire someone outside your site to watch certain pages on your site (load them periodically) and keep statistics about timing, sizes, errors

• ideally get regular reports showing everything is groovy• support “drilling” to get more details when necessary

Page 37: Faz.net technical challenges 2000 - 2009. what i won’t show business numbers, € business plans
Page 38: Faz.net technical challenges 2000 - 2009. what i won’t show business numbers, € business plans

using logarithms to graph events with highly varying scales

Page 39: Faz.net technical challenges 2000 - 2009. what i won’t show business numbers, € business plans

some 50x errors showed up on utility servers one day

Page 40: Faz.net technical challenges 2000 - 2009. what i won’t show business numbers, € business plans
Page 41: Faz.net technical challenges 2000 - 2009. what i won’t show business numbers, € business plans

a primitive top 10 most popular pictures (PIs per hour)

Page 42: Faz.net technical challenges 2000 - 2009. what i won’t show business numbers, € business plans

What does this mean? (irregular load distribution, strange peeks)

Page 43: Faz.net technical challenges 2000 - 2009. what i won’t show business numbers, € business plans

somewhat subtle: unexpected cpu load spikes on utility machines

Page 44: Faz.net technical challenges 2000 - 2009. what i won’t show business numbers, € business plans

diagnosis: software release increases cpu load

Page 45: Faz.net technical challenges 2000 - 2009. what i won’t show business numbers, € business plans

Confirmation: rollback helps

Page 46: Faz.net technical challenges 2000 - 2009. what i won’t show business numbers, € business plans
Page 47: Faz.net technical challenges 2000 - 2009. what i won’t show business numbers, € business plans

a little bit about development methods

• requirements gathering (quality varies)• planning• implementation

Page 48: Faz.net technical challenges 2000 - 2009. what i won’t show business numbers, € business plans

our implementation languages

• browser– html (+ „furniture graphics“)

– javascript

– css (fairly recently)

– public javascript libraries (fairly recently): MooTools, JQuery

Page 49: Faz.net technical challenges 2000 - 2009. what i won’t show business numbers, € business plans

One view of a web application pattern (Application Architecture Guide 2.0: Designing Applications on

the .NET Platform

Page 50: Faz.net technical challenges 2000 - 2009. what i won’t show business numbers, € business plans

our implementation languages

• webserver („front end“)– ASP (JScript, mainly 2000 – 2005)

– DotNet 2 (2005 – 2007)

– DotNet 3 (2007 - )

Page 51: Faz.net technical challenges 2000 - 2009. what i won’t show business numbers, € business plans

implementation languages

• „middle tier“– purchased DLLs (mostly INBS): 2000 –

– home-built DLL(s) (VBmostly INBS ): ca. 2003 –

– home-built DLLs in DotNet: ca. 2005 -

Page 52: Faz.net technical challenges 2000 - 2009. what i won’t show business numbers, € business plans

„back-end“ data base

• SQL• MS SQL add-ons:

– stored procedures

– user defined functions

– triggers

– schedulable DB „jobs“

Page 53: Faz.net technical challenges 2000 - 2009. what i won’t show business numbers, € business plans

more „back end“: file servers, application servers, background processes

• various scripting languages– lowly batch files

– „windows script host“

– cygwin (unix-like shells and friends under windows)

– recently some powershell (once called monad)

– windows „scheduled tasks“ (similar to Unix cron)

• special purpose utilities– gathering and digesting log files

– checking synchronization of distributed databases

Page 54: Faz.net technical challenges 2000 - 2009. what i won’t show business numbers, € business plans
Page 55: Faz.net technical challenges 2000 - 2009. what i won’t show business numbers, € business plans

scaling challenges

• as traffic grows log files get bigger• as a content site ages, content grows• as a site with registered users grows and ages, the number of users

(hopefully increases)

Page 56: Faz.net technical challenges 2000 - 2009. what i won’t show business numbers, € business plans

ways to scale

• exploit parallelism where possible• buy bigger, faster hardware• make units of work simpler, smaller• other suggestions?• combine these – what works best?