On designing and deploying internet scale servicesbillowqiu
The document discusses best practices for designing and deploying internet-scale services. Some key recommendations include:
1. Design services to be operations-friendly by anticipating failures, implementing redundancy, using commodity hardware, supporting a single version, and utilizing multi-tenancy.
2. Simplify services as much as possible to reduce complexity and failures. Automate everything that can be automated.
3. Separate development, testing, and operations teams should work closely together to most effectively build reliable, scalable services.
This document discusses Facebook's use of Erlang in developing its chat feature. It describes how Facebook had over 200 million active users in 2009 who spent over 3.5 billion minutes on the site daily. It needed a chat feature and initially developed one in a hackathon using Erlang due to its concurrency and distribution capabilities. Over time, the chat architecture was developed further using Erlang's channel servers to queue and deliver messages across many nodes. The document discusses key Erlang features like concurrency, distribution, fault isolation, and hot code swapping that helped Facebook scale the chat feature to support over 800 million messages per day.
The document discusses several theories related to how consumers engage with media:
- Uses and gratifications theory identifies 5 common reasons people use media - escapism, entertainment, surveillance, personal identity, and public relations.
- Media dependency theory proposes that people's need for media is influenced by their circumstances rather than a constant dependency, and that media helps with social integration.
- Other theories discussed include reception theory, dominant ideology/hegemony theory, Maslow's hierarchy of needs, and the two-step flow theory.
On designing and deploying internet scale servicesbillowqiu
The document discusses best practices for designing and deploying internet-scale services. Some key recommendations include:
1. Design services to be operations-friendly by anticipating failures, implementing redundancy, using commodity hardware, supporting a single version, and utilizing multi-tenancy.
2. Simplify services as much as possible to reduce complexity and failures. Automate everything that can be automated.
3. Separate development, testing, and operations teams should work closely together to most effectively build reliable, scalable services.
This document discusses Facebook's use of Erlang in developing its chat feature. It describes how Facebook had over 200 million active users in 2009 who spent over 3.5 billion minutes on the site daily. It needed a chat feature and initially developed one in a hackathon using Erlang due to its concurrency and distribution capabilities. Over time, the chat architecture was developed further using Erlang's channel servers to queue and deliver messages across many nodes. The document discusses key Erlang features like concurrency, distribution, fault isolation, and hot code swapping that helped Facebook scale the chat feature to support over 800 million messages per day.
The document discusses several theories related to how consumers engage with media:
- Uses and gratifications theory identifies 5 common reasons people use media - escapism, entertainment, surveillance, personal identity, and public relations.
- Media dependency theory proposes that people's need for media is influenced by their circumstances rather than a constant dependency, and that media helps with social integration.
- Other theories discussed include reception theory, dominant ideology/hegemony theory, Maslow's hierarchy of needs, and the two-step flow theory.