0
我們有一個應用程序處理來自kinesis的數據並保持一些狀態幾秒鐘。我們擔心維護狀態是否會受到KCL的多線程性質的影響。針對AWS kinesis處理的KCL是否線程安全?
有人可以告訴我們KCL的RecordProcessor是否是線程安全的?
我們有一個應用程序處理來自kinesis的數據並保持一些狀態幾秒鐘。我們擔心維護狀態是否會受到KCL的多線程性質的影響。針對AWS kinesis處理的KCL是否線程安全?
有人可以告訴我們KCL的RecordProcessor是否是線程安全的?
KCL是圍繞您的自定義邏輯處理記錄的包裝庫。 這個庫的目的是在你專注於記錄處理邏輯的同時管理事物的Kinesis方面。 KCL會將EC2工作人員與特定的碎片或碎片(通常是1個EC2工作人員分配到1個碎片)對齊,並維護一個存儲排序鍵的DynamoDB表。
您的自定義應用程序邏輯負責維護狀態和線程安全。
默認情況下,您從碎片中拾取的Kinesis記錄(目標大小由您定義)的列表將傳遞給您的代碼進行處理。您可以按順序執行此操作,或者根據需要將它們分配給線程。直到你從這個處理方法返回,KCL纔會向你請求分片中的更多記錄。