jkorab / ameliant-tools Goto Github PK
View Code? Open in Web Editor NEWA set of tools to ease working with Zookeeper and Kafka.
License: Apache License 2.0
A set of tools to ease working with Zookeeper and Kafka.
License: Apache License 2.0
May also be useful to add distribution strategy at this point
At the moment the key allocation strategy is just to use ProducerDefinition.uniqueKeyCount randomly generated strings for the key, and to modulo assign those keys to outgoing messages. The default partitioning strategy used in Kafka (key.hashcode()) is pretty crude, and does not ensure that these will be fairly assigned amongst the available topic partitions. In addition, the random generation means that the distribution will be different between test runs.
Not all topics will have the same number of partitions. Using an old computed hash that points to a non-existent partition will cause an explosion.
To test, set up a 2 topics with [2,1] partitions, [1,1] producers, [2, 2] consumers and use the sticky partitioner. Should start throwing exceptions from the single-partition producer.
Consumers did not receive expected message counts: [30:90, 30:0, 30:0]
Split ZK + Kafka into different packages. Resources isn't a great name.
Both the sticky and roundRobin strategies depend on instance state. Running multiple producers will mess with that and give inconsistent partition results.
May want to split this out into a Gitbook, rather than blow out the README.
Programatically configure the logging system based on command-line flags.
Currently the performance report just dumps out amongst all of the console logging. The test should accumulate the performance stats of its drivers, and either dump them to console at the end or output to a file defined through a flag.
would be great to have this in mvn central so we can import them into projects using mvn dependency management
Test ProducerDriver.getPartitionerClassName() IllegalArgumentException
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.