Yourkit Java Profiler

(Yourkit Java Profiler (YJP ابزار قدرتمندی برای پروفایل کردن برنامه‌های کاربردی جاوا می‌باشد. این ابزار قادر است میزان و نحوه استفاده از پردازنده، ورودی/خروجی و حافظه را در سطح برنامه مشخص نماید. ابزارهای profiler، برخلاف ابزارهای monitoring، اشکالات کارایی و کندی سیستم را در سطح برنامه‌نویسی مشخص می‌کنند. در حال حاضر YJP به عنوان بهترین پروفایلر توسط متخصصین فناوری اطلاعات شناخته شده است. این ابزار قابلیت پروفایل کردن برنامه‌های بزرگ و حجیم را با کمترین بار اضافی (در حد صفر) فراهم می‌سازد.

Service virtualization product views
 

yourkitjava-tab

  1. قابلیت ها
  2. امکانات
  3. فیلم آشنایی با ابزار

صدرنشین در بین ابزارهای پروفایلر

پروفایلینگ پردازنده و حافظه اصلی به صورت همزمان، هرگز ساده و دقیق نبوده است. YourKit یک رویکرد جدیدی را برای پروفایل کردن برنامه‌های ‌‌کاربردی ایجاد کرده است که مزایای بی‌نظیری را برای توسعه‌دهندگان حرفه‌ای جاوا به ارمغان می‌آورد.

نرم افزار yourkitjavaprofiler

آماده برای امور شما

هر نوع برنامه‌ کاربردی جاوا، SE یا EE، سرور، تکنولوژی و فریمورک، برروی چند پلتفرم؛ به صورت محلی یا از راه‌ دور، در حین توسعه یا تست؛ و برای تیم‌ها و شرکت‌ها در هر اندازه‌ای را پروفایل می‌کند.

پروفایل کردن در هر کجا

آمادگی توزیع‌پذیری

قابلیت کنترل سربار

لایسنس مقرون به صرفه و آسان

نرم افزار yourkitjavaprofiler

قابلیت‌های جامع و کامل

پکیج کامل پروفایلر از تمامی امکانات و قابلیت‌های پیشرفته پروفایلینگ جاوا بهره می‌برد.

پروفایلینگ پردازنده – بررسی مشکلات کارایی

پروفایلینگ حافظه اصلی – نشتی حافظه، میزان مصرف، GC

thread ها و همگام‌سازی

پروفایلینگ exception های برنامه

پروفایل کردن وب، پایگاه داده، I/O

نرم افزار yourkitjavaprofiler

آسان و کاربر پسند

فرآیند نصب به صورت مستقیم، با پیش‌فرض‌های قابل قبول، یکپارچه‌سازی با IDE های مشهور و سرورهای برنامه‌های کاربردی، با حداقل پیکربندی.

آسان بودن پروفایلینگ

محیط مناسب برای توسعه‌دهنده

نرم افزار yourkitjavaprofiler

قدرتمند و هوشمند

YourKit به علت برخورداری از قابلیت‌های ارائه نتایج سطح بالا، تحلیل پیشرفته، خودکار و منحصر به فرد، پیشرفته‌تر از پروفایلرهای سنتی است.

مانیتورینگ سطح بالا: وب، پایگاه داده، I/O

قابلیت‌های تحلیل قدرتمند

پروفایلینگ خودکار

باز: تبدیل نتایج به فرمت‌های خارجی

نرم افزار yourkitjavaprofiler

پروفایل کردن در هر کجا

می‌توانید هر برنامه کاربردی در حال اجرا برروی JVM در پلتفرم‌های مختلف را پروفایل کنید.

هر نوع برنامه کاربردی: Applet ،WebStart ،Java EE ،Java SE و غیره.

هر تکنولوژی و فریمورک : Struts Hibernate ،JSP/Servlets ،JDBC ،EJB و غیره

جاوای محض و همچنین زبان‌های JVM مانند JRuby ،Scala و غیره.

تمامی سیستم‌عامل‌های مشهور:

ویندوز (32 بیتی/64 بیتی)

Mac OS X (32 بیتی/64 بیتی)

لینوکس (32بیتی/64بیتی، ppc64le/ppc64/ppc ،AArch64/ARMv7/ARMv5)

ppc64/ppc) AIX)

سولاریس (SPARC ، 32بیتی/64 بیتی)

