Aracılığıyla paylaş


.NET Framework Performansı

Harika performansa sahip uygulamalar oluşturmak istiyorsanız, aynı uygulamanızın diğer herhangi bir özelliğini tasarladığınız gibi performans tasarlamanız ve planlamanız gerekir. Uygulamanızın performansını ölçmek için Microsoft tarafından sağlanan araçları kullanabilir ve gerekirse bellek kullanımı, kod aktarım hızı ve yanıt süresinde iyileştirmeler yapabilirsiniz. Bu konu başlığı altında, Microsoft'un sağladığı performans analizi araçları listelenir ve uygulama geliştirmenin belirli alanlarında performansı kapsayan diğer konulara bağlantılar sağlanır.

Performans için tasarlama ve planlama

İyi performans gösteren bir uygulama istiyorsanız, diğer özellikleri tasarladığınız gibi uygulamanızda da performans tasarlamanız gerekir. Uygulamanızdaki performans açısından kritik senaryoları belirlemeniz, performans hedeflerini belirlemeniz ve bu uygulama senaryoları için performansı erken ve sık ölçmeniz gerekir. Her uygulama farklı olduğundan ve farklı performans açısından kritik yürütme yollarına sahip olduğundan, bu yolları erken belirlemek ve çabalarınıza odaklanmak üretkenliğinizi en üst düzeye çıkarmanızı sağlar.

Yüksek performanslı bir uygulama oluşturmak için hedef platformunuzu tamamen tanımanız gerekmez. Ancak, performans açısından hedef platformunuzun hangi bölümlerinin maliyetli olduğunu anlamanız gerekir. Bunu, geliştirme sürecinizin başlarında performansı ölçerek yapabilirsiniz.

Performans açısından kritik olan alanları belirlemek ve performans hedeflerinizi belirlemek için her zaman kullanıcı deneyimini göz önünde bulundurun. Başlangıç süresi ve yanıt verme süresi, kullanıcının uygulamanızı algılamasını etkileyecek iki önemli alandır. Uygulamanız çok fazla bellek kullanıyorsa kullanıcıya yavaş görünebilir veya sistemde çalışan diğer uygulamaları etkileyebilir ya da bazı durumlarda Windows Store veya Windows Phone Store gönderim işlemi başarısız olabilir. Ayrıca, kodunuzun hangi bölümlerinin daha sık yürütüldüğünü belirlerseniz, kodunuzun bu bölümlerinin iyi iyileştirilmiş olduğundan emin olabilirsiniz.

Performans çözümleme

Genel geliştirme planınızın bir parçası olarak, geliştirme sırasında uygulamanızın performansını ölçeceğiniz ve sonuçları daha önce belirlediğiniz hedeflerle karşılaştıracağınız noktalar belirleyin. Uygulamanızı, kullanıcılarınızın sahip olmasını beklediğiniz ortamda ve donanımda ölçün. Uygulamanızın performansını erken ve sık sık analiz ederek, geliştirme döngüsünün ilerleyen bölümlerinde düzeltilmesi maliyetli ve pahalı olacak mimari kararları değiştirebilirsiniz. Aşağıdaki bölümlerde, uygulamalarınızı analiz etmek ve bu araçlar tarafından kullanılan olay izlemeyi tartışmak için kullanabileceğiniz performans araçları açıklanmaktadır.

Performans araçları

.NET Framework uygulamalarınızla kullanabileceğiniz performans araçlarından bazıları aşağıdadır.

Araç Açıklama
performans analizini Visual Studio Windows işletim sistemini çalıştıran bilgisayarlara dağıtılacak .NET Framework uygulamalarınızın CPU kullanımını analiz etmek için kullanın.

Bu araç, projeyi açtıktan sonra Visual Studio'daki Hata Ayıkla menüsünden kullanılabilir. Daha fazla bilgi için bkz . Performans Gezgini. Not: Windows Phone hedeflerken Windows Phone Uygulama Analizi'ni (sonraki satıra bakın) kullanın.
Uygulama Analizini Windows Phone Windows Phone uygulamalarınızda CPU ve bellek, ağ veri aktarım hızı, uygulama yanıt hızı ve pil tüketimini analiz etmek için kullanın.

