kafka的生產者producer由持有未提交給kafka服務的記錄的緩衝區構成一個緩衝區池,於此同時會有一個後臺I/O線程來負責將這些記錄record轉化爲請求request,而後將其提交給集羣。異步
若是發送完數據以後不對producer進行資源釋放close,會致使資源被擠佔。ide
producer的send方法是異步的,當調用send方法提交一條記錄到緩衝區以後,當即被返回。這樣就可以容許生產者進行高效組織以批處理來發送數據。線程