Hvad bruger de store web sites
Denne artikel fortæller lidt om hvilke teknologier web løsninger fra 10 af
de støreste web firmaer bygger på.
Den forudsætter kun lidt kendskab til navne på kendte web teknologier.
Historie:
V1.0 - 06/02/2010 - original
V1.1 - 07/02/2010 - rette et par stavefejl
Forbehold
Meget få af disse firmaer har offentliggjordt detaljerede beskrivelse af deres
arkitektur.
Denne artikel er derfor primært baseret på rygter som florerer på internettet.
Deraf følger at der sikkert er en del fejl.
Jeg vil ikke angive links, fordi det ville blive langt over hundrede links.
Men det meste kan findes ved at slå firma og/eller teknologi op i wikipedia
eller google firma-teknologi kombinationen.
Google
Search engine:
app tier : egen search engine skrevet i C++ / egen web server skrevet i C / Linux
webcrawler skrevet i Python / Linux
data tier : egen ikke-relationel database skrevet i C++ / eget fil system skrevet i C++ / Linux
Adwords:
data tier : MySQL med InnoDB tabeller / Linux
GMail + Google Docs:
client tier : JavaScript/Closure Tools
app tier : egen web server skrevet i C + egen servlet engine skrevet i Java / Linux
data tier : egen ikke-relationel database skrevet i C++ / eget fil system skrevet i C / Linux
Google Calendar + Google Wawe:
client tier : JavaScript/GWT (Java)
app tier : Java web app / Jetty servlet engine / Linux
Youtube:
app tier : web app skrevet i Python / Apache HTTPD + lighttpd / Linux
data tier : files at CDN
MySQL med InnoDB tabeller / Linux
Yahoo
Yahoo Portal:
app tier: PHP (med en lille smule Symfony) / Apache / FreeBSD + Linux
data tier: MySQL med InnoDB tabeller / FreeBSD + Linux
Yahoo Mail + Yahoo Groups:
client tier: JavaScript/YUI
app tier: PHP / Apache / FreeBSD + Linux
data tier: egen ikke-relationel database skrevet i C++ / eget fil system skrevet i C / FreeBSD + Linux
Flickr:
app tier: PHP / Apache / Linux
Perl scripts / Linux
Java services / Linux
data tier: files at CDN
MySQL med InnoDB tabeller / Linux
datawarehouse:
app+data tier: Hive + Hadoop (Java) / FreeBSD + Linux
Microsoft
Corporate web site:
app tier: ASP.NET / IIS / Windows
data tier: SQLServer / Windows
Live services:
app tier: ASP.NET / IIS / Windows
data tier: ?
Bing search engine:
app tier: ASP.NET / IIS / Windows
data tier: ?
Facebook
Main app:
app tier: PHP / Apache / Linux
data tier: files at CDN / Linux
MySQL med InnoDB tabeller / Linux
Chat:
app tier - skrevet i Erlang og C++ / Linux
datawarehouse:
app+data tier: Hive + Hadoop (Java) / Linux
Myspace
app tier: ASP.NET / IIS / Windows
data tier: SQLServer / Windows
eget fil system skrevet i C / Linux
Twitter
app tier: frontend Ruby on Rails / CRuby / Mongrel / Linux
backend Scala / Java / Linux
data tier: MySQL med InnoDB tabeller / Linux
LinkedIn
app tier: Java web app med Spring MVC (med C++ via JNI for cache service) / Tomcat + Jetty servlet engines / Linux
data tier: Oracle / Solaris
MySQL / Solaris
Wikipedia
app tier: PHP / Apache / Linux
Lucene search engine / Mono /Linux
data tier: MySQL med InnoDB tabeller / Linux
Amazon
app tier: egen web server skrevet i C++ / Linux
Java web app / JBoss servlet engine / Linux
Perl scripts / Linux
data tier: Oracle / Linux
EBay
app tier: Java web app / WebSphere servlet engine / Windows + Linux
other Java code / Windows + Linux
data tier: Oracle / Solaris
Opsummering
Ud af de 10 firmaer er der:
4 som bruger Java web apps
3 som bruger PHP
2 som bruger ASP.NET
2 som bruger diverse egen udviklede web frontend
1 som bruger Ruby on Rails
1 som bruger Python web apps
6 som bruger MySQL
3 som bruger diverse egen udviklede storage
2 som bruger Oracle
2 som bruger SQLServer
9 som bruger Linux
3 som bruger Windows
2 som bruger Solaris
1 som bruger FreeBSD
(tallene summerer ikke til 10, fordi mange af firmerne bruger flere muligheder)