Medium Engineering

Stories from the team building Medium.

Follow publication

Sign up to discover human stories that deepen your understanding of the world.

Free

Distraction-free reading. No ads.

Organize your knowledge with lists and highlights.

Tell your story. Find your audience.

Membership

Read member-only stories

Support writers you read most

Earn money for your writing

Listen to audio narrations

Read offline with the Medium app

Written by Jacob Bennett

Staff Software Engineer @ Medium • https://jacob.bio • I write about software engineering, product design and development, and leadership in tech.

Responses (10)

I promote separation of state changes, but in practice it’s always easier to ram things into one process.

I use Event Modeling to highlight those transitions whilst diagramming. A process that does multiple things would stand out like a soar thumb.

--

We have a similar set up in our production. 1 RW cluster + 3 more RO cluster. All modules that do RW connects only to the single RW cluster. That way we avoid the exact situation mentioned by you on our RW modules. However, we once got into the…

--

As a side note: We didn’t catch this before production because we don’t use read replicas in non-production environments. That will probably change now.

Ehm, preprod should always be a mirror of prod, and writing automates tests then catches bugs like this. 🙂 Also, I would space out the sending of emails and wait for a signal that nothing is spiking in weird ways on any of the services. Or, you can…

--