KAFKA می گوید: احتمالاً مصرف کننده از گروه اخراج شده است

عکس پروفایل نویسنده

“تعهد افست نمی تواند به اتمام برسد زیرا مصرف کننده در یک گروه فعال برای تخصیص پارتیشن خودکار نیست ؛ احتمالاً مصرف کننده از گروه اخراج شده است”.

پیام فوق از زمانی که سرویس مایکروسافت ما مدت زیادی طول می کشد قبل از ارتکاب جبران از ورود به سیستم است. بیایید ابتدا زمینه را توضیح دهیم تا به شما کمک کنیم برخی از اطلاعات پیش زمینه را در مورد این مسئله بدست آورید. من سرویس A را برای تماس با REST API در معرض سرویس B اختصاص می دهم. هر زمان A از Kafka پیامی دریافت می کند ، با سرویس B’s API تماس می گیرد. اگر B پایین باشد ، A چندین تلاش دیگر را ادامه خواهد داد. وقتی تلاش مجدد بیش از حد طول بکشد ، مصرف کننده خدمات کافکا از گروه A حذف خواهد شد.

این سناریوی رایجی است که ممکن است هنگام استفاده از کافکا با آن روبرو شویم. در این مقاله ، من شما را در مورد علت و همچنین رویکردی که برای حل این مسئله استفاده می کنم بررسی می کنم.

من مدتی را صرف خواندن منبع مشتری کافه جاوا کردم و این نمودار را ارائه دادم تا مختصراً درباره نحوه کار مصرف کننده کافکا توضیح دهم.

یک م componentلفه به اصطلاح هماهنگ کننده گروه وجود دارد که مصرف کنندگان / اعضای گروه های مصرف کننده را مدیریت می کند. اگر آخرین باشد

poll

بیشتر است از

x

ms و

x  max.poll.interval.ms

، سپس هماهنگ کننده گروه معتقد است که مصرف کننده مرده است و مصرف کننده را از گروه خارج خواهد کرد. به همین دلیل است که وقتی تلاش مجدد بیش از …