Profilers .NET ที่ดีคืออะไร


374

คุณใช้โปรไฟล์อะไรเมื่อทำงานกับโปรแกรม. net และแนะนำโดยเฉพาะอย่างยิ่ง

คำตอบ:


285

ฉันใช้JetBrains dotTraceและRedgate ANTSอย่างกว้างขวาง พวกเขาค่อนข้างคล้ายกันในคุณสมบัติและราคา พวกเขาทั้งสองนำเสนอการทำโปรไฟล์ประสิทธิภาพที่มีประโยชน์และการทำโปรไฟล์หน่วยความจำพื้นฐานค่อนข้าง

dotTrace ทำงานร่วมกับ Resharper ซึ่งสะดวกมากเพราะคุณสามารถบันทึกประสิทธิภาพของการทดสอบหน่วยได้ด้วยคลิกเดียวจาก IDE อย่างไรก็ตาม dotTrace มักจะให้ผลลัพธ์ที่น่าเกรงขาม (เช่นบอกว่าวิธีการใช้เวลาหลายปีกว่าจะทำงานได้)

ฉันชอบวิธีที่ ANTS นำเสนอผลลัพธ์การทำโปรไฟล์ มันแสดงให้คุณเห็นซอร์สโค้ดและด้านซ้ายของแต่ละบรรทัดจะบอกคุณว่าต้องใช้เวลานานแค่ไหนในการรัน dotTrace มีมุมมองแบบต้นไม้

ผู้สร้างโปรไฟล์ EQATECนั้นค่อนข้างเรียบง่ายและต้องการให้คุณรวบรวมแอสเซมบลีรุ่นพิเศษของคุณซึ่งสามารถเรียกใช้ในตัวสร้างโปรไฟล์ EQATEC ได้ อย่างไรก็ตามมันฟรี

โดยรวมแล้วฉันชอบ ANTS สำหรับการทำโปรไฟล์ประสิทธิภาพแม้ว่าถ้าคุณใช้ Resharper การรวมกันของ dotTrace นั้นเป็นคุณสมบัตินักฆ่าและหมายความว่ามันจะใช้ ANTS ในการใช้งาน

Profiles Microsoft CLR ฟรี ( .Net Framework 2.0 / .Net Framework 4.0 ) เป็นสิ่งที่คุณต้องการสำหรับการทำโปรไฟล์หน่วยความจำ. NET

ปรับปรุง 2011:

Profiler หน่วยความจำ Scitechมีค่อนข้าง UI พื้นฐาน แต่จำนวนของข้อมูลที่เป็นประโยชน์รวมทั้งข้อมูลเกี่ยวกับหน่วยความจำที่ไม่มีการจัดการที่ dotTrace และมดขาด - คุณอาจพบว่ามีประโยชน์ถ้าคุณกำลังทำ interop COM แต่ฉันยังไม่พบ Profiler ใด ๆ ที่ทำให้ COM ปัญหาหน่วยความจำง่ายในการวินิจฉัย - windbg.exeคุณมักจะมีการแบ่งออก

ตัวสร้าง ANTS เกิดขึ้นอย่างก้าวกระโดดในไม่กี่ปีที่ผ่านมาและตัวสร้างหน่วยความจำของมันมีคุณสมบัติที่มีประโยชน์จริง ๆ ซึ่งตอนนี้ผลักมันไปข้างหน้าของ dotTrace เป็นแพ็คเกจในการประมาณของฉัน ฉันโชคดีพอที่มีใบอนุญาตสำหรับทั้งคู่ แต่ถ้าคุณจะซื้อ. profiler สุทธิสำหรับทั้งประสิทธิภาพและหน่วยความจำให้ทำ ANTS


5
ตัวสร้างโปรไฟล์ใน Visual Studio นั้นใช้งานง่ายมาก Visual Studio 2010 นั้นอยู่ในรุ่นเบต้าและด้วยเช่นกัน มีการปรับปรุงหลายอย่างในปี 2010 สำหรับการดูการโต้แย้งและการทำงานพร้อมกัน ลอง ...
ริก

15
แต่น่าเสียดายที่ @Rick Profiler ของ Visual Studio ไม่อยู่ใน Professional Edition ...
เป็ด

ฉันไม่เห็นด้วยอย่างยิ่งเกี่ยวกับตัวสร้างโปรไฟล์ CLR ที่เป็นสิ่งที่คุณต้องการสำหรับการทำโปรไฟล์หน่วยความจำ. NET ถึงแม้ว่ามันอาจเป็นจริงถ้าคุณไม่มีค่าในเวลาของคุณ ดูคำตอบของฉันด้านล่างเพื่อดูสรุปย่อของหน่วยความจำที่ดีที่สุดสองสามตัว - พวกเขาจะช่วยคุณค้นหาการรั่วไหลของหน่วยความจำและปัญหาที่อาจเกิดขึ้นได้เร็วขึ้นมาก
Ben Robbins

1
รุ่นปัจจุบันของตัวสร้างโปรไฟล์ EQUATEC นั้นไม่ได้ฟรีอีกต่อไป
David Schmitt

1
ดูเหมือนว่า EQATEC Profiler ได้กลายเป็นฟรีสำหรับ. NET (full framework) อีกครั้ง
soren.enemaerke

88

คนอื่น ๆ ได้ครอบคลุมถึงการทำโปรไฟล์ประสิทธิภาพ แต่เกี่ยวกับการทำโปรไฟล์หน่วยความจำ ฉันกำลังประเมินทั้ง Scitech .NET Memory Profiler 3.1 และ ANTS Memory Profiler 5.1 (รุ่นปัจจุบัน ณ เดือนกันยายน 2009) ฉันลอง JetBrains เมื่อหนึ่งหรือสองปีก่อนและมันก็ไม่ดีเท่า ANTS (สำหรับการทำโปรไฟล์ความจำ) ดังนั้นฉันจึงไม่ได้ใส่ใจในครั้งนี้ จากการอ่านเว็บไซต์ดูเหมือนว่ามันจะไม่มีคุณสมบัติการทำโปรไฟล์หน่วยความจำเหมือนกับอีกสองอย่าง

ทั้ง ANTS และผู้สร้างโปรไฟล์หน่วยความจำ Scitech มีคุณสมบัติที่อื่น ๆ ไม่ได้ดังนั้นสิ่งที่ดีที่สุดจะขึ้นอยู่กับความต้องการของคุณ โดยทั่วไปแล้ว Scitech one จะให้ข้อมูลที่มีรายละเอียดมากขึ้นในขณะที่ ANTS one นั้นเหลือเชื่อมากในการระบุวัตถุที่รั่ว โดยรวมแล้วฉันชอบ ANTS มากกว่าเพราะมันรวดเร็วมากในการระบุรอยรั่วที่เป็นไปได้

นี่คือข้อดีข้อเสียของแต่ละคนจากประสบการณ์ของฉัน:

