17 Ekim 2010 Pazar

Jey Em Es(JMS)

Ulan normalde işim olmasa oturur JMS nedir diye incik cincik incelerim , yarına sunumum var hala bir hareket yok. Sunu değil text-up ı hazırlasam yine iyi. Normalde entry girmediğim bloğa bugün 3. entry'i giriyorum arkadaş. Ders çalışmak gerektiğinde yapılan anlamsız davranışların suyunu çıkarıyorum. Bişeyler yazdım aslında yazmadım değil de daha çok başındayım be ya.
Seviyoruz JMS'i sevmiyo değiliz de olmuyor şu an napayım. Al bak şunları yazdım;

1-Mesajlaşma nedir?
Mesajlaşma bir yazılımın alt parçalarının veya birden fazla yazılımın birbiriyle haberleşmesidir. Bla Bla Bla.

2- JMS API nedir?
“JMS=Java Message Service=Java Mesaj Servisi “ her üçü aynı şey olup birer java api’sidir.
JMS bir programın mesaj yaratmasını, göndermesini, almasını, ve okumasını sağlar.
Sun ve destekleyici diğer şirketler tarafından , yaratılan Java programlarının birbiriyle haberleşebilmesine olanak sunacak şekilde onları ortak bir kümeye almak üzere tasarlanmıştır.
JMS API geliştiricinin mesajlaşma için öğrenmesi gereken konseptleri minimuma çeker , aynı zamanda karmaşık mesajlaşma sistemleri yaratmasına yetecek sayıda özelliği barındırır. Aynı zamanda aynı mesajlaşma alanında bulunan uygulamalar için taşınabilirliği maksimuma çıkartır.
Bildiğimiz normal mesajlaşmanın(loosely coupled) haricinde JMS API bize iki ekstra mesajlaşma sistemi daha sunar. Bunlar;
1- Asenkronize: Bir JMS sağlayıcısı kendisine bağlı “client” larına onlar mesaj beklemeksizin mesaj gönderebilir.
2- Güvenilir: Bu mesajlaşma sistemi ,bağlantı kurulduğu takdirde gönderilen mesajların sadece bir kere gideceğini ve kesinlikle gideceğini temin eder. “Güvenilir” mesajlaşma sisteminin güvenilirliği alt seviyelere inildiğinde azalır ve zaman zaman mesaj kaybı veya aynı mesajı birden çok kere gönderme gibi durumlar ortaya çıkabilir.
JMS ‘in ilk çıkışı Ağustos 1998’dir. En son versiyonu Ocak 2008 de çıkmıştır içerisinde yeniden tasarlanmış bir mesaj kuyruğu da bulunmaktadır. Büyük ve küçük ölçekli sistemlerin her birinde aynı şekilde kullanılabilir hale getirildiği iddia edilmektedir.
3-Ne Zaman JMS API’ yi Kullanırız?
-Komponentlerin birbirinden haberi olmasını istemediğimizde
-Uygulamanın diğer komponentlerin hazır ve çalışır olup olmasına aldırmaksızın çalışmasını devam ettirmesini istediğimizde,
-Uygulamanın komponentlerinden herhangi birinin diğer komponentlere mesaj gönderip herhangi bir cevap beklemeksizin çalışmasına devam etmesini istediğimizde JMS API kullanabiliriz.
4- J2EE İçin JMS API Nasıl Çalışır?
1998 yılında JMS ilk tanıtıldığında en önemli özelliği kendisi gibi message oriented middleware sistemlerle –IBM ‘in “MQSeries” i gibi- haberleşebilmesiydi. Şimdi ise JMS API J2EE içerisinde adapte edilmiş bir şekilde geliyor ve geliştiriciler Enterprise komponentlerin birbiriyle haberleşmesi için JMS’i kullanıyor.
Günümüzde Enterprise Java Uygulamalarının geliştirilmesi ve çalıştırılması için bir çok uygulama çatısı ve uygulama sunucusu bulunmaktadır. Kullanılan çatıların en önemli özelliği bir çok alt modülü içerisinde adapte edilmiş biçimde bulundurmasıdır. Bu alt modüllerin (Drools modülü , TestNG modülü, Facelet modülü, BPM modülü, JMS modülü, Persistence modülü, Çeşitli Security Modülleri, Servlet modülü,Hibernate modülü vs.) de birbiriyle haberleşmesini sağlayan ana modül JMS ‘tir. Dolayısıyla bu kadar çok modülün geliştirilecek uygulama için özel bir şekilde mesajlaşmasının ayarlanması ; uygulama için önemli bir hız kazancı, güvenlik açısından daha sıkı sistemler , kaynak kullanımı açısından daha az yıpratıcı ataklar sağlaması olasıdır. Ayrıca JNDI (Java Naming and Directory Interface) üzerindeki mesajlaşmanın da JMS üzerinden idare edildiği düşünüldüğünde JMS kullanıldığında direk uygulama sunucusu üzerinden içerik kısıtlaması etkin bir şekilde yapılabilmektedir.

1 yorum: