Facebook architecture: software stack

In this presentation filmed during QCon SF 2008, Aditya Agarwal discusses Facebook’s architecture, more exactly the software stack used, presenting the advantages and disadvantages of its major components: LAMP (PHP, MySQL), Memcache, Thrift, Scribe.

10 Must-Know Topics For Software Architects In 2009

An interesting post regarding the 10 most important topics an architect should know about. Quickly, here is the top ten:

  1. Cloud Computing
  2. Non-relational databases
  3. Next-generation distributed computing
  4. Web-Oriented Architecture (WOA)
  5. Mashups
  6. Open Supply Chains via APIs
  7. Dynamic Languages
  8. Social computing
  9. Crowdsourcing and peer production architectures
  10. New Application Models

Scalability: best practises

Introduction

The main cause of application bottlenecks are external data such as RDBMS, Application Server, 3rd Party data feeds, etc. A service is said to be scalable if when we increase the resources in a system, it results in increased performance
in a manner proportional to resources added.

Best practises

Here are presented several key principles learned from different sources
to scale the transactional throughput of a web-based system.

Why latency matters

Denormalization of data

Why denormalization is good:

References