Sobes.tech
Middle

Xabarga yo'naltirilgan model (MOM) nima?

sobes.tech AI

AIdan javob

Xabarlar bilan ishlash modeli (MOM) — bu mustaqil komponentlar o‘rtasida asinxron xabar almashinuvi asosida qurilgan tarqatilgan tizimlar uchun dizayn shabloni.

MOM ning asosiy komponentlari:

  • Xabar: komponentlar o‘rtasida uzatiladigan ma’lumotlar paketi.
  • Yuboruvchi: xabarlarni yaratadigan va yuboradigan ilova.
  • Qabul qiluvchi: xabarlarni qabul qiladigan va ishlov beradigan ilova.
  • Xabarlar chizig‘i / Xabarlar brokeri: xabarlarni marshrutlash, saqlash va yetkazib beradigan oraliq dasturiy ta’minot (middleware).

MOM ning afzalliklari:

  • Asinxronlik: Yuboruvchi va qabul qiluvchi bir vaqtning o‘zida mavjud bo‘lishi shart emas.
  • Ajralish (Decoupling): Yuboruvchilar va qabul qiluvchilar bir-birini to‘g‘ridan-to‘g‘ri bilishmaydi.
  • Kengaytiriluvchanlik: Yangi yuboruvchilar yoki qabul qiluvchilarni qo‘shish oson.
  • Ishonchlilik: Xabarlar brokeri yetkazib berishni kafolatlay oladi.
  • Moslashuvchanlik: Turli xil o‘zaro ta’sir modellari (nuqta-nuqta, nashr qilish/obuna bo‘lish)ni qo‘llab-quvvatlaydi.

MOM ning mashhur amalga oshirilishi:

  • ActiveMQ
  • RabbitMQ
  • Kafka
  • Java xabarlar xizmati (JMS)

Interaksiya misoli:

// Yuboruvchi xabarni topikda nashr qiladi
Producer producer = connection.createProducer(topic);
TextMessage message = session.createTextMessage("Yuboruvchidan salom!");
producer.send(message);
// Qabul qiluvchi topikka obuna bo‘ladi va xabarlarni ishlaydi
Consumer consumer = connection.createConsumer(topic);
consumer.setMessageListener(new MessageListener() {
    @Override
    public void onMessage(Message message) {
        // Olingan xabarni ishlash
    }
});