প্রকল্প সম্পর্কে
QPub সার্ভার একটি সেলফ-হোস্টেবল মেসেজিং সার্ভার যা রিয়েল-টাইম pub/sub চ্যানেল এবং জব কিউ একত্রিত করে, REST এবং WebSocket ইন্টারফেসের মাধ্যমে প্রকাশিত হয়। এটি সেই সব টিমের জন্য উদ্দিষ্ট যারা নিজস্ব মেসেজিং অবকাঠামো চালাতে চায়, হোস্টেড সার্ভিসের উপর নির্ভর না করে।
মূল ক্ষমতা
- চ্যানেল: WebSocket-এর মাধ্যমে প্রকাশিত/সাবস্ক্রাইব মেসেজিং, REST-এর মাধ্যমে প্রকাশের সুবিধা সহ।
- জব কিউ: কাজের আইটেম এনকিউ এবং টানুন, ওয়ার্কার চালান এবং ওয়েবহুক গ্রহণ করুন।
- মাল্টি-টেন্যান্সি: টেন্যান্টরা একে অপর থেকে বিচ্ছিন্ন এবং তাদের উপর রেট লিমিট প্রয়োগ করা যেতে পারে।
- অথেনটিকেশন: API কী এবং ক্লায়েন্ট টোকেন অ্যাক্সেস রক্ষা করে; একটি পৃথক কন্ট্রোল টোকেন প্রোভিশনিং API রক্ষা করে।
- কন্ট্রোল API: টেন্যান্ট, API কী, লিমিট, কিউ এবং ওয়ার্কার পরিচালনা করুন এবং রিয়েলটাইম পরিসংখ্যান ও সংযোগ পরিদর্শন করুন।
ব্যাকিং সার্ভিস
সার্ভারটি NATS JetStream, Redis এবং Postgres-এর উপর নির্ভর করে, ড্রাইভার সেটিংয়ের মাধ্যমে বিকল্প ডেটাবেস হিসেবে CockroachDB সমর্থিত।
শুরু করা
README উদাহরণ এনভায়রনমেন্ট ফাইল কপি করে Docker Compose চালানোর পরামর্শ দেয়, যা Redis এবং NATS-এর সাথে Postgres চালু করে। ডিফল্ট পোর্ট হল কন্ট্রোল API-এর জন্য 8091, REST-এর জন্য 8111 এবং WebSocket-এর জন্য 8131। REST বা WebSocket কল করার আগে কন্ট্রোল API-এর মাধ্যমে একটি টেন্যান্ট এবং API কী তৈরি করতে হবে। Go টুলিং ব্যবহার করে একটি স্থানীয় বিল্ড পথও নথিভুক্ত করা হয়েছে, যার জন্য একই ব্যাকিং সার্ভিস এনভায়রনমেন্ট কনফিগারেশনের মাধ্যমে অ্যাক্সেসযোগ্য হতে হবে।
কন্ট্রোল API একটি বিয়ারার টোকেন বা কাস্টম হেডার দিয়ে অথেনটিকেটেড হয়; টোকেন খালি রাখলে কন্ট্রোল API খোলা থাকে, যা README-তে শুধুমাত্র স্থানীয় উন্নয়নের জন্য উল্লেখ করা হয়েছে। নথিভুক্ত এন্ডপয়েন্টগুলির মধ্যে রয়েছে স্বাস্থ্য পরীক্ষা, ইনস্ট্যান্স আইডেন্টিটি ও মেট্রিক্স, টেন্যান্ট তৈরি, তালিকা, পুনরুদ্ধার এবং মুছে ফেলা, প্রতি-টেন্যান্ট পরিসংখ্যান, সংযোগ, চ্যানেল, রেট লিমিট, API কী, কিউ এবং ওয়ার্কার।
প্রকল্পটি Apache License 2.0-এর অধীনে লাইসেন্সপ্রাপ্ত।
Comments
0 people shared their preference · Deer Point appears after 10 participants
Sign in to join the discussion.