Home | Integration | Demo | Details | Architecture | Project |
Minka is a simple and abstract model for sharding, balancing and distributing data.
It’s provided with no orientation, that’s why is also reduced in complexity and features.
Minka is not about routing http web requests for online realtime responses, but more about keeping a stable number of entities always balanced and available at a cluster of application instances.
Minka is not a database or filesystem
Minka is not a processing framework
Minka is not a deployment or containerization tool
Release 0.1
done
: initial leader’s load of entities from DB and CRUD operations on dutiesdone
: balancing and distribution flowsRelease 0.2
done
: replace zookeeper broker with a TCP socket brokerdone
: add programatic integration instead of spring xmlsdone
: enable custom balancer implementationto-do
: add HTTP server for API read requeststo-do
: stationary and synthetic duties, for non-idempotent tasks, coordination signalsto-do
: capture event marked with creation or migration, delegate might need itto-do
: enforce unique ids validation across input methods.Release 0.3
to-do
: native storage for duties to support leader-reelection consistencyto-do
: duty transport fetching it from the client at once, avoiding memory allocation.to-do
: transform fixed agent’s frequency lapsus into tick-relations, so we can get closer to a tighter realtime schema allowing features consistency-dependantI started Minka as a hobbie after-hour, nights became months. But it’s still a baby framework under 15K LOC.
I believe Minka can be used for average critical achievements. For more intensive or streaming usage, it may require further unit testing, among features as well.
I focused on keeping a very comprehensive model and code, for what it is complex problem that it’s easy to isolate of the business layer, with common sense in balancing algorithms.
You can reach me at https://ar.linkedin.com/in/cristian-ariel-gonzalez
Or gcristian at gmail, for any doubts.
Cristian A. Gonzalez
Buenos Aires, 2016