লগস্ট্যাশ এবং স্থিতিস্থাপক অনুসন্ধানের মধ্যে ডেটা ব্রোকার / মেসেজিং সিস্টেম হিসাবে রেডিস বনাম রাবিট এমকিউ


90

আমরা লগস্ট্যাশ শিপ্পারদের দ্বারা লগ তথ্য সংগ্রহের জন্য একটি আর্কিটেকচারটি সংজ্ঞায়িত করছি যা বিভিন্ন মেশিনে ইনস্টল করা হয় এবং একটি ইলাস্টিক সার্চে ডেটা কেন্দ্রীয়ভাবে সূচিত করে এবং গ্রাফিকাল স্তর হিসাবে কিবানা ব্যবহার করে। ডেলিভারিটি অনুমোদনের জন্য আমাদের লগস্ট্যাশ শিপ্স এবং ইলাস্টিক অনুসন্ধানের মধ্যে একটি নির্ভরযোগ্য মেসেজিং সিস্টেম দরকার। লগস্ট্যাশ শিপ্পস এবং ইলাস্টিক সার্চ বা তদ্বিপরীত মধ্যে রেবিস এমকিউ ওভার ডেবিট ব্রোকার / মেসেজিং সিস্টেম হিসাবে রেডিস নির্বাচন করার সময় কোন বিষয়গুলি বিবেচনা করা উচিত?

উত্তর:


94

রেডিস এবং রাবিট এমকিউ উভয়কেই মূল্যায়ন করার পরে আমি নিম্নলিখিত কারণে রাব্বিটএমকিউকে আমাদের ব্রোকার হিসাবে বেছে নিয়েছি:

  1. রব্বিটএমকিউ আপনাকে ব্রোকারের কাছে প্রেরণ করা ডেটা এনক্রিপ্ট করার জন্য এসএসএল শংসাপত্রগুলি ব্যবহার করে সুরক্ষার একটি অন্তর্নির্মিত স্তর ব্যবহার করার অনুমতি দেয় এবং এর অর্থ হ'ল কেউ আপনার ডেটা স্নিগ্ধ করবে না এবং আপনার গুরুত্বপূর্ণ সাংগঠনিক ডেটাতে অ্যাক্সেস পাবে না।
  2. রাবিট এমকিউ একটি অত্যন্ত স্থিতিশীল পণ্য যা বোতল ঘাড় না হয়ে প্রতি সেকেন্ডে প্রচুর পরিমাণে ইভেন্ট এবং অনেক সংযোগ পরিচালনা করতে পারে।
  3. আমাদের প্রতিষ্ঠানে আমরা ইতিমধ্যে রব্বিটএমকিউ ব্যবহার করেছি এবং এটি ব্যবহার সম্পর্কে ভাল অভ্যন্তরীণ জ্ঞান ছিল এবং শেফের সাথে ইতিমধ্যে প্রস্তুত ইন্টিগ্রেশন।

স্কেলিং সম্পর্কিত, র‌্যাবিট এমকিউতে একটি অন্তর্নির্মিত ক্লাস্টার বাস্তবায়ন রয়েছে যা আপনি একটি রিলান্ড্যান্ট ব্রোকার পরিবেশ বাস্তবায়নের জন্য লোড ব্যালান্সারের পাশাপাশি ব্যবহার করতে পারেন।

আমার রবিটএমকিউ ক্লাস্টারটি কি সক্রিয় বা সক্রিয় প্যাসিভ?

এখন খরগোশ এমকিউ ব্যবহারের দুর্বল পয়েন্ট:

  1. বেশিরভাগ লগস্ট্যাশ শিপ্সার রাবিটএমকিউ সমর্থন করে না অন্যদিকে, বিভার নামে সেরাটির একটি প্রয়োগ রয়েছে যা কোনও সমস্যা ছাড়াই রাব্বিটএমকিউতে ডেটা প্রেরণ করবে।
  2. বিভারের বর্তমান সংস্করণে রাবিট এমকিউয়ের সাথে বাস্তবায়নটি কার্য সম্পাদনে কিছুটা ধীর (আমার উদ্দেশ্যে) এবং একটি সার্ভার থেকে এবং সময়ে সময়ে পরিষেবা ক্রাশ হওয়ার সাথে সাথে 3000 ইভেন্ট / সেকেন্ডের হার পরিচালনা করতে সক্ষম হয় নি।
  3. এই মুহূর্তে আমি একটি ঠিকঠাক নিয়ে কাজ করছি যা রাবিট এমকিউয়ের জন্য পারফরম্যান্স সমস্যার সমাধান করবে এবং বিভার শিপিকে আরও স্থিতিশীল করে তুলবে। প্রথম সমাধানটি হ'ল আরও প্রক্রিয়া যুক্ত করা যা একযোগে চলতে পারে এবং শিপারকে আরও শক্তি দেয়। দ্বিতীয় সমাধানটি হ'ল রাবিট এমকিউ-তে ডেটা প্রেরণে বিভার পরিবর্তন করা যা তাত্ত্বিকভাবে আরও দ্রুত হওয়া উচিত। আমি আশা করি যে আমি এই সপ্তাহের শেষের মধ্যে উভয় সমাধান বাস্তবায়ন শেষ করব।