IA-64) HP-UX)

FreeBSD (32 بیتی/64 بیتی)

تمام JVMهای مشهور

Sun/Oracle HotSpot

OpenJDK

IBM Java

پروفایلینگ به صورت محلی و یا از راه‌دور

نرم افزار yourkitjavaprofiler

آمادگی سازمانی

پروفایل هر اپلیکیشن سرور: WebSphere ،WebLogic ،JBoss ،Tomcat،
JRun ،Geronimo ،Jetty ،GlassFish و سایر سرورها

هر تکنولوژی و فریمورک: Struts Hibernate ،JSP/Servlets ،JDBC ،EJB و غیره

فعال‌سازی آسان پروفایلینگ با ویزارد integration، که از تمامی سرورهای محبوب پشتیبانی نموده و همچنین گزینه "Generic server" را برای سایر سرورها ارائه می‌دهد.

به صورت محلی و از راه‌دور: به راحتی سرورهای در حال اجرا روی ماشین توسعه‌دهنده، و همچنین سرور از راه دوری که محصول روی آن نصب شده، را پروفایل می‌کند.

پشتیبانی از تونلینگ تعبیه‌شده SSH، پروفایلینگ در شرایط محدود شبکه را ساده می‌کند.

سربار پروفایلینگ کاملا قابل کنترل می‌باشد.

سیاست لایسنس گذاری، پروفایل تعداد نامحدودی از برنامه‌های کاربردی را ممکن می‌سازد

نتایج سطح بالای پروفایلینگ برای مشاهده تصاویر بزرگ و جزئیات سطح پایین برای اشاره به مشکلات

پشتیبانی از Deobfuscation: اگر لاگ مبهم‌سازی مورد نظر را فراهم نمایید، پروفایلر، کلاس اصلی، متد و اسامی فیلدهای برنامه‌های کاربردی که با ProGuard ،RetroGuard،
Zelix KlassMaster ،yGuard و Allatori مبهم شده‌اند را بازیابی می‌کند.

نرم افزار yourkitjavaprofiler

پروفایلینگ به صورت محلی و از راه دور

پروفایل یک برنامه کاربردی از راه دور به آسانیِ پروفایل برنامه کاربردی به صورت محلی می‌باشد:

ویزارد Remote EE server integration، پروفایلینگ در حالت کنسول را ممکن می‌سازد

ویزارد Remote attach

پشتیبانی از تونلینگ تعبیه‌شده SSH، پروفایلینگ در شرایط محدود شبکه را ساده می‌سازد

نرم افزار yourkitjavaprofiler

سربار قابل کنترل

کنترل کامل سربار ناشی از پروفایلنگ با استفاده از گزینه‌های مناسب استارت‌آپ و استفاده از حالت‌های پروفایلنگ در صورت نیاز.

داشتن کمترین سربار به صورت پیش‌فرض: تمامی عملیات‌های پروفایلینگ که ممکن است منجر به سربار قابل توجهی شوند، خاموش می‌باشند، مگر اینکه صراحتا آن‌ها را روشن کنید.

ویزارد EE server integration، حتی محدودیت‌های پیش‌فرض سختگیرانه‌تری را برای استفاده از محصول ارائه می‌دهد.

لایسنس مقرون به صرفه و مجاز

مدل لایسنس تجاری انعطاف‌پذیر: floating ،per-seat و enterprise

لایسنس چند پلتفرمی و چند پردازنده‌ای

منصفانه و مقرون به صرفه: با مقدار زیادی تخفیف همراه‌اند؛ نسخه‌های دارای لایسنس، کپی‌هایی از پروفایلر سمت مشتری، به همراه کپی‌های نامحدودی از عامل پروفایلر برای پروفایل کردن بسیاری از برنامه‌های کاربردی یا سرورهای مورد نیاز شما، در مراحل توسعه یا تست می‌باشند. احتیاجی به تهیه لاینس به ازای هر پردازنده نیست

تعبیه رایگان در مرحله تولید: توزیع عامل پروفایلر به همراه برنامه‌های کاربردی تجاری در دنیای واقعی به صورت رایگان، برای تسهیل نگهداری محصول و بهبود پشتیبانی از مشتری

عرضه‌های ویژه برای استفاده دانشگاهی و علمی

توسعه دهندگان و نگهداری‌کنندگان پروژه متن باز از یک لایسنس رایگان استفاده می‌کنند