คุณสมบัติทั่วไปของ ANTS และ Scitech .NET Memory Profiler

  • คุณสมบัติการวิเคราะห์ตามเวลาจริง
  • วิดีโอวิธีการใช้ที่ยอดเยี่ยมบนเว็บไซต์ของพวกเขา
  • ง่ายต่อการใช้
  • นักแสดงที่เหมาะสม (เห็นได้ชัดช้ากว่าไม่มีผู้ติดตั้ง profiler แต่ไม่มากจนคุณผิดหวัง
  • แสดงตัวอย่างของวัตถุที่รั่ว
  • โดยพื้นฐานแล้วพวกเขาทั้งสองทำงานได้ค่อนข้างดี

มด

  • ตัวกรองแบบคลิกเดียวเพื่อค้นหารอยรั่วทั่วไปรวมถึง: วัตถุที่ยังมีชีวิตอยู่โดยตัวจัดการเหตุการณ์วัตถุที่ถูกกำจัด แต่ยังมีชีวิตอยู่และวัตถุที่ถูกเก็บรักษาไว้โดยการอ้างอิงจากวัตถุที่ถูกกำจัดเท่านั้น นี่อาจเป็นคุณสมบัตินักฆ่าของ ANTS - การหารอยรั่วนั้นทำได้รวดเร็วอย่างไม่น่าเชื่อเพราะเหตุนี้ จากประสบการณ์ของฉันการรั่วไหลส่วนใหญ่เกิดจากตัวจัดการเหตุการณ์ที่ไม่ได้ถูก unhooked และ ANTS จะพาคุณตรงไปยังวัตถุเหล่านี้ น่ากลัว
  • กราฟการเก็บรักษาวัตถุ ในขณะที่ข้อมูลเดียวกันมีอยู่ใน Scitech มันง่ายกว่าที่จะตีความใน ANTS
  • แสดงขนาดกับเด็กนอกเหนือจากขนาดของวัตถุเอง (แต่เมื่ออินสแตนซ์ถูกเลือกอย่างน่าเสียดายไม่ใช่ในรายการคลาสทั้งหมด)
  • ผสานรวมกับ Visual Studio ได้ดีขึ้น (คลิกขวาบนกราฟเพื่อข้ามไปยังไฟล์)

Scitech .NET Memory Profiler

  • แสดงการติดตามสแต็กเมื่ออ็อบเจ็กต์ถูกจัดสรร นี่คือจริงๆมีประโยชน์สำหรับวัตถุที่ได้รับการจัดสรรในจำนวนมากสถานที่ที่แตกต่างกัน ด้วย ANTS มันเป็นเรื่องยากที่จะตรวจสอบว่าวัตถุที่รั่วไหลถูกสร้างขึ้นที่ใด
  • แสดงจำนวนของวัตถุที่ใช้แล้วทิ้งที่ไม่ได้ทิ้ง แม้ว่าจะไม่ได้บ่งบอกถึงการรั่วไหล แต่ก็ระบุโอกาสในการแก้ไขปัญหานี้และปรับปรุงประสิทธิภาพแอปพลิเคชันของคุณอันเป็นผลมาจากการรวบรวมขยะที่รวดเร็วขึ้น
  • ตัวเลือกการกรองโดยละเอียดเพิ่มเติม (สามารถกรองได้หลายคอลัมน์อย่างอิสระ)
  • แสดงข้อมูลเกี่ยวกับวัตถุทั้งหมดที่สร้างขึ้น (รวมถึงขยะที่รวบรวม) ANTS แสดงสถิติวัตถุ 'สด' เท่านั้น สิ่งนี้ทำให้ง่ายต่อการวิเคราะห์และปรับแต่งประสิทธิภาพโดยรวมของแอปพลิเคชัน (เช่นระบุว่ามีวัตถุจำนวนมากที่ถูกสร้างขึ้นโดยไม่จำเป็นซึ่งไม่จำเป็นต้องรั่วไหล)

โดยสรุปแล้วฉันคิดว่า ANTS ช่วยให้คุณค้นพบสิ่งที่รั่วไหลเร็วขึ้นในขณะที่ Scitech ให้รายละเอียดเพิ่มเติมเล็กน้อยเกี่ยวกับประสิทธิภาพหน่วยความจำแอปพลิเคชันโดยรวมของคุณและวัตถุแต่ละชิ้นเมื่อคุณรู้ว่าต้องมองอะไร หากมีการเพิ่มการติดตามสแต็กและการติดตามวัตถุที่ไม่ใช้แล้วทิ้งลงใน ANTS ฉันจะไม่เห็นความต้องการใช้สิ่งอื่น


.NET Memory Profiler เวอร์ชัน 4.0 (ตอนนี้อยู่ในหน้าตัวอย่าง) จะมีมุมมองกราฟ นี่เป็นฟีเจอร์เดียวที่ฉันชอบใน ANTS profiler ที่ Scitech one ไม่มี (ใน 3.1 / 3.5)
cplotts

45

ฉันเพิ่งค้นพบ EQATEC Profiler http://www.eqatec.com/tools/profiler มันทำงานได้กับ. NET เวอร์ชั่นส่วนใหญ่และในหลาย ๆ แพลตฟอร์ม มันใช้งานง่ายและชิ้นส่วนของมันฟรีแม้จะใช้เพื่อการค้า


ล้มเหลวในการโทรหางเกินไป :( ข้อผิดพลาดที่รายงาน
leppie

อันนี้เป็นฟรีสำหรับการใช้ที่ไม่ใช่เชิงพาณิชย์เท่านั้น
Jon Seigel

7
มันฟรีอย่างสมบูรณ์ในเดือนสิงหาคม '08 เมื่อ TrolleFar เขียนคำตอบของเขา ตอนนี้จอนพูดว่ามันฟรีสำหรับการใช้ที่ไม่ใช่เชิงพาณิชย์เท่านั้น
Richard Flamsholt

8
ปรากฎว่าพวกเขาเปลี่ยนเงื่อนไขใบอนุญาตอีกครั้ง บางส่วนของมันฟรีสำหรับใช้ในเชิงพาณิชย์อีกครั้ง
TrolleFar

ในฐานะของ FEB2011 รุ่นปกติ NET สำหรับตัวเอง / เชิงพาณิชย์ฟรี เครื่องมือนี้เป็นสิ่งที่ดีเพราะมันทำงานบนไคลเอนต์ / เซิร์ฟเวอร์รุ่นและสามารถทำซ้ำขอบเขต / โปรไฟล์-by-pass (เช่น Native-> COM-> NET-> COM-> NET- สามารถทำโปรไฟล์ได้) UI ค่อนข้างน่ากลัว แต่ :-)

31

[การเปิดเผยแบบเต็ม ]

ในขณะที่ยังไม่ได้เป็นเต็มรูปแบบเป็นบางส่วนของหน่วยความจำโปร .NET อื่น ๆ อยู่ที่นี่มีรายการใหม่ในตลาดที่เรียกว่าJustTrace มันทำโดย Telerik และเป้าหมายหลักคือการทำให้การสืบค้นกลับ / การทำโปรไฟล์ง่ายขึ้นและเร็วขึ้นสำหรับแอปทุกประเภท (เว็บ / Silverlight / เดสก์ท็อป)

หากคุณเคยพบโปรไฟล์และการเพิ่มประสิทธิภาพที่น่ากลัวหรือช้าด้วยเครื่องมืออื่น ๆJustTraceอาจคุ้มค่าที่จะดู


12
เมื่อฉันไปดาวน์โหลดและลองใช้ Telerik ต้องการให้ฉัน "ลงทะเบียน" และ "สร้างบัญชี" และปุ่มการสมัครรับจดหมายข่าวทั้งหมดนั้นจะถูกทำเครื่องหมายไว้ตามค่าเริ่มต้น ฉันยินดีที่จะลอง JustTrace แต่ไม่ใช่ถ้า Telerik ทำให้มันยาก
Ryan Lundy

1
ขอบคุณสำหรับความพยายาม Kyralessa เรารู้ว่าสามารถปรับปรุงกระบวนการได้ เรากำลังดำเนินการในตอนนี้ เราหวังว่าจะลบสิ่งกีดขวางเหล่านั้นในไม่ช้า สำหรับตอนนี้เพียงยกเลิกการเลือกกล่องและภายใน 2 นาทีคุณสามารถมีบัญชีและดาวน์โหลด JustTrace ได้ฟรี ขออภัยสำหรับปัญหาระยะสั้น -T
ทอดด์

9
โพสต์กลับและแจ้งให้ฉันทราบเมื่อฉันสามารถดาวน์โหลดได้โดยไม่ต้องสร้างบัญชีและฉันจะลองทำดู
Ryan Lundy

4
อัปเดต: วันนี้ฉันสามารถดาวน์โหลดโดยใช้ลิงก์ในคำตอบโดยไม่ต้องสร้างบัญชี
Ryan Lundy

25

อย่าลืมnProf - ดีฟรีแวร์ profiler


3
หน้าตาชนิดของที่ถูกทิ้งร้าง ... เพียงเปิดตัวอัลฟาจาก 2006 :-(
เมาริซิโอ Scheffer

2
ทำงานได้ดีสำหรับฉัน ตอนนี้เป็นโครงการ Google Code มีวางจำหน่ายในเดือนกรกฎาคม 2009
User1

19
ตอนนี้หน้า nProf ระบุว่า: NProf ไม่ได้รับการพัฒนาอย่างแข็งขันอีกต่อไป หากคุณกำลังมองหา open source .NET profiler ลองดูที่ SlimTune ( code.google.com/p/slimtune )
Richard Ev


12

ANTS Profiler ฉันไม่ได้ใช้มาก แต่ฉันไม่ได้มีข้อร้องเรียนใด ๆ เกี่ยวกับมด การสร้างภาพข้อมูลนั้นมีประโยชน์จริงๆ


11

AutomatedQA AQTimeสำหรับจับเวลาและSciTech MemProfilerสำหรับหน่วยความจำ


MemProfiler ช่วยทีมของเราเมื่อเรามีความจำรั่ว ฉันลองใช้เครื่องมืออื่น แต่ไม่มีเครื่องมืออื่นที่ให้รายละเอียดเหมือนกัน
Greg Ogle


9

ฉันทำงานกับJetBrains dotTraceสำหรับ WinForms และแอพคอนโซล (ยังไม่ได้ทดสอบบน ASP.net) และมันใช้งานได้ดี:

พวกเขาเพิ่งเพิ่ม "ใบอนุญาตส่วนบุคคล" ที่มีราคาถูกกว่าของ บริษัท อย่างมาก ยังถ้าใครรู้บางคนที่ถูกกว่าหรือฟรีฉันอยากได้ยินเช่นกัน :-)


7

อย่าลืมโปรไฟล์หน่วยความจำ. net scitech ที่ยอดเยี่ยม

เป็นเรื่องที่ยอดเยี่ยมสำหรับการติดตามว่าทำไมแอป. net ของคุณถึงหน่วยความจำไม่เพียงพอ


1
เครื่องมือที่ดีมาก ใช้งานง่ายและช่วยให้คุณสามารถนำทางผ่านกราฟวัตถุของคุณ ฉันชอบติดตามหน่วยความจำแบบ 'เรียลไทม์' มันแสดงให้คุณเห็นว่าการนับวัตถุของคุณพัฒนาอย่างไรในช่วงรันไทม์ของแอปพลิเคชัน
lowglider

5

ฉันจะเพิ่มความสามารถของ dotTrace ในการกระจายหน่วยความจำและเซสชันการติดตามประสิทธิภาพเป็นสิ่งที่มีค่าอย่างยิ่ง (ANTS อาจมีคุณลักษณะ diff memory แต่ฉันไม่เห็นประสิทธิภาพต่างกัน)

ความสามารถในการเรียกใช้เซสชั่นการทำโปรไฟล์ก่อนและหลังการแก้ไขข้อผิดพลาดหรือการเพิ่มประสิทธิภาพแล้วเปรียบเทียบผลลัพธ์ที่มีคุณค่าอย่างไม่น่าเชื่อโดยเฉพาะอย่างยิ่งกับแอปพลิเคชันแมมมอ ธ . NET ดั้งเดิม (ดังในกรณีของฉัน) น่าเบื่อมาก ทำก่อนและหลังต่างช่วยให้คุณสามารถที่จะเห็นการเปลี่ยนแปลงในการนับการเรียกร้องให้แต่ละวิธีและการเปลี่ยนแปลงในระยะเวลาสำหรับแต่ละวิธี

สิ่งนี้มีประโยชน์ไม่เพียง แต่ในระหว่างการเปลี่ยนรหัส แต่ถ้าคุณมีแอปพลิเคชันที่ใช้ฐานข้อมูลที่แตกต่างกันให้บอกว่าสำหรับลูกค้า / ลูกค้าแต่ละราย หากลูกค้ารายหนึ่งร้องเรียนถึงความช้าคุณสามารถเรียกใช้เซสชันการทำโปรไฟล์โดยใช้ฐานข้อมูลของพวกเขาและเปรียบเทียบผลลัพธ์กับฐานข้อมูล "เร็ว" เพื่อพิจารณาว่าการดำเนินงานใดที่มีส่วนทำให้เกิดความช้า แน่นอนว่ามีเครื่องมือประสิทธิภาพด้านฐานข้อมูลจำนวนมาก แต่บางครั้งฉันช่วยดูการวัดประสิทธิภาพจากด้านแอปพลิเคชัน (เนื่องจากใกล้เคียงกับที่ผู้ใช้เห็นจริง)

Bottom line: dotTrace ใช้งานได้ดีและความแตกต่างนั้นประเมินค่าไม่ได้


4

AQTimeนั้นสมเหตุสมผล แต่มีช่วงของการเรียนรู้เล็กน้อยและไม่ได้ใช้งานง่ายเหมือนในตัวใน Team Suite



3

รุ่นปัจจุบันของSharpDevelop (3.1.1)มีตัวสร้างโปรไฟล์ที่ดี มันค่อนข้างเร็วและรวมเข้ากับ SharpDevelop IDE และ NUnit ได้เป็นอย่างดี ผลลัพธ์จะแสดงในรูปแบบต้นไม้ / รายการที่ยืดหยุ่น (ใช้ LINQ เพื่อสร้างการเลือกของคุณเอง) การคลิกสองครั้งที่วิธีการที่แสดงนั้นกระโดดลงในซอร์สโค้ดโดยตรง


2

ฉันเคยทำงานกับ profiler ของ RedGate ในอดีต ทำงานให้ฉันหรือเปล่า


2

ไม่ได้ลองด้วยตัวเอง แต่อาจเป็นdotTrace ? แอปพลิเคชั่น ReSharper ของพวกเขาดีอย่างแน่นอน บางที dotTrace ก็เช่นกัน :)


