জেএমএস বিষয় বনাম কুইজ


191

আমি ভাবছিলাম যে জেএমএস কিউ এবং জেএমএস টপিকের মধ্যে পার্থক্য কী।

অ্যাক্টিভ এমকিউ পৃষ্ঠা বলছে

টপিক

জেএমএসে একটি বিষয় প্রয়োগকারী শব্দার্থক প্রকাশ এবং সাবস্ক্রাইব করে। আপনি কোনও বার্তা প্রকাশ করার সময় এটি আগ্রহী সমস্ত গ্রাহকের কাছে যায় - তাই অনেক গ্রাহকের কাছে শূন্য বার্তাটির একটি অনুলিপি পাবেন। ব্রোকার বার্তাটি গ্রহণ করার সময় কেবলমাত্র সেই গ্রাহকরা সক্রিয় সদস্যতা পেয়েছিলেন তারা বার্তাটির একটি অনুলিপি পাবেন।

লাইনগুলি

একটি জেএমএস ক্যু লোড ব্যালেন্সার শব্দার্থক প্রয়োগ করে । একক বার্তা ঠিক একজন ভোক্তা পাবেন। বার্তা প্রেরণের সময় যদি কোনও গ্রাহক উপলব্ধ না থাকে তবে কোনও গ্রাহক মেসেজটি প্রক্রিয়াকরণ করতে না পাওয়া পর্যন্ত এটি রাখা হবে will যদি কোনও গ্রাহক কোনও বার্তা পান এবং এটি বন্ধ হওয়ার আগে স্বীকৃতি না দেয় তবে বার্তাটি অন্য গ্রাহকের কাছে পুনরায় বিতরণ করা হবে। একটি কাতারে উপলব্ধ গ্রাহকদের জুড়ে ভারসাম্যপূর্ণ বার্তা সহ অনেক গ্রাহক থাকতে পারে।

আমি 'কিছু' রাখতে চাই যা প্রতিটি গ্রাহককে একই ক্রমে ম্যাসেজটির একটি অনুলিপি পাঠিয়ে দেবে যেমনটি অ্যাক্টিভ কিউ ব্রোকার দ্বারা বার্তাটি প্রাপ্ত হয়েছিল।

কোন চিন্তা?

উত্তর:


147

তার মানে একটি বিষয় উপযুক্ত। একটি সারি মানে একটি বার্তা এক এবং কেবলমাত্র একজন সম্ভাব্য গ্রাহকের কাছে যায়। একটি বিষয় প্রতিটি গ্রাহকের কাছে যায়।


4
কোনও ধারণা কীভাবে লোড ব্যালেন্সিং জেএমএস বা ডাব্লুএসও 2 এমবিতে কুইয়ের জন্য কাজ করে?
কুলসঙ্গর

এটি আকর্ষণীয় কারণ আমি কিছু গ্রাহককে ডিবাগ করার চেষ্টা করছিলাম এবং কোনও বিষয় পাঠানোর সময় গ্রাহককে ডাকা হত না তবে কাতারে পাঠানোর সময় এটি কাজ করেছিল
ভিএমআরভিটেক্টর

54

বিষয়গুলি প্রকাশক-গ্রাহক মডেলের জন্য, যখন সারিগুলি পয়েন্ট-টু-পয়েন্টের জন্য।


30

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

একটি জেএমএস কিউ বার্তাগুলির 1-থেকে -1 গন্তব্য। বার্তা গ্রাসকারী মাত্র এক দ্বারা গৃহীত হয়েছে রিসিভার (অনুগ্রহ করে মনে রাখবেন: ধারাবাহিকভাবে ব্যবহার গ্রাহক 'বিষয়ে ক্লায়েন্টের জন্য এবং রিসিভার কিউ ক্লায়েন্টের এড়াতে বিভ্রান্তির জন্য)। একটি কাতারে প্রেরিত বার্তাগুলি ডিস্ক বা মেমোরিতে সংরক্ষণ করা হয় যতক্ষণ না কেউ এটি না ধরে বা এটির মেয়াদ শেষ হয়। সুতরাং সারি (এবং টেকসই সাবস্ক্রিপশন) এর কিছু সক্রিয় স্টোরেজ পরিচালনা দরকার, আপনার ধীর গ্রাহকদের সম্পর্কে চিন্তা করা দরকার to

বেশিরভাগ পরিবেশে, আমি তর্ক করব, বিষয়গুলি আরও ভাল পছন্দ কারণ আপনি সবসময় আর্কিটেকচার পরিবর্তন না করেই অতিরিক্ত উপাদান যুক্ত করতে পারেন। যুক্ত উপাদানগুলি পর্যবেক্ষণ, লগিং, বিশ্লেষণ ইত্যাদি হতে পারে, প্রকল্পের শুরুতে আপনি কখনই জানতে পারবেন না যে 1 বছর, 5 বছর, 10 বছরে প্রয়োজনীয়তাগুলি কী হবে। পরিবর্তন অনিবার্য, এটি আলিঙ্গন করুন :-)


27

এটি যে হিসাবে সহজ:

ক্যুইস = সন্নিবেশ> প্রত্যাহার (একক গ্রাহককে প্রেরণ করুন) 1: 1