نرم افزار yourkitjavaprofiler

پروفایلینگ آسان است

سهولت در نصب و پیکربندی

ویزاردهای EE server integration

پشتیبانی از IDE، پروفایل برنامه‌های کاربردی از درون IntelliJ IDEA ،Eclipse،
JDeveloper ،NetBeans را درست مثل Run یا Debug آن‌ها ممکن می‌سازد.

Attach mode، پروفایلینگ نمونه‌هایی از JVM که بدون نیاز به عامل پروفایلر شروع به‌کار می‌کنند را به محض درخواست ممکن می‌سازد.

در صورت لزوم، به صورت دستی پروفایل برنامه کاربردی را با افزودن تنها یک گزینه خط فرمان JVM فعال کنید؛ نیازی به تغییر مسیر کلاس و غیره نمی‌باشد.

نرم افزار yourkitjavaprofiler

محیط مناسب برای توسعه‌دهنده

پروفایل از درون محیط توسعه یکپارچه:

پلاگین‌هایی برای JDeveloper ،NetBeans ،IntelliJ IDEA ،Eclipse

پروفایل کردن به همان راحتی Run یا Debug کردن

باز کردن خط دقیق کد منبع حاصل از نتایج پروفایلینگ در IDE

نرم افزار yourkitjavaprofiler

پروفایلینگ پردازنده – بررسی مشکلات کارایی

نمودار میزان استفاده از پردازنده که زمان کل، زمان فعالیت هسته و زمان فعالیت garbage collector را نمایش می‌دهد همواره در دسترس است

یکی از حالات‌های پروفایلینگ موجود – tracing یا sampling یا call counting – را برای ایجاد تعادل میان دقتِ نتیجه و جامعیت و سربار پروفایلینگ انتخاب کنید

از طرفی دیگر، میزان مصرف پردازنده را به صورت پیش‌فرض بر مبنای داده‌های ضبط شده thread telemetry ارزیابی کنید

CPU tracing Adaptive mode، سربار پروفایلینگ را به صورت خودکار کنترل می‌کند. کاربر، دیگر نیازی به انتخاب صریح فیلترهایی برای حذف متدها از پروفایلینگ همانند سایر نیازمندی‌های پروفایلر ندارد.

نمای پردازنده نتایج را به صورت back traces ،method lists ،hot spots ،call trees،
merged callees و callees lists نمایش می‌دهد.

پروفایلینگ سطح بالا، SQL calls و درخواست‌های وب را فراهم می‌سازد.

قابلیت What-if: برای تمرکز برروی چیزی که بیشترین اهمیت را دارد، می‌توانید method call های خاصی را از نتایج پروفایلینگ حذف کنید یا فقط برروی method call های خاصی تمرکز کنید.

مقایسه snapshotها برای مشاهده موارد تغییر یافته.

نرم افزار yourkitjavaprofiler

پروفایلینگ حافظه اصلی – نشتی حافظه، میزان مصرف، GC

نمودارهای میزان مصرف حافظه، ظرفیت حافظه heap و non-heap، فعالیت GC و در صورتی که ضبط شده باشد، نرخ ایجاد اشیا در هر ثانیه را نشان می‌دهد

بررسی و تحلیل جامع حافظه heap

قابلیت Object allocation recording برای حل مشکلات تخصیص حافظه و زباله روبی. تنظیمات موجود اجازه می‌دهد تا میان جامعیت نتیجه و سربار پروفایلینگ تعادل برقرار شود. به طور خاص، حالت شمارش شیء منحصر به فرد با سربار تقریبا صفر را در نظر بگیرید.

قوی‌ترین UI برای تحلیل میزان مصرف حافظه و یافتن نشتی حافظه

مسیر از ریشه، برای تحلیل نشتی حافظه و حفظ شیء می‌باشد. به کمک این قابلیت به سرعت می‌توان مشاهده کرد که در صورت حذف ارجاع خاص، چه اتفاقی می‌افتد (به عنوان مثال برای تست تاثیر رفع نشتی حافظه بدون اجرای مجدد برنامه)

یافتن اشیایی که بیشترین میزان حافظه را اشغال کرده‌اند با dominator tree و class list

طبقه بندی اشیاء بر اساس:

کلاس

بارگذارنده کلاس