1
ฉันใช้ dotTrace และสามารถแนะนำได้
Jon Skeet

2

ฉันสงสัยว่า profiler ที่มาพร้อมกับ Visual Studio Team System นั้นเป็น profiler ที่ดีที่สุด แต่ฉันพบว่ามันดีพอในหลาย ๆ ครั้ง คุณต้องการอะไรเป็นพิเศษนอกเหนือจากที่ VS เสนอให้

แก้ไข: น่าเสียดายที่มันมีให้เฉพาะในระบบทีม VS แต่ถ้าคุณมีการเข้าถึงที่คุ้มค่าการตรวจสอบ


1
ฉันกำลังพูดถึงหนึ่งใน VS2008 แต่อาจไม่สามารถใช้ได้ในทุกรุ่น (ฉันใช้ VSTS) จากวิดีโอ PDC2008 ดูเหมือนว่าผู้สร้างโปรไฟล์จะปรับปรุง VS2010 เป็นจำนวนมาก
Brian Rasmussen

1
ตัวสร้างโปรไฟล์นั้นมีให้เฉพาะกับ Visual Studio รุ่น Team Systems
Chris Brandsma

Visual Studio Team System (Developer Edition) มีผู้สร้างโปรไฟล์ ดู < microsoft.com/visualstudio/en-us/products/teamsystem/… >
gix

