A collection of high-level, technology-related articles for managers and executives.
This series of articles will introduce a pet project of mine, KCK, a self-priming, intelligent cache designed to maximize the performance of data pipelines and data-driven websites. Its goal is to make fast, Python-powered networked systems a bit faster.
For this first article, I’m going to define what I mean when I talk about “fast, Python-powered networked systems,” because if you’re not running some version of my flavor of such a system or if you've not put much thought into architecture generally, then my project will likely just add complexity and you’ll kick yourself for ever having looked at it. Beware all who pass through these gates, for here be dragons.
I'm learning to love NoSQL databases for their ability to scale and replicate, but it's tough to beat Postgres for projects whose scaling requirements are more modest. The fact is, JOINs are handy. And so are all the wonderful bells and whistles that a mature relational database can offer like transactions and multiple indexing strategies. This article speak to folks who want to know how far you can scale with a traditional SQL database like Postgres.
The solution to both the demand-spike problem and the availability problem is the same. Whether a site is running in a datacenter or in the cloud at AWS or Google, the idea is that you can set up what's known as a "load balancer" that will distribute incoming requests to the array of web servers it services.