برنامه کاربردی تحت وب (بهره‌مندی از دانش تخصصی بالا در مورد سطح داخلی سرورهای مشهور)

نسل (زمان ایجاد)

دسترس‌پذیری (قوی، ضعیف، ملایم، در انتظار نهایی شدن، مرده)

محدوده Shallow size

نقطه تخصیص، در صورتی که ضبط شده باشد

کاوشگر شیء برای بررسی اشیاء منجصر به فرد

پروفایلینگ Garbage collection برای ارزیابی زمان فعالیت زباله‌روب، و اگر Garbage collection مقدار قابل توجهی از زمان را صرف کند، کد دارای مشکل را دقیقا مشخص می‌کند.

Inspections به طور خودکار مشکلات معمول را شناسایی می‌کند. انجام این نوع تحلیل به صورت دستی (حتی اگر شدنی باشد)، می‌تواند امر بسیار پیچیده‌ای باشد.

پشتیبانی از snapshots با فرمت دودویی HPROF و JVM تعبیه شده در heap dumper

توانایی استخراج snapshot های حافظه با فرمت پروفایلر به فرمت دودویی HPROF تا به کمک ابزارهای دیگر نیز پردازش شوند

تنظیم زبان توصیفی برای استفاده در آزمون‌های خودکار حافظه

نرم افزار yourkitjavaprofiler

Thread ها، lock ها و exception ها

پروفایلینگ thread: مانیتور کردن وضعیت‌ها و پشته‌های نخ‌، ارزیابی میزان مصرف پردازنده در یک بازه زمانی

کشف‌کننده بن‌بست

پروفایلینگ exception: اینکه در کجا، در کدام کلاس و به چه تعداد رخ داده‌اند

پروفایلینگ مانیتور: بررسی مشکلات همگام‌سازی

نرم افزار yourkitjavaprofiler

نتایج سطح بالا

ضبط رویداد: علاوه بر نتایج سطح پایین پروفایلینگ از قبیل method call ها، پروفایلر می‌تواند رویدادهای سطح بالاتر را به همراه خصیصه‌های ضروری آن‌ها مانند کوئری‌های دیتابیس، درخواست‌های وب و I/O call ها را ضبط کند. از پروب‌های تعبیه‌شده برای شناسایی مشکلات معمول استفاده کنید و یا برای بررسی جزئیات برنامه کاربردی خاص خود، خودتان پروب‌ را بنویسید.

نمودارهای کارایی، نمودارهای تله‌متری پایه و سطح بالای وب، دیتابیس و فعالیت I/O را نمایش می‌دهند.

نرم افزار yourkitjavaprofiler

قابلیت‌های تحلیل قدرتمند

بلافاصله پس از تولید، نتایج پروفالینگ را به صورت بلادرنگ مشاهده کنید

ضبط یک snapshot برای تحلیل پیچیده‌تر، برای ذخیره نتایجِ ضبط‌های قدیمی و برای به اشتراک گذاشتن آن‌ها

مقایسه snapshot های کارایی یا حافظه برای مشاهده تغییرات

نمودارهای تله‌متری پایه همواره در دسترس هستند. ویژگی بسیار مفید و منحصر به فرد این است که نتایج تله‌متری اخیر در درون عامل پروفایلر یادآوری می‌شوند. این امر امکان اتصال به برنامه کاربردی پروفایل شده ی بر حسب تقاضا را می‌دهد و کشف نحوه رفتار برنامه کاربردی در گذشته را ممکن می‌سازد.

Inspection ها به طور خودکار مشکلات معمول را شناسایی می‌کنند. انجام این نوع تحلیل به صورت دستی (حتی اگر شدنی باشد) کار بسیار پیچیده‌ای می‌باشد.

نرم افزار yourkitjavaprofiler

پروفایلینگ خودکار

علاوه بر قابلیت‌‌های غنی UI برای پروفایلینگ تعاملی، پروفایلینگ می‌تواند به صورت خودکار یا نیمه خودکار انجام شود.

گزینه‌های Startup برای فعال‌سازی فوری حالت‌های پروفایلنگ مورد نظر

Trigger ها برای اجرای عملیات برروی روادیدهایی همچون فراخوانی متد خاص و یا یک مقدار مانیتور شده که به حد آستانه رسیده است

Prob ها برای اجرای کد دلخواه در زمان فراخوانی متدهای خاص