Visual Studio มีผู้สร้างโปรไฟล์ตั้งแต่ VS 2005 มีให้เฉพาะกับ Team System นั่นคือเหตุผลที่ฉันใช้ระบบทีม (ที่ทำงานฉันมีอาชีพ) มันเป็น profiler ที่ดีมากในความคิดของฉัน
กำหนดค่า

มันเป็น profiler ที่ดี แต่มันก็ไม่ได้ขึ้นอยู่กับมาตรฐานของ ANTS เวอร์ชันใหม่
mqp

2

เวอร์ชันล่าสุดของ ANTS memory profiler (ฉันคิดว่ามันคือ 5) เพียงแค่หิน !!! ฉันหลอกหลอนการรั่วไหลโดยใช้ WinDbg และ SOS เพราะมันพิสูจน์แล้วว่าเป็นวิธีที่ดีที่สุดมาก่อนจากนั้นฉันก็ลอง ANTS และฉันได้มันในไม่กี่นาที เป็นซอฟต์แวร์ที่ยอดเยี่ยมจริงๆ


2

ฉันต้องการเพิ่มyourkit java และ. net profiler ฉันชอบมันสำหรับ Java แต่ไม่ได้ลองใช้. NET version


1

น่าเสียดายที่โปรไฟล์ส่วนใหญ่ที่ฉันลองใช้ล้มเหลวเมื่อใช้กับการเรียกแบบหางซึ่งเป็น ANTS ที่สะดุดตาที่สุด ฉันเพิ่งจบการเขียนของตัวเอง มีการติดตั้งอย่างง่ายบน CodeProject ที่คุณสามารถใช้เป็นฐานได้


