Kong/kong-plugin-zipkin

Why does zipkin lose so much data with high concurrency?

JoeHooo opened this issue · 3 comments

Concurrent 400,Loop 10 times
Jmeter:
image

ES:
image

probably this is on the wrong repo. you can chat here https://gitter.im/openzipkin/zipkin

also you can look at STORAGE_THROTTLE_ENABLED
https://github.com/openzipkin/zipkin/tree/master/zipkin-server#throttled-storage-experimental

at the end of the day you will see drop metrics if you overwhelm elasticsearch (pretty easy to do on laptop). STORAGE_THROTTLE_ENABLED tries to respond to errors from elasticsearch and backup accordingly. The best way is actually to use a queue/topic like kafka instead of http when using an underprovisioned elasticsearch.

hope this helps.

probably this is on the wrong repo. you can chat here https://gitter.im/openzipkin/zipkin

also you can look at STORAGE_THROTTLE_ENABLED
https://github.com/openzipkin/zipkin/tree/master/zipkin-server#throttled-storage-experimental

at the end of the day you will see drop metrics if you overwhelm elasticsearch (pretty easy to do on laptop). STORAGE_THROTTLE_ENABLED tries to respond to errors from elasticsearch and backup accordingly. The best way is actually to use a queue/topic like kafka instead of http when using an underprovisioned elasticsearch.

hope this helps.

Yes, I've set STORAGE_TYPE before, but it doesn't solve the problem of lost data.
Then I thought about whether I could get kong's data through kafka. I set the environment variable KAFKA_BOOTSTRAP_SERVERS of zipkin, but felt no improvement.I guess kong's data is still sent over HTTP
Now, my question is how to transfer kong's data to zipkin through kafka
image
This is my expected architecture diagram
image
I don't know if KAFKA_BOOTSTRAP_SERVERS are configured in the environment variable, so zipkin can collect data through kafka