বিষয়সমূহ = সন্নিবেশ> সম্প্রচার (সমস্ত গ্রাহককে প্রেরণ করুন) 1: এন

এখানে চিত্র বর্ণনা লিখুন


2
একটি সাধারণ সামাজিক নেটওয়ার্কের জন্য উদাহরণ হতে পারে। কেউ একটি পোস্ট 'পছন্দ' করেছে। ব্যাকএন্ড বিষয়টিতে একটি 'পোস্ট পোস্ট' ইভেন্ট প্রকাশ করে। এটি 3 জন গ্রাহক গ্রাহক গ্রহণ করেছেন: notificationProcessor(পোস্টারটিতে একটি বিজ্ঞপ্তি প্রেরণ করে), karmaProcessor(পছন্দকারী এবং পোস্টারকে কর্ম দেয় ), (লোকের ফিডগুলিতে জট feedProcessorউপরে নিয়ে যায়)। অবশ্যই সমস্ত অ্যাসিনক্রোনালি।
সিদ্ধার্থ

@ সিদ্ধার্থ, এটি উত্তর জড়িত একটি উদাহরণ হতে পারে, ধন্যবাদ!
সেলেম এমএন


7

লাইনগুলি

পেশাদাররা

  • স্বচ্ছ যোগাযোগ প্রবাহ সহ সাধারণ বার্তাপ্রেরণের ধরণ
  • বার্তাগুলি কাতারে রেখে পুনরুদ্ধার করা যেতে পারে

কনস

  • শুধুমাত্র একজন ভোক্তা এই বার্তাটি পেতে পারেন
  • এটি এক-থেকে-এক সম্পর্ক হিসাবে উত্পাদক এবং ভোক্তার মধ্যে সংযুক্তিকে বোঝায়

টপিক

পেশাদাররা

  • একাধিক গ্রাহক একটি বার্তা পেতে পারেন
  • উত্পাদক এবং ভোক্তাদের মধ্যে ডিকোপলিং (প্রকাশ ও সাবস্ক্রাইব প্যাটার্ন)

কনস

  • আরও জটিল যোগাযোগ প্রবাহ
  • একক শ্রোতার জন্য একটি বার্তা পুনরুদ্ধার করা যায় না

4

আপনার যদি এন গ্রাহকরা থাকে তবে:

জেএমএস বিষয়গুলি এন এর এনকে বার্তা সরবরাহ করে জেএমএস কুইউগুলি এন এর 1 টিতে বার্তা সরবরাহ করে

আপনি বলেছিলেন যে আপনি "এমন একটি জিনিস" পেতে চাইছেন যা প্রতিটি গ্রাহককে একই ক্রমে বার্তাটির অনুলিপি পাঠিয়ে দেবে যেমনটি অ্যাক্টিভ কিউ ব্রোকার দ্বারা বার্তাটি পেয়েছিল। "

সুতরাং আপনি সমস্ত টপিকটি যাতে ব্যবহার করতে চান যাতে সমস্ত এন গ্রাহকরা বার্তার একটি অনুলিপি পান।


1

শীর্ষস্থানীয় :: বিষয়বস্তু অনেকগুলি যোগাযোগের জন্য ... (একাধিক পয়েন্ট বা প্রকাশ / সাবস্ক্রাইব) প্রাক্তন: - কল্পনা করুন যে কোনও প্রকাশক ইউটিউবে সিনেমাটি প্রকাশ করেন তার সমস্ত গ্রাহকরা বিজ্ঞপ্তি পাবেন .... কোয়েভ :: কাতারে একরকম একক যোগাযোগ ... প্রাক্তন: - যখন রিচার্জের জন্য কোনও অনুরোধ প্রকাশ করা হয় এটি কেবল একটি ক্রেসিভারে চলে যাবে ... সর্বদা মনে রাখবেন যদি অনুরোধটি সমস্ত ক্রেসিভারকে পেয়ে যায় তবে একাধিক রিচার্জ ঘটেছিল তাই বিশ্লেষণ বিকাশের সময় যা কোনও অ্যাপ্লিকেশনের জন্য উপযুক্ত?


-1

সারি গ্রাহকরা গ্রাহকদের অপেক্ষা করার বার্তা রাখার জন্য ব্যবহৃত জেএমএস পরিচালিত অবজেক্ট। সমস্ত গ্রাহক বার্তা গ্রাস করলে, বার্তাটি সারি থেকে সরানো হবে।

বিষয় হ'ল কোনও বিষয়ের সমস্ত গ্রাহকরা বার্তা প্রকাশিত হওয়ার সময় একই বার্তা পান।


2
সারি বার্তা কেবল একবার একক গ্রাহক দ্বারা গ্রাস করা হবে , এ কারণেই একটি সারি লোড ব্যালেন্সার প্রয়োগ করে। বিষয় সাবস্ক্রিপশন টেকসই হতে পারে : গ্রাহক প্রকাশের অনেক পরে বার্তাটি গ্রহণ করতে পারে (যদি গ্রাহকটি বন্ধ হয়ে যায় এবং উদাহরণস্বরূপ আবার উপস্থিত হয়)।
গ্রুবার
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.