MİMARİ ÖRÜNTÜLER

Yazılım Mimarisinde Broker

Broker; finans piyasalarında alım ve satım işlemlerine belirli bir komisyon ücreti karşılığında aracılık eden, işlemleri taraf olduğu kişi yada kurumlar için görünürde kendi adıyla yapan piyasa uzmanlarına verilen isimdir.

Onur Dayıbaşı
Architectural Patterns
2 min readDec 13, 2015

--

Broker kavramını çoğu kişi finans sektöründe duymuştur aslında.

“Broker; finans piyasalarında alım ve satım işlemlerine belirli bir komisyon ücreti karşılığında aracılık eden, işlemleri taraf olduğu kişi yada kurumlar için görünürde kendi adıyla yapan piyasa uzmanlarına verilen isimdir.”

Yukarıda ki metinden de anlaşılıyor ki finans, borsa, piyasa alanında uzmanlığı olan bu kişiler sizin ile borsa uygulamaları arasında aracı olup, sizin adınıza finansal işlemler gerçekleştirir.

Yazılım mimarisinde de aynısı geçerlidir. Peki neden bu aşağıdaki şekilde bir broker ihtiyaç vardır. Neden istemci direk sunucuya erişmezde araya broker koyarız. Broker ‘ın uzmanlık alanı nedir ?

Broker Mimarisi

Yukarıdaki resimdeki Client (İstemci Uygulama) .dır. Şimdi basitten karmaşığa doğru anlatırsak .

Adım 1. Dağıtık olmayan bir uygulamada istemci sunucudan bir işi gerçekleştirmesini ister. Hiç bir problem yok.

Dağıtık Olmayan Sistemde İstemci Çağrımı

Adım 2. Dağıtık uygulamada araya katmanlar giriyor çünkü isteğin sunucuya taşınması gerekir. Aynı zamanda sunucudan dönen cevabın istemciye taşınması gerekir. Bu taşımaların gerçekleştirilebilmesi, bağlantıların kurulabilmesi için aralarda ClientProxy ve ServerProxy inin yer alması gerekir.

Dağıtık Yapıda İstemci Sunucu Proxy üzerinden Çağrımı

Proxy’lerin Görevleri : WebService’lerde(SOAP) bu şekilde çalışır. Sunucunun yerini tespit etmek. Mesajın dönüşümlerini marshall/unmarshall edilmesinden sorumludur. Aşağıda akışı görebilirsiniz. Aslında oldukça zahmetli bir olay dağıtık çalışmak.

  • sunucunun bulunması
  • entity ‘den xml dönüştürme
  • network ‘den gönderme
  • bunun sunucu tarafından alınması ve cevaplanması

Adım 3. Bir önceki adımda her şey güzel gibi çalışıyordu. Fakat Proxy’ler birbirlerini network de bulma gibi sorumlulukları var ve bunu compile time ‘da gerçekleştiriyorlar. Run-time sunucunuzun yerini değiştirmek istiyorsunuz. Veya yeni bileşenler eklemek istiyorsunuz. vb.. Bu esnekliği 2nci adımda kaybediyorsunuz. Bunun için bize arada bu işi çözümleyecek bir broker gerekiyor.

Dağıtık Yapıda İstemci Sunucu Çağrımında Broker Kullanımı

Yukarıdaki resimde Broker ‘ın sunucunun yerini bulma ve birbirlerine register olma işlemlerini üzerine almış olduğunu görebilirsiniz. Bu sayede runtime ‘da birleşme/ayrılma ve yer değiştirme işlemleri yerine getirebiliriz.

Okumaya Devam Et 😃

Bu yazının devamı veya yazı grubundaki diğer yazılara erişmek için bu linke tıklayabilirsiniz.

--

--