API برای کنترل پروفایلینگ برنامه کاربردی حاضر یا برنامه کاربردی دیگر: تعویض حالت‌های پروفایلینگ و ذخیره‌سازی نتایج پروفایلینگ

ابزار خط فرمان برای انجام بعضی از وظایف پروفایلینگ بدون استفاده از UI

نرم افزار yourkitjavaprofiler

استخراج داده به فرمت‌های خارجی

علاوه بر قابلیت‌های تحلیل غنی پروفایلر، نتایج پروفایل شده می‌تواند به صورت خارجی استخراج شود تا قابل پردازش با ابزارهای دیگر باشد و یا با ابزارهای فاقد پروفایلر به اشتراک گذاشته شود.

استخراج به فرمت CSV ،HTML ،XML، متن ساده و تصویر

استخراج از UI

استخراج خودکار از طریق ابزار خط فرمان

استخراج snapshotهای حافظه از فرمت پروفایلر به فرمت دودویی HPROF

در جداول و نمودارها، متن نتیجه انتخاب شده می‌تواند در clipboard کپی شود

نرم افزار yourkitjavaprofiler

توانایی پروفایل کردن هر نوع برنامه کاربردی جاوایی (تحت وب، دسکتاپی، توزیع شده و غیره)

امکان پروفایل کردن در سه حالت sampling ، live و tracing

دارای محیط کاربر پسند جهت استفاده آسان

امکان پروفایل کردن CPU جهت یافتن منشاء استفاده بی رویه از منابع پردازشی در سطح برنامه

امکان پروفایل کردن Memory جهت یافتن نشتی حافظه و نحوه مصرف حافظه در سطح برنامه نویسی

امکان پروفایل کردن Garbage Collector

امکان پروفایل کردن دیتابیس جهت شناسایی query های سنگین در لایه DAO

امکان پروفایل کردن لایه وب جهت شناسایی میزان استفاده صفحات مختلف برنامه از منابع سیستم

امکان پروفایل کردن exception ها و محل رخ دادن آنها در سطح برنامه

امکان پروفایل کردن thread ها جهت شناسایی thread های منتظر، بلوکه شوند و بلوکه کننده

دارای قابلیت inspection برای تشخیص مواردی همچون duplicate objects، null objects و open files در زمان اجرای برنامه

دارای نمودار های متعددی جهت مانیتورینگ وب، پایگاه داده و I/O

دارای metric های متعددی برای ارزیابی کارایی برنامه های کاربردی در حال اجرا

توانایی تحلیل قدرتمند و پروفایل کاملا خودکار

قابلیت استخراج داده ها در فرمت های مختلف

امکان پروفایل کردن برنامه های کاربردی محلی (local) یا نصب شده در یک سرور دیگر (remote)

امکان attach شدن به برنامه های در حال اجرا که قبلا در حالت پروفایل بالا نیامده باشد

توانایی پروفایل کردن انواع مختلف برنامه های کاربردی جاوا از جمله Java EE, Java SE ، WebStart و Applet

قابلیت پروفایل اکثر تکنولوژی های جاوا همچون EJB, JDBC, JSP/Servlets, Struts و Hibernate

پشتیبانی از Scala و JRuby

پشتیبانی از سیستم عامل های معروف از جمله Windows (x86/x64), Mac OS X (x86/x64), Linux (x86/x64, ARMv5/ARMv7/AArch64, ppc/ppc64/ppc64le), AIX (ppc/ppc64), Solaris (SPARC, x86/x64), HP-UX (IA-64) و (FreeBSD (x86/x64

پشتیبانی از JVM های معروف همچون Sun/Oracle HotSpot، OpenJDK و IBM Java

قابلیت یکپارچه سازی با تقریبا تمام IDE های رایج

قابلیت یکپارچه سازی با تقریبا تمام application/web server های جاوایی

امکان نصب برروی سیستم های 32 و 64 بیتی

پشتیبانی از SSH tunneling برای استفاده در شرایط محدود شبکه

پشتیبانی از Deobfuscation و امکان بازیافت اسامی اولیه کلاس ها، متدها و فیلدها

برای دریافت مثال ها و منابع آموزشی ارائه شده در فیلم می توانید با روابط عمومی شرکت این آدرس ایمیل توسط spambots حفاظت می شود. برای دیدن شما نیاز به جاوا اسکریپت دارید مکاتبه نمایید.