1

Intel® VTune ™ Performance Analyzer สำหรับการสุ่มตัวอย่างอย่างรวดเร็ว


@ ยูทิลิตี้ 73 - การแบ่งต้นทุนซีพียูที่ยอดเยี่ยมจริงๆใน vtune - ซึ่งเป็นสิ่งที่ฉันต้องการในวันนี้ ขอบคุณที่แนะนำสิ่งนี้
Sichbo

1

ฉันต้องนำเครื่องมือที่น่าทึ่งมาให้คุณสังเกตซึ่งฉันได้ใช้ไปแล้วในบางครั้ง AVICode Interceptor สตูดิโอ ใน บริษัท ก่อนหน้าของฉันเราใช้เครื่องมือที่ยอดเยี่ยมนี้ในการทำเว็บแอพพลิเคชั่น ( นี่น่าจะเป็นเว็บแอปพลิเคชั่นที่ใหญ่ที่สุดในโลกและเป็นโครงการไอทีที่ใหญ่ที่สุดที่เคยทำมา ) ทีมงานแสดงสงสัยด้วยความช่วยเหลือของเครื่องมืออันงดงามนี้ มันเป็นความเจ็บปวดในการกำหนดค่า แต่นั่นเป็นกิจกรรมครั้งเดียวและฉันอยากจะบอกว่ามันคุ้มค่ากับเวลา ชำระเงินที่หน้านี้สำหรับรายละเอียด

