ASP .NET Pipeline , ASP .NET'in bir web applicationına veya web servisine yapılan requestlerin handle edildiği süreçtir.
- Bir user, Web browser aracılığıyla bir web application yada web servise request gönderir.
- Request, ASP .NET uygulamasını barındıran(hosting eden) web sunucusu tarafından alınır.
- Web sunucu, Requesti ASP .NET runtime iletir. ASP.NET'e gelen requestler Thread Pooldaki Threadler tarafından ele alınır.Thread poolda yaklaşık 5000 adet thread bulunmaktır.Eğer bu threadlerin hepsi dolarsa web sunucusunun Queuesuna alınır. Eğer burasıda dolarsa uygulama 503 : Server To Busy Hatası verir . Bunu önlemek için web servisimizi asenkron olarak kodlamaya özen göstermeliyiz.
- ASP .NET Runtime , Requesti işler ve requesti ve kullanıcıya geri gönderilecek response hakkındaki bilgileri içeren bir HTTP Context oluşturur.
- Request , ASP .NET pipelinedaki bir dizi adımdan veya "aşamalardan" geçirilir.
Middleware, Web te bir request’in response’a dönüşene kadar arada geçen süreci handle etmemizi sağlayan yapıdır diyebiliriz.Yani request ile response arasına müdahale etmemizi sağlayan ara katman görevi görür.
Her middleware, pipeline üzerinde kendisinden sonra gelen componeti çalıştırmak veya short-circuiting ile direk response cevabı vermek ile görevlidir
Uygulama içerisinde tanımlı olan middleware'ler register edilme sırasıyla birlikte yukarıdaki resimde olduğu gibi birbirlerini call ederek pipeline'ı tamamlarlar.
Hiç yorum yok:
Yorum Gönder