BizTalk sunucu işlemi, yetersiz bellek özel durum ya da bir bellek sızıntısı sorunlarını giderme hakkında
Makalenin İngilizcesi aşağıdaki gibidir:918643
Özet
- Fiziksel RAM
- Büyük ileti işleme
- Kullanımı / 3 GB geçiş
- Özel bileşenler kullanımı
- Microsoft .NET Framework çalıştıran sistem sürümünü
- Işlemci sayısı
Giriş
Daha fazla bilgi
Bu sorun oluştuğunda, aşağıdakine benzer bir uyarı iletisi olay günlüğüne kaydedilir:
Olay Türü: uyarı
Olay kategorisi: (1)
Olay KIMLIĞI: 5410
Açıklama: BizTalk hizmetin sonlandırılmasını gerektiren bir hata oluştu. En sık karşılaşılan nedenleri beklenmeyen bir bellek hatasının ve <a2>eşleştirilemez Bağlan</a2> veya <a4>BizTalk veritabanlarından birine bağlantı kaybı dışına alır. Otomatik yeniden başlatma, 1 dakika ve hizmet olacak kapatma. Sorunlu veritabanı kullanılamaz durumda kalırsa, bu döngü yinelenir.
Hata iletisi: özel durum türü System.OutOfMemoryException oluşturuldu.
Hata kaynağı:
BizTalk ana bilgisayar adı: BizTalkServerApplication
Windows hizmeti adı: {DCC899FE-C62F-41BE-851A-8720B2EB9C14} BTSSvc
Olay türü: uyarı
Olay kategorisi: (1)
Olay KIMLIĞI: 5410
Açıklama: BizTalk hizmetin sonlandırılmasını gerektiren bir hata oluştu. En sık karşılaşılan nedenleri şunlardır: 1) beklenmeyen bir yetersiz bellek hatası. VEYA 2) bağlanmak için bir yüklenememesi veya BizTalk veritabanlarından birine bağlantı kaybı. Otomatik yeniden başlatma, 1 dakika ve hizmet olacak kapatma. Sorunlu veritabanı kullanılamaz durumda kalırsa, bu döngü yinelenir.
Hata iletisi: özel durum türü 'System.OutOfMemoryException' oluşturuldu.
Kaynak hata: mscorlib
BizTalk ana bilgisayar adı: BizTalkServerApplication
Windows hizmeti adı: BTSSvc $ BizTalkServerApplication
Dikkat edilmesi gereken önemli noktalar
Fiziksel RAM'ı ve bellek kullanımıIşlem yaklaşık yarım fiziksel RAM'ı kullanmak için beklenen davranış olabileceğinden, bellek kullanımının bir kılavuz kullanın. Örneğin, BizTalk Server 4 gigabayt (GB) RAM varsa ve BizTalk sunucu işlemi yaklaşık 500 megabayt (MB) RAM kullanır, olmayabilir sızıntısı. BizTalk sunucu işlemi yaklaşık 1 GB RAM kullanır, yüksek bellek durum ya da bir bellek sızıntısı olabilir. Bellek tüketimi, bir uzun süren bir saklı yordam veya orkestrasyon kaynaklanabilir. BizTalk ana bilgisayar, bir bellek sızıntısı veya yüksek bellek durumu oluşup olup olmadığını belirlemek için genellikle kullandığı bellek miktarını bildiğinizden emin olun.
Büyük iletilerBizTalk Server büyük iletileri işlediğinde, sistem için bir bellek sızıntısı gibi görünebilir. Ancak, iletilerin büyük miktarda bellek kullanıyor olabilirsiniz. Büyük iletileri hakkında daha fazla bilgi için aşağıdaki Microsoft Developer Network (MSDN) Web sitesini ziyaret edin:
Bellek sızıntısı üretmek için ne kadar sürerBellek sızıntıları hemen oluşabilir veya zaman içinde'birikebilecek. Her iki senaryo ortaktır.
32-Bit bilgisayarlarda 3 GB anahtarının kullanımıGenellikle, bir işlem 2 GB sanal adres alanı erişebilirler. 3 GB anahtarının adreslenebilir bellek gerektiren sistemleri için bir seçenektir. Bu seçeneği, bellek kullanımı, iletileri işlemek için artırabilir. Ancak, yalnızca 1 GB çekirdek modu işlemleri için adreslenebilir bellek 3 GB anahtarının sağlar. Ayrıca, bu anahtar havuz belleği çalışan riski artabilir.
3 GB hakkında daha fazla bilgi için geçiş yapmak için aşağıdaki Microsoft Developer Network (MSDN) Web sitesini ziyaret edin: / 3 GB anahtarı, 32-bit Windows sürümünde etkinleştirildiğinde, işlem işlemi büyük adres ise 3 GB sanal adres alanı erişebilirler bilinmektedir. Büyük adres işlemidir yürütülebilir görüntü üstbilgisinde ayarlanan ımage_fıle_large_address_aware bayrağı varsa uyumlu. BizTalk işlemi büyük adres olduğundan bilgisi, BizTalk 3 GB anahtarından yararlı.
32-Bit BizTalk ana kopyası, <a1>Windows</a1> (AMD64) 64-bit sürümünü çalıştırıyorsa, 4 GB bellekten BizTalk işleminin yararlarını çünkü BizTalk büyük adres alanı adres bilgisi. Bu nedenle, yüksek bellek uygulamalarınızı 64-bit bir sunucuya taşıma, en iyi çözüm olabilir.
<a1>Windows</a1> (AMD64) 64-bit bir sürümünün 64-bit bir BizTalk işlem 8 sahip TB adreslenebilir bellek.
Sanal bayt sayısını ve işlem tarafından kullanılan özel bir bayt düşünmelisiniz. 2 GB sanal bayt değeri ulaşmadan önce (Bu bir .NET Framework uygulaması) BIR BizTalk ana kopyası yetersiz bellek hatası alabilirsiniz. Bu olsa bile adreslenebilir en fazla bellek bulunan bir 32-bit bir sürümünü bir işlem tarafından oluşabilir (olmadan / 3 GB geçiş) 2 GB'dir. Neden bu durum oluşabilir açıklama için aşağıdaki Microsoft Developer Network (MSDN) Web sitelerini ziyaret edin: / 3 GB anahtarı, 1800 MB 800 MB'den BizTalk işleminin özel bir en yüksek bayt de artırır. .NET Framework ile Uygulama performansı hakkında daha fazla bilgi için / 3 GB anahtarının etkinleştirdiği için aşağıdaki Microsoft Developer Network (MSDN) Web sitesini ziyaret edin:
|İşlem||Windows||Adreslenebilir bellek (sahip adresi Aware büyük bir işlem)||Sanal bayt için pratik sınırı||Özel bayt için pratik sınırı|
|32-bit||32-bit||2 gb||1400 mb||800 mb|
|32-bit||32-bit 3 GB||3 gb||2400 mb||1800 mb|
|32-bit||64-bit||4 gb||3400 mb||2800 mb|
|64-bit||64-bit||8 tb||Uygulanamaz||Uygulanamaz|
|Ürün||pae||3 gb|
|BizTalk Server 2004||EVET||Hayır|
|BizTalk Server 2006||EVET||EVET|
|BizTalk Server 2006 R2||EVET||EVET|
|BizTalk Server 2009||EVET||EVET|
Bir ınternet ınformation Services (IIS) işlem içinde BizTalk bileşenleri de ne zaman yararlanabilir / 3 GB anahtarı etkinleştirilir.
/ 3 GB anahtarı, Windows SharePoint Services 2.0 veya sonraki sürümleri veya SharePoint Portal Server 2003 SP2 veya sonraki sürümlerini çalıştıran bilgisayarlarda desteklenmez. Daha fazla bilgi için, Microsoft Bilgi Bankası'ndaki makaleyi görüntülemek üzere aşağıdaki makale numarasını tıklatın:
Özel bileşenler kullanımıGörev hatları veya hizmeti bileşenlerini, örneğin, özel bileşenler'i kullanıyorsanız, bu bileşenlerden ne bilmelidir. Ayrıca, bellek kullanımı bu bileşenlerin olası etkisini de bilmeniz gerekir. Bir bileşen, bir belge dönüştürürken, ortak bir bellek sorunu oluşur. Dönüşüm işlemi belleği yoğun bir işlemdir. BizTalk Server belge dönüştürülür, ileti akışı BizTalk işlemdeki Microsoft .NET Framework çok sınıf geçirir.
Yoğun bir dize işleme olduğunda başka bir genel sorun oluşur. Yoğun dize düzenleme, büyük miktarda bellek tüketebilir. Performansını artırmanın yolları hakkında daha fazla bilgi için aşağıdaki Microsoft Developer Network (MSDN) Web sitesini ziyaret edin:
.NET Framework sürümüMicrosoft .NET Framework 2.0 ve .NET Framework 1.1 farklı bellek davranış var. Bu nedenle, bunların arasındaki farklı sonuçlar görebilirsiniz. .NET Framework 1. 1'i kullanıyorsanız, .NET Framework 1.1 Service Pack 1 (SP1) olduğunu onaylayın yüklü. SP1 çok bellek sorunları da giderir. Daha fazla bilgi için, Microsoft Bilgi Bankası'ndaki makaleyi görüntülemek üzere aşağıdaki makale numarasını tıklatın:
İşlemci SayısıOrtak dil çalışma zamanı (CLR) aşağıdaki çöp toplayıcıları (GC'ler) vardır:
- Iş istasyonu (mscorwks.dll)
- <a1>Sunucu</a1> (Mscorsvr.dll)
BizTalk Server çalıştıran bilgisayar tek işlemcili bir sistemse, .NET Framework Workstation yürütme alt yapısı sürümünü kullanır. Bu, varsayılan davranıştır. Iş istasyonu çöp toplayıcısını tahsisat algoritması, en yüksek üretim veya ölçeklendirme için tasarlanmamıştır. Bu çöp toplayıcısını eşzamanlı çöp toplayıcısını yöntemlerini kullanır. Bu yöntemler, karmaşık kullanıcı arabirimleri olan uygulamalar için tasarlanmıştır. Bu tür uygulamalar daha ısrarlı atık toplama işlemi gerektirebilir.
Önemli Bu bölüm, yöntem veya görev kayıt defterini nasıl söyleyin adımları içerir. Ancak kayıt defterini hatalı olarak değiştirirseniz önemli sorunlar oluşabilir. Bu nedenle, bu adımları dikkatlice uyguladığınızdan emin olun. Ek koruma için, kayıt defterini değiştirmeden önce yedeklemeyi unutmayın. Bir sorun oluşursa kayıt defterini daha sonra geri yükleyebilirsiniz. Kayıt defterini yedekleme ve geri yükleme hakkında daha fazla bilgi için, Microsoft Bilgi Bankası'ndaki makaleyi görüntülemek üzere aşağıdaki makale numarasını tıklatın:
Ad değer: özellik
Değeri türü: dize
Veri değeri: hft
http://msdn.microsoft.com/msdnmag/issues/1200/GCI2/default.aspx
Sık karşılaşılan nedenleri ve çözümleri
Işlem bellek kullanımı ve fiziksel bellek kullanımı eşiklerini azaltmaBizTalk Server 2006 ve sonraki sürümlerinde işlem bellek kullanımı ve fiziksel bellek kullanımı eşiklerini azaltma değiştirilebilir.
- Varsayılan olarak, eşik azaltma işlem bellek kullanımı, 25 olarak ayarlanır. Bu değer aşıldığında BizTalk işleminin bellek kullanımı, birden fazla 300 MB ise, azaltma koşulu oluşabilir. 32-Bit bir sunucuda, işlem bellek kullanım değer 50'ye artırabilirsiniz. 64-Bit bir sunucuda, bu değer 100 artırabilirsiniz. Azaltma gerçekleştirilmeden önce bu BizTalk işlem tarafından daha fazla bellek tüketimini sağlar.
- Eşik azaltma fiziksel bellek kullanımı, 0 varsayılan değeri vardır. Bu eşik toplam sistem belleği ölçer. Bu nedenle, 0'dan başka bir değere yapılandırılırsa, yüksek bellek olmayan BizTalk bir işlem tarafından kullanılıyorsa bir azaltma koşulu oluşabilir.
Dehydration eşiklerini azaltmaVarsayılan bellek dehydration eşiklerini orchestrations bir 64-bit ana bilgisayarında çalıştırırken aşırı dehydration neden olabilir. Bu sorun hakkında daha fazla bilgi için aşağıdaki Microsoft Developer Network (MSDN) Web sitesinde Dehydration varsayılan özellikler</a0> konusuna bakın: Not 64-bit ana bilgisayarlar, BizTalk Server 2006 ve sonraki sürümlerinde desteklenir.
32-Bit ana örneğinde eşdeğer donanımda aynı orchestrations eşiklerini azaltma varsayılan bellek dehydration Ek Yardım düğmesini kullanarak çalıştırdığınızda, gözlemlenen dehydration nominal olur.
64 Bit mimarisinin genişletilmiş bellek adres alanının sağladığından (16 TB 4 GB yerine), 64-bit ana bilgisayar örnekleri, 32-bit ana bilgisayar örnekleri önemli ölçüde daha fazla bellek ayrılır. Bu, zorlanması varsayılan bellek azaltma eşiklerini neden olabilir.
Bu davranışa geçici bir çözüm bulmak için <a0></a0>, BTSNTSvc64.exe.config dosyasındaki VirtualMemoryThrottlingCriteria ve PrivateMemoryThrottlingCriteria değerleri değiştirin. Büyük bir orkestrasyon örneği tarafından ayrılan bellek miktarını belirlemek için Process\Virtual baytlar ve Process\Private bayt performans izleyicisi sayaçları'nı kullanın.
- Aşağıdakilere göre her iki özelliği de OptimalUsage değerini ayarlayın: VirtualMemoryThrottlingCriteria: \Process\Virtual bayt değeri + % 10
PrivateMemoryThrottlingCriteria: \Process\Private bayt değeri + % 10
- Her iki özellik OptimalUsage değeri + % 30 MaximalUsage ayarlayın.
Performans izleyicisi'ni Bayt sayacının değeri \Process\Private 435689400 bayt (415 MB) ise, PrivateMemoryThrottlingCriteria 457 MB (435689400 * 1.10 = 479258340 bayt) için OptimalUsage değerini ayarlayın. MaximalUsage değeri PrivateMemoryThrottlingCriteria 594 MB (479258340 * 1.30 = 623035842) ayarlayın.
Bu örnekte, aşağıdaki değer azaltma azaltmak için BTSNTSvc64.exe.config dosyasında belirtilen.
|Performans izleyicisi sayacı||Ayrılmış bellek||OptimalUsage||MaximalUsage|
|\Process\Virtual bayt||5784787695 bayt (5517 MB)||6069||7889|
|\Process\Private bayt||435689400 bayt (415 MB)||457||594|
<xlangs> <Configuration> <Dehydration> <VirtualMemoryThrottlingCriteria OptimalUsage="6069" MaximalUsage="7889" IsActive="true" /> <PrivateMemoryThrottlingCriteria OptimalUsage="457" MaximalUsage="594" IsActive="true" /> </Dehydration> </Configuration></xlangs>Hangi ana orkestrasyon çalışıyor belirlemek için <a0></a0>, gelen \BizTalk:Messaging\ID işlem KIMLIK işlemi ve işlem performans izleyicisi sayaçları \Process\ID taşıyla eşleştirebilirsiniz. Ardından karşılık gelen \Process\Virtual bayt ve \Process\Private bayt performans izleyicisi sayaçları için görüntülenen ortalama değerini denetleyin.
Not BizTalkMsgBoxDb veritabanı SQL Server 2008 üzerinde çalışırken, aşırı dehydration önemli bir performans azalmasına neden olabilir.
BizTalk Server 2004BizTalk Server 2004 kullanıyorsanız, bazı bellekle ilgili sorunlar yaşayabilirsiniz. Bu sorunları gidermek için <a0></a0>, BizTalk Server 2004 Service Pack 2 (SP2) ve en son işletim sistemi hizmet paketi uygulayın.
HeapDeCommitFreeBlockThresholdVarsayılan olarak, theHeapDeCommitFreeBlockThreshold kayıt defteri anahtarının değeri 0'dır. Bir değer yığın yöneticisinin, kullanılabilir her 4 kilobaytlık (KB) sayfa decommits 0 anlamına gelir. Kaydettikleri işlem sanal bellek parçalanmasına neden olabilir. Yığın yöneticisinin <a1>HeapDeCommitFreeBlockThreshold</a1> ayarı boyutu üzerinde sistem yaptığını iş türüne bağlıdır. Bir 0x00040000 önerilen bir başlangıç değeri boyutudur.
<a0>
- Bu değişiklik, yalnızca bellek parçalanması sorunlarını için de geçerlidir.
- Bu sistem genelinde değişikliğidir. Bu nedenle, çoğu işlemleri, başlangıçta daha fazla bellek kullanır.
- BizTalk Server, birincil iş ile ilgili olarak sahip olan sistemler için bu değişikliği yalnızca göz önünde bulundurun.
Değer adı: HeapDeCommitFreeBlockThreshold
Değeri türü: REG_DWORD
Veri değeri: 0x00040000 (Bu, önerilen başlangıç değerine bağlıdır.)
Varsayılan değer: yok
Operasyonlar dönüştürmeBizTalk Server XML dönüştürme işlemleri oldukça büyük iletiler gönderme bağlantı noktası alma bir bağlantı noktası yapar veya XLANG içinde XSL Dönüşümleri Al bellekteki tüm ileti yüklenemedi.
Bu sorunu gidermek için aşağıdaki yöntemlerden birini kullanın:
- BizTalk Server'ı aynı anda işler iletilerin sayısını azaltın.
- Dönüştürülmüş XML ileti boyutunu azaltın.
Varsayılan BizTalk functoids çoğu, satır içi komut dosyası olarak uygulanır. Bu öğeler, bellekte toplanacak System.Byte [] nesneleri neden olabilir. Bellek tüketimini en aza indirmek için <a0></a0>, küçük bir derleme içinde bu functoids kullanan herhangi bir eşleme put öneririz. Sonra bu derleme başvurusu. Aşağıdaki grafik, satır içi kod hangi functoids kullanmak belirlemek için kullanın ve hangi functoids satır içi komut dosyasını kullanın.
Ikinci sütuna, “ bu functoid satır içi komut dosyası olarak uygulanır ve bellekte toplanacak System.Byte [] nesneleri neden olacak Evet ”. “ Hiçbir ” bu functoid satır içi komut dosyası olarak uygulanır ve dosyayı bellekte toplanacak System.Byte [] nesneleri neden olmaz, anlamına gelir.
|Functoids||Satır içi kod?|
|Tüm dize Functoids||EVET|
|Tüm matematiksel Functoids||EVET|
|IsNil dışındaki tüm mantıksal Functoids||EVET|
|Mantıksal IsNil Functoid||Hayır|
|Tüm tarih/saat Functoids||EVET|
|Tüm dönüştürme Functoids||EVET|
|Tüm bilimsel Functoids||EVET|
|Tüm toplu Functoids||EVET|
|Tüm veritabanı Functoids||Hayır|
|Gelişmiş Functoids||Satır içi kod?|
|Döngü Functoid||Hayır|
|Değer eşleme Functoid düzleştirme||Hayır|
|Functoid onaylama işlemi||Hayır|
|Tablo Extractor Functoid||Hayır|
|Döngü Functoid tablo||Hayır|
|Komut dosyası Functoid olan satır içi C#||EVET|
|Satır içi JScript.NET ile Functoid komut dosyası||EVET|
|Satır içi Visual Basic .NET ile Functoid komut dosyası||EVET|
|Satır içi XSLT ile Functoid komut dosyası||Hayır|
|Satır içi XSLT arama şablonla komut dosyası Functoid||Hayır|
|Komut dosyası Functoid dış birleştirme çağrılıyor.||Hayır|
|El almaz değeri Functoid||Hayır|
|Değer eşleme Functoid||Hayır|
|Yığın Kopyala Functoid||Hayır|
|Yineleme Functoid||Hayır|
|Dizin Functoid||Hayır|
|Kayıt sayısı Functoid||Hayır|
Büyük bir öznitelik değerleri ve büyük öğe değerleriBizTalk Server üzerinde bir XML belgesi alma potansiyel veya gönderme potansiyel yürütüldüğünde, belge aşağıdaki varlıklar birini veya birden fazlasını içeriyorsa, yükü bellekte işlenir:
- Büyük bir öznitelik değerleri
- Büyük öğe değerleri
- Büyük bir öznitelik veya öğe etiketleri
Potansiyel satış bileşenleriKullandığınız bir potansiyel satış bileşeni tüm akışı belleğe yükler. BizTalk Server ile dönüşümler dışında içerdiği tüm bileşenleri, akış destekler. Bu bileşenler, akış sırasında fazla bellek kullanmaz. Ancak, potansiyel satış bileşenleri akış desteklemeyebilir.
Yoğun yük altında akışAna bellek çalıştırmak, yoğun yük altında çalışması gönderin. BizTalk Server, görev hatları göndermek ve bağdaştırıcıları desteği akış gönderin. Akış, her bileşen akış, küçük bir bölümü belleğe yükler. Bu davranış, her ileti, büyük veya küçük bir iletinin içeriği ile birlikte diğer veri yapıları içerdiğinden yoğun yük altında BizTalk Server'ın davranışını etkiler.
BizTalk Server'ın davranış nedeniyle, altyapı önceden yapılandırılmış çeşitli iletileri yükler etkilenecektir. Altyapı yüklenen iletilerin sayısını LowWaterMark alan ve tablo Adm_serviceClass HighWaterMark alanında görüntülenen değerleri temel alır. BizTalk Yönetim veritabanında Adm_serviceClass tablodur. Bu değerler, BizTalk Server işler veya aynı anda gönderir iletilerinin sayısını denetler.
HighWaterMark değeri aynı anda altyapı işlemleri iletilerinin toplam sayısıdır. CPU başına 200 iletiler varsayılan değerdir. Bu nedenle, bir işlemci 8 sunucusunda 1,600 iletileri (200 * 8) aynı anda işlemek gönderme ana deneyecek. Iletiler, her iletinin 50 KB olduğunu varsayalım, 80 MB (1, 600 * 50 = 80 000 KB) eşit.
Bu sorunu gidermek için <a0></a0>, HighWaterMark değer ve veritabanındaki LowWaterMark değerini değiştirebilirsiniz. Kullandığınız değerleri iletilerin boyutuna bağlıdır.
Bir yetersiz bellek durumu sık karşılaşılan nedenleri hakkında daha fazla bilgi için aşağıdaki Microsoft Web sitesinde "Bellek büyümesi, BizTalk Messaging" bölümüne bakın:
Sorun basitleştirmek deneyin.Özel bileşenler kaldırılıyor veya harita basitleştirme nedenini belirlemek, belirlediğiniz bir bellek sızıntısı, deneyin. Ayrıca, basit bir orkestrasyon veya basit bir çözüm kullanarak sorunu yeniden oluşturmaya çalışın. Genellikle, ayrı oluşturmalısınız almak için ana bilgisayar bağdaştırıcıları alırsınız. Send bağdaştırıcılar için ayrı bir gönderme ana bilgisayarlar da oluşturmanız gerekir. Bu yöntemi kullandığınızda, her bağdaştırıcının ayrı bir işlemde çalışır. Bu nedenle, BizTalk Server sürecinizin bir yetersiz bellek durumu oluşursa, hangi bileşenlerin söz konusu bilirsiniz.
Sorun giderme adımlarıBir yetersiz bellek durumu ile ilgili sorunları giderme hakkında bilgi için Debug kullanmak zamanla bellek ayırmalarını izlemek için tanılama aracı. Hata ayıklama tanılar aracı oluşturabilir ve bir bellek sızıntısı dökümü dosyası (.dmp) çözümleyebilirsiniz. Bellek sızıntıları ile ilgili sorunları giderme Leaktrack.dll bellek büyüme zaman yakalamak için yüksek bellek koşulunu reproduces önce iliştirilecek amacı olur. Tanılama hata ayıklama aracıyla Leaktrack.dll bulunur.
- Debug Tanılama Aracı'nı yükleyin.
Aşağıdaki dosya Microsoft Yükleme Merkezi'nden yüklenebilir:
Download the Debug Diagnostic Tool package now.
Microsoft Destek dosyalarını karşıdan yükleme hakkında daha fazla bilgi için, Microsoft Bilgi Bankası'ndaki makaleyi görüntülemek üzere aşağıdaki makale numarasını tıklatın:119591Microsoft Destek Dosyaları Çevrimiçi Hizmetler'den Nasıl AlınırMicrosoft bu dosyada virüs taraması yapmıştır. Microsoft, dosyanın kullanıma sunulduğu tarihteki en güncel virüs tarama yazılımını kullanmıştır. Dosya, üzerinde herhangi bir yetkisiz değişiklik yapılmasını engellemeye yardım eden geliştirilmiş güvenliğe sahip sunucularda depolanır.
- Sistem performansı hakkında veri toplamak üzere Performans izleyicisi'ni kullanın. Bu veriler, BizTalk Server ortamınızı verimliliğini hakkında önemli göstergeleri sağlayabilir. Amaç, işleminin performansı zamanla yakalanacak sağlamaktır. Bu nedenle, bellek sızıntısı oluşuyor önce performans izleyicisi günlüğünü etkinleştirir.
Performans izleyicisi günlüğü nasıl kullanılır?
Verileri günlüğe kaydetmek için seçin...Oturum verileri seçmek için <a0></a0>, işletim sisteminiz için uygun yöntemi kullanın:
- Windows Server 2008
- Yönetimsel Araçlar'daki Güvenilirlik ve performans izleyicisi'ni açın.
- Performans izleyicisi ' ni sağ tıklatın, Yeni'yi tıklatın ve sonra da <a2>Veri toplayıcı grubu</a2>'ı tıklatın.
- Ad kutusuna açıklayıcı bir ad yazın ve sonra ileri ' yi tıklatın.
- Kök dizine dikkat edin ve sonra ileri ' yi tıklatın.
- Bu veri toplayıcı kümesi Şimdi Başlat ' ı tıklatın ve sonra da <a2>son</a2>'u tıklatın.
- Veri toplayıcı kümeleri ' ni genişletin, Kullanıcı tanımlı ' yı genişletin ve sonra da dosyanızı seçin.
- Sistem izleyicisi günlüğü sağ tıklatın ve sonra da Properties ' i tıklatın.
- Aşağıdaki nesneler Performans sayaçları sekmesinde seçim Ekle'yi ve her nesneyi seçtikten sonra Ekle ' yi tıklatın:
- .NET CLR özel durumları
- .NET CLR belleği
- BizTalk: ileti
- BizTalk:TDDS
- Bellek
- Işlem
- Işlemci
- XLANG/s Orchestrations
- SQLServer:Databases
- SQLServer:General istatistikleri
- SQLServer:Memory Yöneticisi
- Tamam ' ı tıklatın.
- Örnek aralık değeri kutusunu 5 saniye olarak değiştirin.
Not Örnek aralık değeri ve izlemek başlangıç saati öznel var. Bellek sızıntısı yeniden, bu değerler bağlıdır. Günlük dosyası büyük olduğundan, sunucu yayma olmadan gereken bilgileri edinmek için bir aralık belirtin.
- Tamam ' ı tıklatın.
- Windows XP veya Windows Server 2003 için
- Performans Günlükleri ve Uyarıları'nı genişletin.
- Sayaç günlükleri ' ı sağ tıklatın ve Yeni günlük ayarları</a1>'ı tıklatın. Yeni günlük ayarları iletişim kutusu görüntülenir.
- Ad kutusuna açıklayıcı bir ad yazın ve Tamam ' ı tıklatın.
- Günlük dosyasının konumunu not alın. (, Aynı zamanda Günlük dosyaları sekmesini tıklatın ve günlük dosyasının konumunu değiştirmek için Yapılandır ' ı tıklatın.)
- Sayaç Ekle ' yi tıklatın.
- Tüm sayaçlar ve tüm örnekleri bu seçeneği seçin.
- Performans nesnesi</a0> listesinde aşağıdaki nesneleri seçin. Her nesneyi seçtikten sonra Ekle ' yi tıklatın.
- .NET CLR özel durumları
- .NET CLR belleği
- BizTalk: ileti
- BizTalk:TDDS
- Bellek
- Işlem
- Işlemci
- XLANG/s Orchestrations
- SQLServer:Databases
- SQLServer:General istatistikleri
- SQLServer:Memory Yöneticisi
- Kapat ' ı tıklatın.
- Değer değiştirme veri örnekleme aralığı 5 saniye.
Not Veri örnekleme aralığı değeri ve izlemek başlangıç saati öznel var. Bellek sızıntısı yeniden, bu değerler bağlıdır. Günlük dosyası büyük olduğundan, sunucu yayma olmadan gereken bilgileri edinmek için bir aralık belirtin.
- Tamam ' ı tıklatın.
Döküm dosyasını edinin.Döküm dosyasını edinmek için aşağıdaki yöntemlerden birini kullanın:
- Yöntem 1: otomatik
Belleği ve tanıtıcı sızıntısı bir kural ile DebugDiag oluşturma bir bellek dökümü yakalamak için önerilen yaklaşımdır. Belleği ve tanıtıcı sızıntısı kural, Leaktrack.dll otomatik olarak ekler. Bu, bellek ayırmalarını izlemek için kullanılır. Belleği ve tanıtıcı sızıntısı kural oluşturmak için aşağıdaki adımları izleyin:
- Debug'ı başlatın Tanılama Aracı 1.1.
- Belleği ve tanıtıcı sızıntısı seçin ve ileri ' yi tıklatın.
- Btsntsvc.exe işlemini seçin ve ileri ' yi tıklatın.
- Sızıntısı kural yapılandır sayfasında aşağıdaki adımları izleyin:
- Bellek izleme hemen kural etkinleştirdiğiniz zaman onay kutusunu seçmek için tıklatın. Aksi halde, LeakTrack.dll BTSNTSvc.exe işleminde Püskürtülen için önce warm-up bir saat belirtebilirsiniz.
- Yapılandır ' ı tıklatın ve sonra aşağıdakileri yapın:
- Doğrulayın otomatik oluşturma kilitlenme kural seçilir. BTSNTSvc.exe işlemi sonlandırır, bu seçeneği belirleyerek, bir bellek dökümü otomatik olarak oluşturulur.
- Userdump, tıklattığınızda <a0>sanal bayt sayısını ulaşma oluştur onay kutusunu tıklatıp seçin ve varsayılan değer 1024 tutun.
- Ve her ek onay kutusunu tıklatıp seçin ve varsayılan değer 200 tutun.
- Ileri ' yi tıklatın.
- Kaydet ve Kapat'ı tıklatın..
- Dökümü konumu seçin ve kural adı sayfasında ileri ' yi tıklatın.
Not Bu sayfada <a0>Userdump konumu</a0> kutusunda döküm dosyasının yolunu da değiştirebilirsiniz.
- Kural şimdi etkinleştirmek için son ' u tıklatın.
- Yöntem 2: manual
El ile de Leaktrack.dll iliştirin ve el ile bellek dökümü dosyası elde edebilirsiniz. Bellek dökümü oluşturulduğunda bu denetime sağlar. Bunu yapmak için şu adımları izleyin:
- Debug'ı başlatmak 1.1 Tanılama aracı.
- Işlemler sekmesinde Ek Yardım düğmesini tıklatın.
- Btsntsvc.exe işlemi sağ tıklatın ve İzleyicisi sızıntısı'for [NULL]'ı tıklatın.
- Tanılama Aracı hata ayıklama iletişim kutusu, Evet ' i tıklatın ve sonra Tamam ' ı tıklatın.
- Başlangıç 1.1 Tanılama Aracı hata ayıklama.
- Kilitlenme seçin ve ileri ' yi tıklatın.
- Belirli BIR işlem seçin ve ileri ' yi tıklatın.
- Aynı işlem Btsntsvc.exe seçin ve ileri ' yi tıklatın.
- Gelişmiş Yapılandırma (isteğe bağlı) sayfasında ileri ' yi tıklatın.
- Select dökümü konumu ve kural adı (isteğe bağlı) iletişim kutusunda ileri ' yi tıklatın.
- Şimdi kuralını etkinleştir ' i seçin ve sonra Finish'i (son) tıklatın.
Performans izleyicisi günlüğü durdurBir bellek dökümü ve performans izleyicisi'nin veri yakalamaya, bellek dökümü oluşturulduktan sonra yaklaşık iki dakika performans izleyicisi günlüğü durdur.
Döküm dosyasını analizBir bellek sızıntısı nedenini belirlemenize yardımcı olması için <a0></a0>, hata ayıklama kullanabileceğiniz Tanılama Aracı, döküm dosyasını çözümlemek için. Bunu yapmak için şu adımları izleyin:
- Gelişmiş çözümlemesi tıklatın sekmesi.
- Veri dosyaları ' nı tıklatın ve sonra .dmp dosyasını bulun.
- Bellek Basıncı çözümlemesi seçin komut dosyası ve Çözümlemesi, Başlat'ı tıklatın.
Özel DLL'ler kullanırsanız, simge yolu çözümleme için özel .pdb Dosya ekleyebilirsiniz. Bunu yapmak için şu adımları izleyin:
- Hata ayıklama Tanılama Aracı'nı açın.
- Araçlar menüsünden Seçenekler'i ve ayarlar'ı tıklatın.
- The İçin simge arama yolu Debugging içinde simge yolu yazın.
Uyarı: Bu makalenin çevirisi otomatik olarak yapılmıştır
Makale No: 918643 - Son İnceleme: 05/27/2009 15:31:40 - Düzeltme: 9.0
- kbmt kbhowto KB918643 KbMttr