ขอบคุณเจมส์


1

สำหรับฉัน SpeedTrace เป็นเครื่องมือที่ดีที่สุดในตลาดเพราะไม่เพียง แต่ช่วยคุณค้นหาคอขวดภายในแอปพลิเคชันของคุณ นอกจากนี้ยังช่วยคุณในสถานการณ์การแก้ไขปัญหาเพื่อค้นหาสาเหตุที่แอปพลิเคชันของคุณหยุดทำงานการตั้งค่าของคุณไม่ได้ติดตั้งแอปพลิเคชันของคุณค้างบางครั้งประสิทธิภาพการทำงานของแอปพลิเคชันของคุณไม่ดีขึ้นอยู่กับการป้อนข้อมูล


1

ฉันได้ทำการทดสอบ JustTrace ของ Telerik เมื่อเร็ว ๆ นี้และแม้ว่ามันจะห่างไกลจากผลิตภัณฑ์สำเร็จรูป แต่พวกมันไปในทิศทางที่ถูกต้อง


1

หากการออกใบอนุญาตเป็นปัญหาคุณสามารถลองใช้ WINDBG เพื่อทำโปรไฟล์หน่วยความจำ


1

Profiler NuMega True Time อาศัยอยู่ที่ DevPartner Studio โดย Micro Focus ให้รายละเอียดระดับบรรทัดและวิธีการสำหรับแอป. NET ที่ต้องการเฉพาะ PDB เท่านั้นไม่ต้องใช้แหล่งที่มา (แต่ช่วยได้) สามารถแยกแยะระหว่างรูทีนที่หนักกว่าอัลกอริธึมเทียบกับที่รอ I / O ยาวโดยใช้กรรมสิทธิ์ เวอร์ชัน 10.5 มาพร้อมกับการสนับสนุน 64 กระบวนการใหม่ในวันที่ 4 กุมภาพันธ์ 2011 ปลั๊กไร้ยางอาย: ฉันทำงานกับสายผลิตภัณฑ์ DevPartner ติดตามได้ที่http://www.DevPartner.comสำหรับข่าวการเปิดตัว 10.5

