29 Şubat 2012 Çarşamba

Wicket ve Authorization

Wicket ile Component'lerin sayfa üzerinde sadece yetkilendirilmiş kişilere gösterilmesi için kullanılan sınıf  IAuthorizationStrategy.

Bu stratejileri birleştiren bir sınıf ta mevcut ismi CompoundAuthorizationStrategy. Aşağıdaki şekli buradan aldım.

Burada dikkat edilmesi gereken nokta bu bileşil stratejini çalışması için yani yetkilendirmeyi vermesi için içerdiği tüm yetkilendirme nesnelerinin true döndürmesi gerektiğidir. Yani herkes evet derse sonuç evet çıkar, tek biri bile hayır dese sonuç hayırdır.

28 Şubat 2012 Salı

Quartz Job Scheduler

Quartz Job Scheduler ile ilgili topladığım bazı bilgileri aşağıya ekledim.
Buradan aldığım şekilde görüldüğü gibi temel sınıflar şunlar.
1. Scheduler
2. Trigger
3. Job

CronTrigger
Buradan basit bir CronTrigger örneği aldım

23 Şubat 2012 Perşembe

Eş zamanlı (Concurrent) Veri Yapıları

Semaphore
Semaphore aslında bir sayaçtır. Ortak kullanılan bir kaynağa aynı anda en fazla kaç kişinin  erişebileceğini kontrol etmek için kullanılır. Aşağıdaki resmi buradan aldım.
Resimdeki kulübün belli bir kapasitesi var. Semaphore kullanarak, üst sınıra erişince içeriye girmek isteyen diğerlerini bekletiyoruz. Kulüpten ayrılanlar oldukça sırada bekleyenleri içeri alıyoruz. Bu durumu anlatan güzel bir şekli ise buradan aldım.


12 Şubat 2012 Pazar

Çağrı Detay Raporu (CDR)

Çağrı Detay Raporu (CDR) İşlenmesi


CDR Nedir

Faturaların hesaplanmasında "Call Detail Record" (CDR) verisi kullanılıyor. CDR'ın bir başka açıklaması için burayı da okuyabilirsiniz.Bu terimin türkçesi ise "Çağrı Detay Raporu". Santraller çeşit çeşit oldukları için herbiri değişik formatlarda CDR üretebilir. Aşağıda bazı ham CDR örneklerini bulabilirsiniz.


CDR işlenmesini gösteren aşağıdaki şekli buradan aldım.






Mediation Sistemi

Faturalama sistemine gelen CDR verisi ham formatta oluyor ve kullanılabilmesi için bu verinin öncelikle "Mediation" denilen bir sistem tarafından daha kullanışlı ve ortak bir formata getirilmesi gerekiyor. Mediation'i temsil eden aşağıdaki şekli buradan aldım. Şekilde de bir çok santral tipinden gelen verinin mediation sistemine girdiği görülebiliyor.


Bir çok santral gönderdiği CDR dosyasında görüşme süresini desisaniye (saniyenin onda biri) olarak ölçebiliyor. Eğer santraller ölçüm için farklı birimler kullanıyorsa bu farkın "Mediation" sistemi tarafından ortadan kaldırılması gerekiyor.

Dünyada çok büyük telefon şirketleri günlük olarak milyonlarda CDR işliyorlar. Örneğin Sprint günlük olarak 365 milyon CDR işliyormuş.

Sahiplendirme (Guidance)
Bu aşamada görüşmenin hangi hesap tarafından yapıldığı bulunuyor. Yani görüşme sahiplendiriliyor.

Rating Sistemi
Faturalama sisteminin bir parçası olan Rating sistemi CDR verisini alarak bir aramanın fiyatını çıkarıyor.