Yazılım bileşenleri ya da uygulamaları arasında iletişimi sağlayan metodtur. Istemci (Client) mesajı başka bir istemciye gönderir ya da alır. Gönderenin (Sender), alıcı (receiver) hakkında herhangi birşey bilmesine gerek yok tersi içinde aynısı geçerli. Gönderenin ve alanın sadece mesaj formatı konusunda bilgi sahibi olması gerekmektedir. Bu bağlamda mesajlaşmanın RMI gibi teknolojilerden (uzaktaki uygulamanın metod bilgisinin gerektirtiği) farklı olduğu anlaşılmaktadır.
JMS API?
Java Message Service, okuma/gonderme/alma/yaratma gibi mesajlaşma özelliklerine sahip olan Java API’sidir. JMS uygulama bileşenleri arasında doğrudan iletişim kurmak yerine bir mesaj sunucusu (Message Server) aracılığıyla iletişim kurmasını sağlar. JMS iletişimi Asenkron ve güvenli sağlanır. Istemci mesajı diğer istemciye gonderir ve istemci bu mesajı gerektiği zaman alır. Bu mesajlaşma güvenilir bir şekilde yapılır yani mesajlar kaybolmaz ya da birden fazla kez yollanmaz.
JMS Mimarisi?
Kısaca JMS elemanları hakkında bilgi vermek gerekirse:
· JMS Provider (JMS interfacelerinin implementasyonudur.)
· JMS Client (Mesajı gönderen ya da alan uygulamadır.)
· JMS Producer/Publisher (JMS istemcisinin mesajı yaratması ve göndermesidir.)
· JMS Consumer/Subscriber (JMS istemcisinin mesajı almasıdır.)
· JMS Message (JMS istemcileri arasında transfer edilen veridir.)
· JMS Queue (Yollanan mesajların okunmaya hazır halde beklediği kuyruk veri yapısıdır.)
· JMS Topic (Dağıtıcı istemci tarafından dağıtılan mesajların birden fazla alıcı istemci tarafından alınmasını sağlayan mekanizmadır.)
JMS Model
JMS API si 2 modeli desteklemektedir.
· Point to point or Queuing Model
· Publish and Subscribe Model
Point to point : Gönderici istemci mesajı kuyruk (queue) yapısına yollar, alıcı istemci ise bu kuyruk yapısından mesajı olur. Sadece bir alıcı mesajı okuyabilir ve her okunan mesaj için alındığına dair bilgilendirme yapılır.
Publish/Subscribe Model: belirlenen mesaj başlığına (message topic) mesajları yollar. Birden fazla istemci bu mesaj başlığına register olup gelen mesajları alır. Bu istemcilerin birbirlerinden ya da gondericiden haberi olmaz. İstemciler listener olgusuna kaydolur ve yollanan mesajları alır. Mesaj bütün kayıtlı istemciler tarafından alındıktan sonra silinir.
JMS i kullanmak için öncelikle session ve kuyrukları (queue) yönetecek JMS provider’a ihtiyaç vardır.
· OpenJMS, from The OpenJMS Group
· Open Message Queue, from Sun Microsystems
· JBoss Messaging from JBoss
bunlardan bazıları..
JMS 2 bölümünde kavramlar daha da detaylandırılacak.
Hiç yorum yok:
Yorum Gönder