Uğur Umutluoğlu

Yazılım Teknolojileri Günlüğü

güzel özellik:) aslında cihazın hareketinin haritadan görünmesine gerek yok, sadece o cihazın etiketiyle check-in yapmak yeterli

  • RSS
  • Twitter
  • Facebook
  • Google+
  • Linkedin
  • Tumblr
  • Formspring
  • Kitablog

Geçtiğimiz Salı akşamı soru-cevap bölümüyle birlikte yaklaşık 2 saat süren bir webineri tamamladık. Webinerde Entity Framework ile geliştirdiğimiz web tabanlı bir uygulamada, veritabanı ve uygulama sunucularının yükünü azaltmak ve daha performanslı çalışmalarını sağlamak için uygulamamızın Cache katmanını nasıl geliştirebileceğimiz üzerine çalışmalar yaptık. SqlCacheDependency aracılığıyla Application_Start’ta ayağa kaldırdığımız Cache nesneleri sayesinde, veritabanı sunucusuna en az sayıda sorgu göndermek ve veritabanındaki tabloları sorgulamak yerine bellekteki entity nesnelerini sorgulayarak etkin çalışmanın yollarını aradık ve generic yapıdaki basit bir Caching kütüphanesi yazarak nihayetinde projemizi sonlandırdık. Tabi ki şu an burada bahsedemeyeceğimiz bir takım ayarlar, kullanım detayları ve ipuçlarından da bahsettik. Zaten tüm detayları webiner videosunda bulabilirsiniz.

Webiner videosunda webinerin son 15-20 dakikalık kısmı yer almıyor maalesef, zira bu videoyu bile elde ettiğim için şükretmeliyim(Video kayıdı için Bahtiyar Dilek’e buradan teşekkür ediyorum) Ayrıca webinerde geliştirdiğimiz projenin kodlarını da aşağıdaki linklerden indirebilirsiniz.

Bu yazıya 2 yorum yapılmış

  1. Bülent ERDEM says:

    Bu değerli sunu için çok teşekkür ediyorum. Video kayıtlarında sp ilgili kod çözümünü tam alamadık buna benzer bir çalışma olmasımı gerekiyor?

    private T GetValue(string tableName, string columnName, int stationNo) where TEntity : class
    {
    TEntity tmp = context.CreateObjectSet().
    Where(“it.id == @a”, new ObjectParameter(“a”, stationNo)).
    Single() as TEntity;

    return (T)tmp.GetType().GetProperties().
    Where(a => a.Name == columnName).
    Single().
    GetValue(tmp, null);
    }

  2. ugur says:

    Evet sunumda o soru sorulmuştu ancak runtime’da aklıma tam olarak gelmemişti :) Gönderdiğin kod çalışır mı net bilemiyorum, ancak ilerleyen günlerde complex linq sorgularının cachelenmesi ile ilgili bir blog postu yayınlanamayı düşünüyordum, tahminimce o sorgu sp’lerin de cachelenmesinde kullanılabilir.

    Biraz elimi hızlandırıp o postu hazırlayayım. Yazıyı 1-2 gün içerisinde bloga ekleyeceğim, takipte kalın :)