6 Mayıs 2008 Salı

OSGi

Son dönemde oldukça popüler olan OSGi teknolojisi üzerine biraz konuşmak istiyorum. Bu teknolojide söz sahibi kurum OSGi Alliance. OSGi Alliance, Mart 1999 yılında Ericsson,IBM, Oracle, Sun Microsystems ve başka bikaç ortaklık tarafından kar amacı gütmeyen bir ortaklık olarak kuruldu. Alliance'ın bir yönetim kurulu var ve oraganizasyon bu kurul tarafından yönetiliyor. OSGi Alliance spesifikasyonu ve
referans implementasyonunu sağlıyor.

OSGi specification'ı, geliştirilmiş servis-yönlü mimarinin temeli olan ağ servisleri için bileşen-yönlü (component-oriented) bir standart tanımlar.
Bir ağ cihazına OSGi Hizmet platformu eklendiğinde, ağın herhangi bir yerinden cihaza
ait yazılım bileşenlerinin yaşam döngüsünün yönetilebilmesi yeteneği eklenir.
Yazılım bileşenleri, cihazın işlemine engel olmadan çalışma anında,
yüklenebilir, güncellenebilir veya çıkarılabilir.

Yazılım bileşenleri kütüphaneler ve uygulamalardır, bunlar dinamik olarak diğer
bileşenleri bulup kullanabilirler. Yazılım bileşenleri standart olarak satın alınabilir veya evde geliştirilebilirler. OSGi Alliance, XML, kullanıcı yönetimi, güvenlik, günlüğe kaydetmek (logging), yapılandırma (configuration), HTTP sunucuları ve daha fazlası gibi ortak işlevler için kullanılabilir pek çok standart bileşen
arayüzleri geliştirdi. Bu bileşenlerin tümüyle-uyumlu (Plug-compatible) geliştirilimleri farklı pazarların gereksinimlerini sağlamaları ve en iyi duruma getirmeleri için farklı üreticilerden sağlanabilir.

OSGi spesifikasyonu başlangıçta ev otomasyon sistemleri ile internet erişimini hedefledi. Fakat, standartın özellikleri başka pazarlara uygulanabilir ve çekiciydi.
Örneğin, Nokia ve Motorola sonraki nesil akıllı telefonlar için bir OSGi teknoloji
standardı kullandı. Araç endüstrisi OSGi teknolojisine, pek çok araç üreticisinin
desteklediği GST spesifikasyonunun ana parçalarını yaparak adapte oldu.
OSGi hizmet platformu BMW nin son teknoloji telematik sistemlerinin standart bir
parçası haline geldi ve pek çok Volkswagenin içine girmenin yolunu buldu, ve
CVIS ve VII gibi standartlar OSGi teknolojisini dikkate alır hale geldi.

Son dönemde daha başka pazarlardan bahsetmek gerekiyor. Bu teknolojinin enterprise java uygulamalarında da kulanılabileceğinin ortaya çıkması üzerine enterprise java dünyasının merakı bir anda OSGi teknolojisine kaydı. Dünyada kabul gören önemli java konferanslarındaki seminerlerin büyük kısmını OSGi teknolojisinin
enterprise dünyaya nasıl adapte edilebileği ile ilgili sunumlar oluşturuyor.

Son yılların ön gözde middleware fromeworkü olan Spring'in de OSGi ile ilgili pek çok çalışması var. Son olarak SpringSource, "Spring Source Application Platorm" adında bir application server sürdü piyasaya. Spring, Tomcat ve OSGi teknolojisinin güçlerini birleştiren bir application server olarak tanımlıyorlar.
Şu anda beta versiyonu var, indirdim deniyorum (defect bile açtım :)), en kısa zamanda bu platformla ilgili deneyimerimi de sizlerle paylaşmayı umuyorum.

Basit bir OSGi örneği ile devam edeceğim...