Merhabalari
Bu makelemizde daha önce bir çok kişinin ele almış olduğu bir konuyu sizlere aktarmak istedim.
Veri geliş gidişlerinde özellikle son nihayi kullanıcıya erişmesi sırasında verinin sıkıştırılarak daha az kaynak tüketmesi için gzip adı altındaki uygulamayı kullanmaktayız.
Bu uygulama gidecek verinin otomatik olarak sıkıştırılmasını sağlamakta ve daha az kaynak tüketimi sağlıyarak sistemin performanısı artırmaktadır.
Bunun için aşağıdaki adımları izleyebilirsiniz.
1-Microsoft.AspNetCore.ResponseCompression bu paketi sisteminize eklemeniz gerekmektedir. Makale yazılırken stabil 2.0.2 versiyonu aktifti.
2-services.AddResponseCompression(options =>
{
options.EnableForHttps = true;
options.MimeTypes = ResponseCompressionDefaults.MimeTypes.Concat(new[]
{
“image/svg+xml”,
“application/atom+xml”
});;
options.Providers.Add<GzipCompressionProvider>();
});kodu configuration servis kısmında ekleyerek ayarlama yapıyoruz.
3- app.UseResponseCompression(); configuration kısmındaki bu parametre ile çalıştırdığınız zaman sistem çalışacaktır.
Ortalama olarak sistemden veri kaynağının türüne bağlı olarak %70-%30 arasında sıkıştırma yaparak size ek performans sunmaktadır.
Ek olarak;
yukarıda aşağıda listeleyeceğim minetype a ek olarak minetype tanımlama yapıyoruz.
Varsayılan minetype listesi
“text/plain”,
“text/css”,
“application/javascript”,
“text/html”,
“application/xml”,
“text/xml”,
“application/json”,
“text/json”,
şeklindedir.
Buradaki kodları ben api projemde kullanmaktayım.Sizler mvc projenizde yada api projelerinizde kullanabilirsiniz.