আপনি এখানে সমস্যাটি অনুসরণ করতে পারেন: https://github.com/josegonzalez/python-beaver/issues/323

এবং এখানে টানার অনুরোধটি পরীক্ষা করুন: https://github.com/josegonzalez/python-beaver/pull/324

আপনার যদি আরও প্রশ্ন থাকে তবে নির্দ্বিধায় কোনও মন্তব্য করুন।


4
রেডিসের কি রাবিট এমকিউয়ের সাথে তুলনা করে আরও শক্তিশালী পয়েন্ট রয়েছে? Redis কনফিগার করা সহজ বলে মনে হচ্ছে। এবং যদি আপনার বিশাল থ্রুপুট প্রয়োজন না হয় এবং সুরক্ষা অন্য উপায়ে পরিচালনা করা হয় তবে রাব্বিটএমকিউ প্রয়োজনীয় নাও হতে পারে। দয়া করে, আমি ভুল হলে আমাকে সংশোধন করুন।
রিকার্ডো এমএস

আপনি সঠিক আছেন তবে তা নিশ্চিত হওয়ার জন্য আপনাকে দুটি পণ্যের মধ্যে পারফরম্যান্স তুলনা করতে হবে
টম ক্রেজেনবিল্ড

4
"রাবিট এমকিউ একটি অত্যন্ত স্থিতিশীল পণ্য যা বোতল ঘাড় না হয়ে প্রতি সেকেন্ডে প্রচুর পরিমাণে ইভেন্ট এবং অনেক সংযোগ পরিচালনা করতে পারে।" - আমি খুব নিশ্চিত যে সত্য যে reddis হয়। সুতরাং এটি রেডডিটের তুলনায় খরগোশের কোনও সুবিধা নয়
মার্টিন থোমা

"র‌্যাবিট এমকিউ আপনাকে এসএসএল ব্যবহার করে সুরক্ষার একটি অন্তর্নির্মিত স্তর ব্যবহার করার অনুমতি দেয়" - ট্রান্সপোর্ট লেয়ারের এনক্রিপশনকেও কি রেডডি অনুমতি দেয় না?
মার্টিন থোমা

4
2019 টি এখনও redis টিএলএস
jjxtra

55

কিছু প্রাথমিক বার্তা ব্রোকারের ক্ষমতা থাকা সত্ত্বেও রেডিস একটি মূল মান ডেটা স্টোর হিসাবে তৈরি করা হয়েছে ।

RabbitMQ একটি বার্তা ব্রোকার হিসাবে তৈরি করা হয়েছে। এতে প্রাকৃতিকভাবে প্রচুর বার্তা ব্রোকারের ক্ষমতা রয়েছে।


4
রেডিস 5 এ স্ট্রিমের প্রবর্তনের সাথে রেডিস সম্পর্কে আপনার বক্তব্যটি আরও সঠিক নয় Rab ছোট থেকে মাঝারি স্তরের দৃশ্যের জন্য (যা বিশ্বের বেশিরভাগ প্রকল্পগুলি), রেডিস একটি নির্ভরযোগ্য, দ্রুত এবং বিকল্পটি কনফিগার করা সহজ।
রেজা

প্রতিশ্রুতির জন্য ধন্যবাদ, কেউ এখানে রেডিসের নতুন বৈশিষ্ট্য সম্পর্কে তার অভিজ্ঞতা লিখলে ভাল হবে।
ফেরাহাট

44

আমি এই বিষয় নিয়ে কিছু গবেষণা করে চলেছি। যদি পারফরম্যান্স গুরুত্বপূর্ণ এবং অধ্যবসায়ী না হয় তবে রাব্বিটএমকিউ একটি উপযুক্ত পছন্দ। রেডিস হ'ল একটি প্রযুক্তি যা ভিন্ন উদ্দেশ্য নিয়ে তৈরি with

নীচে রেডিসের উপরে রেবিটএমকিউ ব্যবহারের জন্য পেশাদারগুলির একটি তালিকা রয়েছে:

  • রাব্বিটএমকিউ অ্যাডভান্সড মেসেজ কুইউনিং প্রোটোকল (এএমকিউপি) ব্যবহার করে যা এসএসএল, সুরক্ষার অতিরিক্ত স্তর ব্যবহার করার জন্য কনফিগার করা যেতে পারে।
  • রেবিটএমকিউ রেডিস বার্তাগুলি গ্রহণ করতে সময় নেয় প্রায় 75% সময় নেয়।
  • র‌্যাবিট এমকিউ বার্তাগুলির জন্য অগ্রাধিকারগুলি সমর্থন করে, যা শ্রমিকরা প্রথমে উচ্চ অগ্রাধিকার বার্তা গ্রাস করতে ব্যবহার করতে পারে।
  • কোনও শ্রমিক মেসেজটি গ্রাস করার পরে ক্রাশ হলে বার্তাটি হারাবার কোনও সম্ভাবনা নেই, যা রেডিসের ক্ষেত্রে নয়।
  • বিভিন্ন কাতারে বার্তা পাঠানোর জন্য রাব্বিটএমকিউতে একটি ভাল রাউটিং সিস্টেম রয়েছে।

