As a part of this regular feature, I summarize some of the best and most interesting blog posts, updates, and more from engineering teams at some of the top companies in the world, with a particular emphasis on Facebook, Google, Amazon, Apple, Netflix, Microsoft, Uber, Lyft, Spotify, Shopify, and so much more. These posts are often filled with useful insights and tips you and your team can apply in your own projects, as well as inspiration, but it can be hard to find the time to read them. View this feature as your "sparknotes," of sorts, condensing what these teams are up to into something you can digest in less than a minute!
1. WHAT'S GOING ON AT...FACEBOOK: Facebook explains how it manages to scale the wide range of back-end services needed for its products using what it is believed to be the industry's only generic sharding platform achieving wide adoption at massive scale, Shard Manager (see attached picture for a diagram of the platform's architecture). By showing how feasible it is to build such a solution in this post, Facebook says it hopes to spark conversation and "help to collectively advance the field around this cutting-edge problem in the technical community."
What is Shard Manager?
According to Facebook, Shard Manager "facilitates efficient development and operation of reliable sharded applications," managing millions of shards hosted hundreds of thousands of servers across hundreds of apps in production.
Sharded apps that have been built or migrated onto Shard Manager have helped with the smooth functioning of a number of user-facing products, including the Facebook app, Messenger, WhatsApp, and Instagram, with use cases varying significantly. There are many reasons for wide adoption...
Building apps with Shard Manager:
Upon selecting which app type suits their needs and figuring out how to slide workload/data into shares, there are three steps in building a sharded application on Shard Manager...
2. WHAT'S GOING ON AT...GOOGLE: A Google Developer Advocate explains how a new API currently in development, makes it possible for developers to access the user's locally installed fonts...