Bilmek istediğin her şeye ulaş

Stored Procedures kullanan var mı?

Merak ettiğim bir konu var gerçek anlamda web uygulamalarında stored procedures kullanan kaç kişi var..Düzenle
Her ne kadar ORM araçları gelişmiş olsalar da bu TSql kod yazarak geliştirme yapmanın devam etmediği, etmeyeceği anlamında değil. Tabiki hem stored procedure, hem user defined functions hem trigger tüm veritabanı programlama öğeleri kullanılmaya devam ediyor. Entitiy Framework ya da bir başka ORM aracıyla çalıştığınızda ağır çalışan, yavaş çalışan ve performans sorunu yaşadığınız çoğu yerde şurası için bir storedprocedure yazarsam daha performanslı olur diyeceğiniz yerler olabiliyor. Sadece ORM penceresinden değil illa ki ihtiyaç duyulur ve procedure yazılır.
  • Paylaş
2

Gokhan İnce, Ben bir kere entity kullanmıştım pek hoşuma gitmedi birdaha kullanmadım... performans testleri için buradan bakabilirsiniz..luisrocha.net/2011/12/data-access-perfor...

Hakan Köse, Gönderdiğin linkteki sonuçlar ilginç, LINQ ve EntityFramework bu kadar yavaş olmasa gerek diye düşünüyorum aslında..

Ben daha önce bununla ilgili olarak Microsoft Türkiye'den bir Support Team Leader ile konuşmuştum ve bana aynen şunları söyledi:

"Aslında tüm yapılar; LINQ, EntityFramework dahil, hepsi arka tarafta ADO.NET kullandığı için arada çok çok büyük bir fark yoktur. Neticede tüm bu framework'ler sorguyu SQL sorgusuna dönüştürüyor. Dolayısıyla, kendinizi hangisinde daha rahat ve daha hızlı kod yazabiliyor hissediyorsanız onunla devam edin."

Tabii ki Stored Procedure her zaman daha hızlıdır.. Ancak bir SQL sorgusu yazamayacağımız kadar karmaşık bazı ihtiyaçlar doğuyor ve bunları LINQ/EntitiyFramework ile yapmak çok daha kolay..

Performans sorunu yaşadığınız yerlerde, veritabanı tasarımınız veya framework ile oluşturduğunuz sorgunun yapısında bazı hatalar olabilir. Örneğin Lazy Loading ve Eager Loading denen bazı kavramlar var ve LINQ ya da EntityFramework kullanıyorsanız bunlara dikkat etmeniz gerekiyor...

Benim bildiğim kadarı ile herhangi bir SQL sorgusunun 200ms altında gerçekleşmesi yeterli kabul ediliyor. Yani, bir sorgu en fazla 200ms olmalı, aksi durumda yoğun load durumunda performans sorunları başlayabilir.

Sonraki Soru
HESAP OLUŞTUR

İstatistikler

423 Görüntülenme3 Takipçi1 Yanıt