@Override | |
public void add(K k, V v, Handler<AsyncResult<Void>> completionHandler) { | |
vertx.getOrCreateContext().executeBlocking(fut -> { | |
map.put(k, HazelcastClusterNodeInfo.convertClusterNodeInfo(v)); | |
fut.complete(); | |
}, taskQueue, completionHandler); | |
} |
To view this discussion on the web, visit https://groups.google.com/d/msgid/vertx/4376bddc-28bd-471b-9250-8f98a47c5336%40googlegroups.com.--
You received this message because you are subscribed to a topic in the Google Groups "vert.x" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/vertx/iKOpMJ1u3do/unsubscribe.
To unsubscribe from this group and all its topics, send an email to vertx+unsubscribe@googlegroups.com.
Visit this group at https://groups.google.com/group/vertx.
You received this message because you are subscribed to the Google Groups "vert.x" group.
To unsubscribe from this group and stop receiving emails from it, send an email to vertx+un...@googlegroups.com.
To view this discussion on the web, visit https://groups.google.com/d/msgid/vertx/0d077d18-9131-4283-9748-5d870ad090a9%40googlegroups.com.
agreed,
To unsubscribe from this group and stop receiving emails from it, send an email to vertx+unsubscribe@googlegroups.com.
To unsubscribe from this group and stop receiving emails from it, send an email to vertx+un...@googlegroups.com.
To view this discussion on the web, visit https://groups.google.com/d/msgid/vertx/d9c55b9f-f8ae-43b5-bcf6-053f1b3a59e4%40googlegroups.com.
To unsubscribe from this group and stop receiving emails from it, send an email to vertx+unsubscribe@googlegroups.com.
To view this discussion on the web, visit https://groups.google.com/d/msgid/vertx/966dc5c9-727a-463f-a4b0-32f7ad75648b%40googlegroups.com.
To view this discussion on the web, visit https://groups.google.com/d/msgid/vertx/67c9638a-bb6e-4523-8bca-aed9871c4fa0%40googlegroups.com.
There are several reasons while i test this1. i need to establish a base-line to see how good vertx works for our cases (i think the documentation could benefit from a performance guideline, it could really help designing an application which has more complex communication patterns than just web stuff)2. Our application does need a certain amount of register/unregister because we work with TCP sockets and peer-to-peer communication between these sockets across machines. The rate of connections / disconnections is 100 /sec however the more the better of course :). Just wanted to know what is the max rate we support for connections/disconnections thus how many clients we can support.
3. I saw this when i was looking at the code why the performance of the EventBus.send was low (see the multimap cache issues under load)
I think in this case it can be easily improved just by making a pool of those taskQueues. However if you do not find this proposal appealing its fine, probably we will do it in the product.
So it looks like performance is well within your requirements?
I'm not sure I understand the link between registering/unregistering and eventbus.send... can you elaborate? EventBus shouldn't touch the multimap put/get code
To view this discussion on the web, visit https://groups.google.com/d/msgid/vertx/e4cb5705-70f8-427a-b9ee-38d4747d1090%40googlegroups.com.
So it looks like performance is well within your requirements?For now yesI'm not sure I understand the link between registering/unregistering and eventbus.send... can you elaborate? EventBus shouldn't touch the multimap put/get codeNot sure what you mean but ClusteredEventbus is doing a HazelcastAsyncMultiMapImpl.get() to find the consumers for the address.If the address is not in the local cache of HazelcastAsyncMultiMapImpl then a round-trip to Hazelcast is needed of course which is also executed through the same taskQueue.This happens on the first send to an uninitialized entry in the subscribers map.
Seems like you're testing the performance of the "setup" code (i.e. registering consumers, populating cache) rather than the general event bus throughput performance.
send-rate: 80666 req/s
Members [2] {
Member [172.17.42.1]:5702 this
Member [172.17.42.1]:5703
}
[172.17.42.1]:5702 [dev] [3.6.3] Re-partitioning cluster data... Migration queue size: 135
[172.17.42.1]:5702 [dev] [3.6.3] All migration tasks have been completed, queues are empty.
send-rate: 30271 req/s
send-rate: 21822 req/s
To view this discussion on the web, visit https://groups.google.com/d/msgid/vertx/3b65b929-6938-4e20-99ea-5c7d1f3c2ea8%40googlegroups.com.
this is too slow for our needs.
One thing that would be interesting to experiment with, would be to see if the the hand rolled cache we use in the Hazelcast cluster manager is still necessary. When I wrote that, the HZ one was slow, but that was a long time ago, maybe they have improved things since then...
To view this discussion on the web, visit https://groups.google.com/d/msgid/vertx/e145fba4-17b6-4175-b050-c3aea07e662f%40googlegroups.com.
agreed,
To unsubscribe from this group and all its topics, send an email to vertx+un...@googlegroups.com.
To view this discussion on the web, visit https://groups.google.com/d/msgid/vertx/4376bddc-28bd-471b-9250-8f98a47c5336%40googlegroups.com.
--
You received this message because you are subscribed to the Google Groups "vert.x" group.
To unsubscribe from this group and stop receiving emails from it, send an email to vertx+un...@googlegroups.com.
Visit this group at https://groups.google.com/group/vertx.
To view this discussion on the web, visit https://groups.google.com/d/msgid/vertx/0d077d18-9131-4283-9748-5d870ad090a9%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
--
You received this message because you are subscribed to the Google Groups "vert.x" group.
To unsubscribe from this group and stop receiving emails from it, send an email to vertx+un...@googlegroups.com.
Visit this group at https://groups.google.com/group/vertx.
To view this discussion on the web, visit https://groups.google.com/d/msgid/vertx/d9c55b9f-f8ae-43b5-bcf6-053f1b3a59e4%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
--
You received this message because you are subscribed to a topic in the Google Groups "vert.x" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/vertx/iKOpMJ1u3do/unsubscribe.
To unsubscribe from this group and all its topics, send an email to vertx+un...@googlegroups.com.
To view this discussion on the web, visit https://groups.google.com/d/msgid/vertx/966dc5c9-727a-463f-a4b0-32f7ad75648b%40googlegroups.com.
--
You received this message because you are subscribed to a topic in the Google Groups "vert.x" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/vertx/iKOpMJ1u3do/unsubscribe.
To unsubscribe from this group and all its topics, send an email to vertx+un...@googlegroups.com.
To view this discussion on the web, visit https://groups.google.com/d/msgid/vertx/67c9638a-bb6e-4523-8bca-aed9871c4fa0%40googlegroups.com.
--
You received this message because you are subscribed to a topic in the Google Groups "vert.x" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/vertx/iKOpMJ1u3do/unsubscribe.
To unsubscribe from this group and all its topics, send an email to vertx+un...@googlegroups.com.
To view this discussion on the web, visit https://groups.google.com/d/msgid/vertx/e4cb5705-70f8-427a-b9ee-38d4747d1090%40googlegroups.com.
--
You received this message because you are subscribed to a topic in the Google Groups "vert.x" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/vertx/iKOpMJ1u3do/unsubscribe.
To unsubscribe from this group and all its topics, send an email to vertx+un...@googlegroups.com.
To unsubscribe from this group and all its topics, send an email to vertx+unsubscribe@googlegroups.com.
Visit this group at https://groups.google.com/group/vertx.
To view this discussion on the web, visit https://groups.google.com/d/msgid/vertx/e5f1857d-fca8-4514-8892-c642722d1f97%40googlegroups.com.