ข้อจำกัดความรับผิดชอบ: ฉันเป็นผู้จัดการผลิตภัณฑ์ของ DevPartner ที่ Micro Focus


ยินดีต้อนรับสู่ SO คุณจะต้องเปิดเผยความสัมพันธ์ใด ๆ กับ DevPartner มิฉะนั้นคุณจะได้รับการพิจารณาว่าเป็นผู้ส่งสแปมและดำเนินการเช่นนั้น ฉันเห็นว่าคุณตอบคำถามในการรวบรวมจำนวนมาก ...
John Saunders

0

ฉันได้พบความอุดมสมบูรณ์ของปัญหาในการใหญ่ C # app ใช้นี้

โดยปกติแล้วปัญหาจะเกิดขึ้นระหว่างการเริ่มต้นหรือปิดระบบขณะที่กำลังโหลดปลั๊กอินและโครงสร้างข้อมูลขนาดใหญ่กำลังถูกสร้างทำลายทำลายต่อเนื่อง บ่อยครั้งที่พวกเขาสร้างและเริ่มต้นมากกว่าหนึ่งครั้งและตัวจัดการการเปลี่ยนแปลงได้รับการเพิ่มหลายครั้งรวมปัญหาเพิ่มเติม

ในกรณีเช่นนี้โปรแกรมอาจมีความเฉื่อยชาว่ามีเพียง 2 ตัวอย่างเท่านั้นที่สามารถระบุตำแหน่งไซต์การเรียกใช้เมธอด / ฟังก์ชัน / คุณสมบัติความผิด


0

เราเลือก YourKit Profiler สำหรับ. NET ใน บริษัท ของฉันเนื่องจากเป็นราคาที่ดีที่สุด (เทียบกับฟีเจอร์) สำหรับ บริษัท ขนาดเล็กที่ต้องการมีสิทธิ์ใช้งานแบบยืดหยุ่น (สิทธิ์การใช้งานแบบลอยตัว) มันเป็นตัวเลือกที่สมบูรณ์แบบ - ANTS คือล็อกเกตนักพัฒนาซอฟต์แวร์ในเวลานั้น

นอกจากนี้ยังทำให้เรามีความสามารถในการแนบกับกระบวนการทำงานซึ่งไม่สามารถทำได้ด้วย dotTrace ระวังแม้ว่าการติดไม่ใช่ตัวเลือกที่ดีที่สุดเพราะทุกอย่าง. NET จะชะลอตัวลง แต่นี่เป็นวิธีเดียวที่จะสร้างโปรไฟล์แอปพลิเคชั่น. NET ที่เริ่มต้นด้วยกระบวนการอื่น คุณสมบัติฉลาด, ANTS และ dotTrace นั้นดีกว่า - แต่ในที่สุด YourKit ก็ดีพอ


YourKit เริ่มตั้งแต่เดือนมกราคม 2555 ราคาได้เพิ่มขึ้นสำหรับผู้สร้างโปรไฟล์ YourKit ดังนั้นข้อได้เปรียบด้านราคาอาจไม่ถูกต้องอีกต่อไป

0

หากคุณใช้ ASP.NET MVC คุณสามารถลอง MVCMiniProfiler (http://benjii.me/2011/07/using-the-mvc-mini-profiler-with-entity-framework/)

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.