PokeIn : ASP.Net için Ajax kütüphanesi

Yazıma başlamadan önce Reverse Ajax nedir, bunun hakkında ufak bir not düşmek isterim. Herhangi bir sunucu(server) ve iki tane de bu sunucudan bilgi alan istemci(client) c1 ve c2 düşünelim. Normalde c1’in sunucuya gönderdiği bir bilgiyi c2’nin alması için şöyle bir yol izlenir:

c1 sunucuya bilgiyi gönderir.

sunucu c1’den bilgiyi alır.

c2 sunucudan bilgiyi ister.

sunucu c2’ye bilgiyi gönderir.

c1 sunucudan bilgiyi ister.

sunucu c1’e bilgiyi gönderir.

Böyle bir uygulama, binlerce istemcisi olan bir sistem için, kaynakların kötüye kullanılmasına sebep olacaktır. Oysa reverse ajax tekniği şöyle işler.

c1 sunucuya bilgiyi gönderir.

sunucu c1’den gelen bilgiyi alır.

sunucu bilgiyi herkese gönderir.

Görüldüğü gibi kaynaklar çok daha efektif kullanıldı. Reverse Ajax bir sunucunun, istemci tarayıcıyı yenilemeden, bilgileri ona göndermesidir. PokeIn ise ASP.Net için Reverse Ajax sunan bir ajax kütüphanesidir.

Neden PokeIn?

  • Kullanmaya başladığınızda göreceksiniz, gerçekleştirmesi oldukça kolay bir kütüphanedir.
  • Grouping ve Channeling yetenekleri sayesinde kaynakları çok efektif kullanmayı sağlar, ölçeklendirilebilirdir.
  • JSON aktarımlarını dinamik ya da rastgele olarak şifreler.
  • Session injection’ları engellemeyi sağlar.
  • Çift yönlü veri iletişimine (response/request) olanak verir.

Bu yazımda PokeIn kullandığım projelere yer vermek yerine PokeIn’de sistemin nasıl işletildiğini, madalyonun öbür yüzünü paylaşıyor olacağım.

Nasıl Çalışır?

  1. Sunucu, istemci taraftan bir bağlantı isteği alır.
  2. PokeIn bağlantıyı bırakır, gerekli bilgiyi kendi üzerinde saklar.
  3. Sunucu uygulaması (server application) içsel olarak çalışmaya devam eder.
  4. Eğer sunucu, istemciye gönderilmek üzere yeni bir bildirim oluşturacak olursa PokeIn bağlantıyı tekrar alır. (iletimi gerçekleştirir)
  5. Bu sayede sunucu aynı kaynakları tek istemci için değil yüzlerce istemci için kullanmış olur.

Şimdilik bu kadar, bundan sonraki yazımda PokeIn kullanan basit bir uygulamayı örnekleyeceğim.

Advertisements

Comment On

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s