This is our collection of must-read articles about web performance and ops for the weekend. There’s something about Node.js, MongoDB, caching, and more.
Every week we bring you a collection of links to places on the web that we find particularly newsworthy, interesting, entertaining, and topical. We try to focus on some particular area or topic each week, but in general we will cover Internet, web development, networking, web performance, webops, security, and other geeky topics.
This week’s suggested reading
A new study by Northwestern University researchers has revealed that public DNS services could actually slow down users’ web-surfing experience. As a result, researchers have developed a solution to help avoid such an impact: a tool called namehelp that could speed web performance by 40 percent.
A presentation by Roland Guelle.
The Dropbox mobile client caches frequently-accessed files, so that viewing them doesn’t require a network call. Both our Android and iOS clients use the LRU caching algorithm, which often selects good files to cache. But while this is the usual algorithm for caching, I wondered: are there better algorithms, and if not, why is LRU the best option?
Just over 20,000,000 people hit my API yesterday 700,749,252 times, playing the ~8,000 games my analytics platform is integrated in for a bit under 600 years in total play time. That’s just yesterday. There are lots of different bottlenecks waiting for people operating at scale. Heroku and NodeJS, for my use case, eventually alleviated a whole bunch of them very cheaply.
Node.js and MongoDB are great; they’re super-scalable and a joy to work with. However, there were plenty of growth pains as I implemented the Streamified API with these technologies. It took me a LOT of experimentation, and in the process I ended up exploring more optimizations and speed-ups than I ever thought I would have to consider.
I’ve used MongoDB for over a year at scale at both Heyzap and Bugsnag and I’ve found it to be a very capable database. As with all databases, there are some gotchas, and here is a summary of the things I wish someone had told me earlier.
You can also subscribe to these articles
You can also subscribe to these weekly articles and receive them in your email inbox each week.
Image (top) via Shutterstock.