بهینه سازی عملکرد با شناسایی معیارهای کلیدی، معمولاً مربوط به تأخیر و توان عملیاتی شروع می شود. افزودن نظارت برای ضبط و ردیابی این معیارها، نقاط ضعف برنامه را آشکار می کند. با معیارها، بهینه سازی می تواند برای بهبود معیارهای عملکرد انجام شود.
علاوه بر این، بسیاری از ابزارهای نظارتی به شما امکان می دهند هشدارهایی را برای معیارهای خود تنظیم کنید، به طوری که در صورت برآورده شدن یک آستانه خاص به شما اطلاع داده می شود. برای مثال، ممکن است هشداری تنظیم کنید تا زمانی که درصد درخواستهای ناموفق بیش از x درصد از سطوح عادی افزایش مییابد، به شما اطلاع میدهد. ابزارهای مانیتورینگ میتوانند به شما کمک کنند عملکرد عادی را شناسایی کنید و جهشهای غیرمعمول در تأخیر، مقادیر خطا و سایر معیارهای کلیدی را شناسایی کنید. توانایی نظارت بر این معیارها بهویژه در بازههای زمانی حیاتی کسبوکار یا پس از تولید کد جدید مهم است.
معیارهای تأخیر را شناسایی کنید
اطمینان حاصل کنید که UI خود را تا آنجا که می توانید پاسخگو نگه دارید، توجه داشته باشید که کاربران از برنامه های تلفن همراه انتظار استانداردهای بالاتری دارند. تأخیر نیز باید برای سرویسهای باطنی اندازهگیری و ردیابی شود، بهویژه زیرا در صورت عدم بررسی میتواند منجر به مشکلات توان عملیاتی شود.
معیارهای پیشنهادی برای ردیابی شامل موارد زیر است:
- مدت زمان درخواست
- مدت زمان درخواست در جزئیات زیرسیستم (مانند فراخوانی های API)
- مدت زمان کار
معیارهای توان عملیاتی را شناسایی کنید
توان عملیاتی اندازه گیری تعداد کل درخواست های ارائه شده در یک دوره زمانی معین است. خروجی می تواند تحت تأثیر تأخیر زیرسیستم ها قرار گیرد، بنابراین ممکن است برای بهبود توان عملیاتی، نیاز به بهینه سازی تأخیر داشته باشید.
در اینجا برخی از معیارهای پیشنهادی برای ردیابی آمده است:
- پرس و جو در ثانیه
- حجم داده های منتقل شده در ثانیه
- تعداد عملیات I/O در هر ثانیه
- استفاده از منابع، مانند استفاده از CPU یا حافظه
- اندازه بک لاگ پردازش، مانند pub/sub یا تعداد رشته ها
نه فقط پست
یک اشتباه رایج در اندازه گیری عملکرد فقط نگاه کردن به حالت میانگین (متوسط) است. در حالی که این مفید است، بینشی در مورد توزیع تأخیر ارائه نمی دهد. یک معیار بهتر برای ردیابی، صدک های عملکرد است، برای مثال صدک 50/75/90/99 برای یک متریک.
به طور کلی، بهینه سازی را می توان در دو مرحله انجام داد. ابتدا برای تأخیر صدک 90 بهینه سازی کنید. سپس، صدک 99 را در نظر بگیرید - که به عنوان تأخیر دم نیز شناخته می شود: بخش کوچکی از درخواست ها که تکمیل آنها زمان بیشتری می برد.
مانیتورینگ سمت سرور برای نتایج دقیق
نمایه سمت سرور معمولاً برای ردیابی معیارها ترجیح داده می شود. سمت سرور معمولاً بسیار آسانتر برای ابزارسازی است، امکان دسترسی به دادههای دقیقتر را فراهم میکند و کمتر در معرض اختلالات ناشی از مشکلات اتصال قرار میگیرد.
نظارت بر مرورگر برای مشاهده سرتاسر
پروفایل مرورگر می تواند بینش بیشتری در مورد تجربه کاربر نهایی ارائه دهد. این می تواند نشان دهد که کدام صفحات درخواست های کندی دارند، که سپس می توانید برای تجزیه و تحلیل بیشتر، آنها را به نظارت سمت سرور مرتبط کنید.
گوگل آنالیتیکس در گزارش زمان بندی صفحه ، نظارت خارج از جعبه را برای زمان بارگذاری صفحه فراهم می کند. این چندین دیدگاه مفید برای درک تجربه کاربر در سایت شما ارائه می دهد، به ویژه:
- زمان بارگذاری صفحه
- تغییر مسیر زمان بارگذاری
- زمان پاسخگویی سرور
مانیتورینگ در فضای ابری
ابزارهای زیادی وجود دارد که می توانید برای ضبط و نظارت بر معیارهای عملکرد برنامه خود استفاده کنید. برای مثال، میتوانید از Google Cloud Logging برای ثبت معیارهای عملکرد در پروژه Google Cloud خود استفاده کنید، سپس داشبوردهایی را در Google Cloud Monitoring برای نظارت و بخشبندی معیارهای ثبتشده تنظیم کنید.
برای مثالی از ورود به Google Cloud Logging از یک رهگیر سفارشی در کتابخانه مشتری پایتون ، راهنمای ورود به سیستم را بررسی کنید. با این دادههای موجود در Google Cloud، میتوانید معیارهایی را در بالای دادههای ثبتشده ایجاد کنید تا از طریق Google Cloud Monitoring به برنامه خود قابل مشاهده باشید. راهنمای معیارهای مبتنی بر گزارش تعریف شده توسط کاربر را دنبال کنید تا با استفاده از گزارشهای ارسال شده به Google Cloud Logging، معیارهایی ایجاد کنید.
از طرف دیگر، میتوانید از کتابخانههای مشتری مانیتورینگ برای تعریف معیارها در کد خود استفاده کنید و آنها را مستقیماً جدا از گزارشها به مانیتورینگ ارسال کنید.
نمونه معیارهای مبتنی بر گزارش
فرض کنید میخواهید مقدار is_fault
را برای درک بهتر نرخ خطا در برنامه خود کنترل کنید. می توانید مقدار is_fault
را از لاگ ها به یک متریک شمارنده جدید ErrorCount
استخراج کنید.
در Cloud Logging، برچسبها به شما این امکان را میدهند که معیارهای خود را بر اساس سایر دادههای موجود در گزارشها به دستههایی دستهبندی کنید. میتوانید برچسبی را برای فیلد method
ارسال شده به Cloud Logging پیکربندی کنید تا ببینید چگونه تعداد خطاها توسط روش Google Ads API تجزیه میشود.
با پیکربندی معیار ErrorCount
و پیکربندی برچسب Method
، میتوانید نمودار جدیدی در داشبورد مانیتورینگ برای نظارت ErrorCount
، گروهبندی شده بر اساس Method
ایجاد کنید.
هشدارها
در Cloud Monitoring و سایر ابزارها میتوانید خطمشیهای هشداری را پیکربندی کنید که مشخص میکنند هشدارها چه زمانی و چگونه باید توسط معیارهای شما فعال شوند. برای دستورالعملهای مربوط به تنظیم هشدارهای Cloud Monitoring، راهنمای هشدارها را دنبال کنید.