প্রকল্প সম্পর্কে
সারামা হলো Apache Kafka-এর জন্য একটি MIT-লাইসেন্সপ্রাপ্ত Go ক্লায়েন্ট লাইব্রেরি, যা IBM দ্বারা রক্ষণাবেক্ষণ করা হয়। এটি Go অ্যাপ্লিকেশনের জন্য Kafka প্রোটোকলের একটি বিস্তৃত বাস্তবায়ন প্রদান করে।
## সক্ষমতা
**প্রোডিউসার** — কনফিগারযোগ্য পার্টিশনিং কৌশল (র্যান্ডম, রাউন্ড-রবিন, স্টিকি, কী-ভিত্তিক) সহ Kafka টপিকে রেকর্ড পাঠায়। সিঙ্ক্রোনাস এবং অ্যাসিঙ্ক্রোনাস সেন্ড মোড, মেসেজ ব্যাচিং এবং কম্প্রেশন (gzip, snappy, lz4, zstd) সমর্থন করে।
**কনজিউমার** — ConsumerGroups বা সরাসরি টপিক/পার্টিশন সাবস্ক্রিপশন ব্যবহার করে Kafka টপিক থেকে পড়ে। ম্যানুয়াল এবং স্বয়ংক্রিয় অফসেট ম্যানেজমেন্ট, উচ্চ-স্তরের গ্রুপ রিব্যালান্সিং এবং কাস্টম পার্টিশন অ্যাসাইনমেন্ট কৌশল সমর্থন করে।
**ট্রানজেকশনাল ক্লায়েন্ট** — exactly-once সেমান্টিক্সের জন্য API প্রদান করে, যার মধ্যে ট্রানজেকশন শুরু, কমিট এবং অ্যাবর্ট অপারেশন অন্তর্ভুক্ত।
**ব্রোকার ম্যানেজমেন্ট** — Kafka ব্রোকার ডিসকভারি, মেটাডেটা ম্যানেজমেন্ট এবং স্বয়ংক্রিয় লিডার পুনঃঅ্যাসাইনমেন্ট পরিচালনা করে।
## অতিরিক্ত সম্পদ
- `mocks` সাবপ্যাকেজে মক ইমপ্লিমেন্টেশন ইউনিট টেস্টিং সহজতর করে।
- `examples` ডিরেক্টরিতে উদাহরণ অ্যাপ্লিকেশন সাধারণ ব্যবহারের প্যাটার্ন প্রদর্শন করে।
- `tools` ডিরেক্টরিতে কমান্ড-লাইন টুল টেস্টিং, ডায়াগনস্টিকস এবং ইন্সট্রুমেন্টেশন সমর্থন করে।
## সামঞ্জস্যতা
সারামা Kafka এবং Go-এর দুটি সর্বশেষ স্থিতিশীল রিলিজ সমর্থন করে, পুরোনো সংস্করণের জন্য দুই মাসের গ্রেস পিরিয়ড সহ। প্রকল্পটি সেমান্টিক ভার্সনিং অনুসরণ করে এবং API স্থিতিশীলতার গ্যারান্টি প্রদান করে।
সম্পূর্ণ API ডকুমেন্টেশন এবং উদাহরণ pkg.go.dev-এ উপলব্ধ।
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.