রাবিট এমকিউ ব্যবহারের জন্য কয়েকটি কনস:

  • র্যাবিটএমকিউ বজায় রাখা কিছুটা শক্ত, ক্র্যাশগুলি ডিবাগ করা শক্ত।
  • নোড-নাম বা নোড-আইপি ওঠানামা ডেটা হ্রাস করতে পারে, তবে যদি ভালভাবে পরিচালনা করা হয় তবে টেকসই বার্তা সমস্যার সমাধান করতে পারে।

4
রেডিসের মধ্যে রয়েছে Sorted Setsঅগ্রাধিকারের কাতারের মতো ইন্টারঅ্যাকশন। এমনকি বিভিন্ন সার্ভারে বিভিন্ন কাতারে বিভিন্ন বার্তা প্রেরণ করতে রেডিসকে ক্লাস্টার / শার্ল্ডও করা যেতে পারে। রেডিসের জন্য সরাসরি এসএসএল সম্পর্কে নিশ্চিত নয়, তবে আমি এডাব্লুএস ইলাস্টিকাকে দেখছি এবং তাদের রেডিস 3.2.6 এ বিশ্রাম এবং ইন-ট্রানজিট এনক্রিপশনের অনুমতি দেয়। দ্রষ্টব্য: রেডিস এই ক্ষেত্রে মোটেই ভাল নয়; কেবল সেগুলি দেখানোই রেডিসের চেয়ে রেবিট এমকিউ চয়ন করার কারণ নাও হতে পারে।
ডোয়ান্ডারসন

4
এছাড়াও ভুলে যাবেন না যে রেডিস একক থ্রেডযুক্ত তাই আপনার যদি প্রচুর প্রকাশক / ভোক্তা থাকে তবে এটি একটি সমস্যা হতে পারে।
কেদারে

5

আমি একই জিনিস ভাবছি। লগস্ট্যাশ লোকেদের পূর্ববর্তী সুপারিশগুলি রেডিস ওভার রবিটএমকিউ ( http://logstash.net/docs/1.1.1/tutorials/getting-st সূত্র- কেন্দ্রীভূত) এর প্রস্তাব দিচ্ছে , তবে নোটগুলির অধ্যায়টি বর্তমান নথিতে আর বিদ্যমান নেই যদিও স্পাইকগুলি মোকাবেলা করতে ব্রোকার ব্যবহারের বিষয়ে জেনেরিক নোটগুলি এখানে https://www.elastic.co/guide/en/logstash/current/deploying-and-scaling.html

আমি খুব সুখের সাথে রাবিট এমকিউটি ব্যবহার করার সময়, আমি বর্তমানে একটি রেডিস ব্রোকারটি অন্বেষণ করছি, যেহেতু আমার লগিং ব্যবহারের ক্ষেত্রে এএমকিউ প্রোটোকল সম্ভবত ওভারকিল করছে।


2

জিজ্ঞাসা করার জন্য দ্রুত প্রশ্ন:

  1. তোমার দালালের দরকার কেন? আপনি যদি এই সার্ভারগুলি থেকে ফাইলগুলি পড়তে লগস্ট্যাশ বা লগস্ট্যাশ-ফরোয়ার্ডার ব্যবহার করে থাকেন তবে পাইপলাইনটি ভিড় হয়ে গেলে তারা উভয়ই ধীর হয়ে যাবে।
  2. খরগোশ বা রেডিস প্রশাসনের সাথে আপনার কি কোনও অভিজ্ঞতা আছে? সমস্ত জিনিস সমান হচ্ছে, আপনি যে সরঞ্জামটি ব্যবহার করতে জানেন তা হ'ল উত্তম সরঞ্জাম।

মতামতের ক্ষেত্রের মধ্যে, আমি ব্রোকার হিসাবে redis চালিয়েছি, এবং এটি ঘৃণা করি। অবশ্যই, এটি আমার রেডিসের সাথে অনভিজ্ঞ হতে পারে (পণ্যটি নিজেই কোনও সমস্যা নয়) তবে এটি পাইপলাইনের সবচেয়ে দুর্বল লিঙ্ক ছিল এবং যখন আমাদের সবচেয়ে বেশি প্রয়োজন তখন সর্বদা ব্যর্থ হয়।

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.