Replies: 2 comments
-
|
As the author: I don't consider Actionbase a default choice. If a single database instance can handle the workload, that's almost always the better answer. Actionbase exists not because relational models failed, but because organizational realities accumulated faster than schemas could. |
Beta Was this translation helpful? Give feedback.
-
|
Writing this—and rewriting it—made us reflect on something we hadn't fully recognized. Consolidation solved fragmentation, but created a different risk. Before, the bus factor was spread across teams. Now it's concentrated in one team—and a small one. Perhaps this was part of why we open-sourced, even if we didn't realize it at the time. |
Beta Was this translation helpful? Give feedback.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
-
Actionbase grew out of concrete needs in our internal environment.
The same interaction features—likes, views, follows—were being rebuilt across teams, each time with different stacks, different schemas, different failure modes. And when traffic grew, each hit similar scaling walls.
Actionbase emerged as an attempt to stop solving the same problem ten different ways—and to solve it at scale.
What is Actionbase?
Actionbase is a database built to serve user interactions in real time, currently on HBase.
An interaction is modeled as: who did what to which target.
Actionbase focuses on a small set of high-frequency operations:
Typical use cases include per-item interaction states, interaction counts in feeds, per-user interaction histories, and ordered lists of interacted items.
Despite appearing as different product features, Actionbase treats all of these uniformly as interactions—with what that requires: accurate counts, consistent toggles, and ordering despite out-of-order events, at scale.
An Open Question
If you've built or operated interaction-heavy, user-facing systems, we want to learn from your experience.
We took the consolidation path—and scaling came with it. Curious whether others faced the same fork, or found a different way entirely.
Why We're Asking
Actionbase runs in production at Kakao, handling over a million requests per minute. But proving something works is not the same as proving it was the right call. What you see here is what survived—through hitting walls, live incidents with users waiting, and fixes shipped while complaints were still coming in.
If there's more we missed—a path we should have taken, or a failure mode waiting to happen—that's exactly what we're here to find.
Beta Was this translation helpful? Give feedback.
All reactions