amy + scalability 53
Tornado Web Server
march 2010 by amy
Tornado is an open source version of the scalable, non-blocking web server and tools that power FriendFeed. The FriendFeed application is written using a web framework that looks a bit like web.py or Google's webapp, but with additional tools and optimizations to take advantage of the underlying non-blocking infrastructure.
The framework is distinct from most mainstream web server frameworks (and certainly most Python frameworks) because it is non-blocking and reasonably fast. Because it is non-blocking and uses epoll, it can handle thousands of simultaneous standing connections, which means it is ideal for real-time web services. We built the web server specifically to handle FriendFeed's real-time features — every active user of FriendFeed maintains an open connection to the FriendFeed servers. (For more information on scaling servers to support thousands of clients, see The C10K problem.)
See the Tornado documentation for a detailed walkthrough of the framework.
python
scalability
The framework is distinct from most mainstream web server frameworks (and certainly most Python frameworks) because it is non-blocking and reasonably fast. Because it is non-blocking and uses epoll, it can handle thousands of simultaneous standing connections, which means it is ideal for real-time web services. We built the web server specifically to handle FriendFeed's real-time features — every active user of FriendFeed maintains an open connection to the FriendFeed servers. (For more information on scaling servers to support thousands of clients, see The C10K problem.)
See the Tornado documentation for a detailed walkthrough of the framework.
march 2010 by amy
Web Sockets in Tornado - Bret Taylor's blog
december 2009 by amy
The Web Sockets API enables web browsers to maintain a bi-directional communication channel to a server, which in turn makes implementing real-time web sites about 1000% easier than it is today.
Currently, the only reasonable technical facility available to browsers to communicate to web servers is XMLHttpRequest. Sites that update in real-time like FriendFeed use a number of horrible hacks on top of XMLHttpRequest like long-polling to get data in real-time. (If you are interested, Tornado ships with a chat demo application that uses this long-polling technique - here is the JavaScript in all its hacky glory).
Web Sockets support a much simpler interface that enables both the client and the server send messages to each other asynchronously
md
gae
scalability
javascript
Currently, the only reasonable technical facility available to browsers to communicate to web servers is XMLHttpRequest. Sites that update in real-time like FriendFeed use a number of horrible hacks on top of XMLHttpRequest like long-polling to get data in real-time. (If you are interested, Tornado ships with a chat demo application that uses this long-polling technique - here is the JavaScript in all its hacky glory).
Web Sockets support a much simpler interface that enables both the client and the server send messages to each other asynchronously
december 2009 by amy
Scala Lift
december 2008 by amy
Lift is an expressive and elegant framework for writing web applications. Lift stresses the importance of security, maintainability, scalability and performance, while allowing for high levels of developer productivity. Lift is open source software licensed under an Apache 2.0 license.
framework
scalability
twitter
java
december 2008 by amy
the-cassandra-project - Google Code
july 2008 by amy
Cassandra is a distributed storage system for managing structured data while providing reliability at a massive scale.
database
p2p
distributed
grid
scalability
storage
july 2008 by amy
EC2 on Rails
february 2008 by amy
Deploy a Ruby on Rails app on EC2 in five minutes
aws
rails
ec2
amazon
ruby
scalability
virtualization
deployment
february 2008 by amy
Welcome to Hadoop!
august 2007 by amy
mapreduce implementation
search
open_source
concurrency
scalability
algorithms
august 2007 by amy
Google Paper on Parallel EM Algorithm using MapReduce » Data Wrangling Blog
july 2007 by amy
The part I found interesting was the first detailed description of using the MapReduce model to run large-scale Expectation Maximization (EM) computations in parallel. An implementation of this on Hadoop and Amazon EC2 will let you tackle some large scale
research
google
machine_learning
ec2
amazon
aws
scalability
collaborative_filtering
academia
july 2007 by amy
related tags
academia ⊕ algorithms ⊕ amazon ⊕ analysis ⊕ architecture ⊕ aws ⊕ business ⊕ cloud_computing ⊕ collaborative_filtering ⊕ comment ⊕ computer_languages ⊕ computing ⊕ concurrency ⊕ consistency ⊕ database ⊕ databases ⊕ datamining ⊕ deployment ⊕ development ⊕ devops ⊕ distributed ⊕ ec2 ⊕ engineering ⊕ framework ⊕ gae ⊕ genomics ⊕ google ⊕ grid ⊕ infrastructure ⊕ interviews ⊕ java ⊕ javascript ⊕ machine_learning ⊕ md ⊕ networks ⊕ open_source ⊕ optimization ⊕ p2p ⊕ performance ⊕ php ⊕ presentations ⊕ python ⊕ queuing ⊕ rails ⊕ research ⊕ ruby ⊕ s3 ⊕ scalability ⊖ search ⊕ software ⊕ storage ⊕ sxsw ⊕ tbr ⊕ technology ⊕ tips ⊕ tutorials ⊕ twitter ⊕ usability ⊕ videos ⊕ virtualization ⊕ web_dev ⊕ web_services ⊕Copy this bookmark: