TAOBench: Running social media workloads on PlanetScale
Learn how we used TAOBench with PlanetScale to benchmark social media workloads
One million queries per second with MySQL
Discover how PlanetScale handles one million queries per second (QPS) with horizontal sharding in MySQL
Zero downtime Laravel migrations
Learn how to run no downtime non-blocking schema migrations in your production Laravel app with PlanetScale.
How product design works at PlanetScale
Learn about the lightweight and highly collaborative process our product design team follows to ship quickly at PlanetScale.
Introducing FastPage: Faster offset pagination for Rails apps
Introducing FastPage a new gem for ActiveRecord that speeds up deep pagination queries.
How to kill Sidekiq jobs in Ruby on Rails
Learn how PlanetScale uses a custom middleware to kill our Sidekiq jobs in production without relying on deploys.
Database DevOps
Learn how PlanetScale enables databases to seamlessly fit into the DevOps lifecycle.
Ruby on Rails: 3 tips for deleting data at scale
Learn how to delete data in large Rails apps with destroy_async delete destroy and scheduled cron jobs.
The Slotted Counter Pattern
Handle MySQL increment counter bursts with the Slotted Counter Pattern
Behind the scenes: How we built Password Roles
Learn how we leveraged Vitess ACLs and VTTablet to build our password roles functionality
Temporal Workflows at scale with PlanetScale: Part 1
Learn how to create a more reliable workflow with Temporal and PlanetScale
How do Database Indexes Work?
Learn how database indexes work under the hood and how they can be used to speed up queries
Identifying slow Rails queries with sqlcommenter
Learn how to use sqlcommenter with Rails
The operational relational schema paradigm
An exploration of the current landscape of schema change methodology and what the future should look like.
Why we chose NanoIDs for PlanetScale’s API
Learn why PlanetScale used NanoID to generate obscure and URL friendly identifiers.
Introducing Beam
We’re sharing the PlanetScale-powered communication tool we use internally.
How we made PlanetScale’s background jobs self-healing
How to build self-healing background jobs into your application with background queueing systems like Sidekiq.
Introduction to Laravel caching
Learn how to speed up your Laravel applications with caching.
Using entropy for user-friendly strong passwords
When implementing user authentication with passwords throw out the password rules you know.
How our Rails test suite runs in 1 minute on Buildkite
Learn how we use minitest and FactoryBot with parallel tests to get our Rails test suite to run in 1 minute on Buildkite.
NoneSQL All the DevEx
Databases will win based on superior developer experience not what is under the hood.
Building PlanetScale with PlanetScale
How PlanetScale uses database branching and non-blocking schema changes to build PlanetScale.
The promises and realities of the relational database model
The relational model is one of the oldest surviving models in computer science but it has some drawbacks that need to be addressed.
Pitfalls of isolation levels in distributed databases
The more loosely coupled components are in a distributed system the better it scales
MySQL semi-sync replication: durability consistency and split brains
We look at some basics and follow up to present scenarios that require higher level intervention to ensure availability and to avoid split brains from taking place.
Learn Horizontal Scaling on PlanetScaleDB with Vitess — Rate Puppies in a Rust app with Sharded MySQL Database
Rate Puppies in a Rust app with Sharded MySQL Database