Bu araç, Windows Phone SDK'sını yükledikten sonra Visual Studio'daki bir Windows Phone projesi için Hata Ayıkla menüsünden kullanılabilir. Daha fazla bilgi için bkz. Windows Phone 8 için uygulama profili oluşturma.
PerfView CPU ve bellekle ilgili performans sorunlarını belirlemek için kullanın. Bu araç, gelişmiş bellek ve CPU araştırmalarının yanı sıra çöp toplama ve JIT derlemesi hakkında bilgi sağlamak amacıyla Windows (ETW) ve CLR profil oluşturma API'leri için olay izlemeyi kullanır. PerfView'ı kullanma hakkında daha fazla bilgi için blog gönderilerine bakın.

Belleğe özgü sorunlar için bkz. Bellek Araştırmaları için PerfView Kullanma.
Windows Performans Analizi Aynı bilgisayarda birden çok uygulama çalışırken uygulamanızın belleği ve depolama alanı kullanımı gibi genel sistem performansını belirlemek için kullanın. Bu araç, Windows 8 için Windows Değerlendirme ve Dağıtım Seti'nin (ADK) bir parçası olarak indirme merkezinden kullanılabilir. Daha fazla bilgi için bkz. Windows Performans Analizi.

Windows için olay izleme (ETW)

ETW, kod çalıştırma hakkında tanılama bilgileri edinmenizi sağlayan bir tekniktir ve daha önce bahsedilen performans araçlarının birçoğu için önemlidir. ETW, belirli olaylar .NET Framework uygulamalar ve Windows tarafından tetiklendiğinde günlükler oluşturur. ETW ile, uygulamanızı yeniden başlatmadan bir üretim ortamında ayrıntılı izleme gerçekleştirebilmeniz için günlüğü dinamik olarak etkinleştirebilir ve devre dışı bırakabilirsiniz. .NET Framework ETW olayları için destek sunar ve ETW, performans verileri oluşturmak için birçok profil oluşturma ve performans aracı tarafından kullanılır. Bu araçlar genellikle ETW olaylarını etkinleştirir ve devre dışı bırakır, bu nedenle bunlara aşina olma yararlı olur. Uygulamanızın belirli bileşenleri hakkında performans bilgileri toplamak için belirli ETW olaylarını kullanabilirsiniz. .NET Framework ETW desteği hakkında daha fazla bilgi için bkz. Ortak Dil Çalışma Zamanında ETW Olayları ve Görev Paralel Kitaplığında ETW Olayları ve PLINQ.

Uygulama türüne göre performans

Her .NET Framework uygulamasının performansı değerlendirmeye yönelik en iyi yöntemleri, dikkat edilmesi gereken noktaları ve araçları vardır. Aşağıdaki tabloda belirli .NET Framework uygulama türlerine yönelik performans konularına bağlantı verebilirsiniz.

Uygulama türü Bkz.
Tüm platformlar için uygulamaları .NET Framework Çöp Toplama ve Performans

Performans İpuçları
C++, C# ve Visual Basic yazılmış Windows 8.x Store uygulamaları C++, C# ve Visual Basic kullanarak Windows Store uygulamaları için en iyi performans uygulamaları
Windows Presentation Foundation (WPF) WPF Performans Paketi
ASP.NET ASP.NET Performansına Genel Bakış
Başlık Açıklama
.NET Framework Uygulamalarında Önbelleğe Alma Uygulamanızdaki performansı geliştirmek için verileri önbelleğe alma tekniklerini açıklar.
Yavaş Başlatma Özellikle uygulama başlangıcında performansı artırmak için nesneleri gerektiği gibi başlatmayı açıklar.
Güvenilirlik Sunucu ortamında zaman uyumsuz özel durumları önleme hakkında bilgi sağlar.
Büyük, Yanıt Veren .NET Framework Uygulamaları Yazma Yönetilen kodda C# ve Visual Basic derleyicilerini yeniden yazmaktan toplanan performans ipuçları sağlar ve C# derleyicisinden birkaç gerçek örnek içerir.