[ 
https://issues.apache.org/jira/browse/KAFKA-6705?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Dong Lin updated KAFKA-6705:
----------------------------
    Description: Currently producer.send() may block on metadata for up to 
max.block.ms. This behavior is well documented but it is a bit sub-optimal. 
Since we return a future we should be able to make producer.send() completely 
non-blocking. One idea is to simply insert the record into a global queue 
shared across all partitions, and let the sender thread fetch record from this 
queue and send to broker.  (was: Currently producer.send() may block on 
metadata or full buffer for up to max.block.ms. This behavior is well 
documented but it is a bit sub-optimal. Since we return a future we should be 
able to make producer.send() completely non-blocking. One idea is to simply 
insert the record into a global queue shared across all partitions, and let the 
sender thread fetch record from this queue and send to broker.)

> producer.send() should be non-blocking
> --------------------------------------
>
>                 Key: KAFKA-6705
>                 URL: https://issues.apache.org/jira/browse/KAFKA-6705
>             Project: Kafka
>          Issue Type: Improvement
>            Reporter: Dong Lin
>            Assignee: Dong Lin
>            Priority: Major
>
> Currently producer.send() may block on metadata for up to max.block.ms. This 
> behavior is well documented but it is a bit sub-optimal. Since we return a 
> future we should be able to make producer.send() completely non-blocking. One 
> idea is to simply insert the record into a global queue shared across all 
> partitions, and let the sender thread fetch record from this queue and send 
> to broker.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to