بهینهسازی کارایی
سریع کردن اپلیکیشنها جایی که واقعا کند است: اول اندازهگیری، اصلاح در نقطه علت، و تایید در برابر داده کاربر واقعی نه یک نمره آزمایشگاهی.
معرفی
کار روی کارایی وقتی خراب میشود که از یک فهرست توصیههای کلی شروع شود نه از یک اندازهگیری. تیمها یک اسپرینت را صرف فرمت تصاویر میکنند در حالی که تاخیر واقعی یک کوئری دیتابیس است که در هر بار لود صفحه اجرا میشود، یا صفحهای را بهینه میکنند که کسی بازدیدش نمیکند.
توالیای که جواب میدهد این است: اندازه بگیرید، بزرگترین عامل را پیدا کنید، همان را درست کنید، دوباره اندازه بگیرید. کمتر از یک چکلیست رضایتبخش است و بیشترِ سود را از تعداد کمی تغییر میگیرد.
مناسب چه کسانی است
- شرکتهایی که سایتشان کند است و کسی نمیداند کدام بخش
- کسبوکارهایی که Core Web Vitals را رد میشوند و نرخ تبدیلشان ضربه میخورد
- تیمهایی که اپلیکیشنشان زیر بار به شکلی افت میکند که نمیتوانند پیشبینیاش کنند
نگاه ما به بهینهسازی کارایی
کارهایی که یک همکاری معمولی شامل میشود. دامنه از اول مشخص است و بعدا هزینه اضافه نمیشود.
اندازهگیری کاربر واقعی
کارایی همانطور که بازدیدکنندههای واقعی شما تجربهاش میکنند، روی دستگاه و اینترنت خودشان، نه از یک ماشین تست روی خط سریع.
پروفایلینگ
پیدا کردن اینکه زمان واقعا کجا میرود: سرور، دیتابیس، شبکه یا رندر. معمولا یکی از اینها غالب است و بقیه نویز.
بهینهسازی سمت کاربر
حجم باندل، مدیریت تصاویر، لود فونت و منابعی که رندر را مسدود میکنند، رسیدگیشده به ترتیب اثر اندازهگیریشده.
بکاند و دیتابیس
تحلیل کوئری، ایندکسگذاری و کش. یک کوئری بدون ایندکس مرتبا کل مشکل است.
استراتژی کش
اینکه چه چیزی، برای چه مدت کش میشود، و چطور باطل میشود. کش بدون یک برنامه روشن ابطال، مشکلات بدتری از چیزی که حل میکند میسازد.
تست بار
رفتار زیر ترافیک واقعبینانه، از جمله اینکه وقتی یک وابستگی کند میشود به جای اینکه بیفتد چه میشود.
از اولین تماس تا نتیجه
هر بار همین ترتیب، تا همیشه بدانید قدم بعدی چیست.
اندازهگیری
ابزارگذاری رصد کاربر واقعی و تعیین یک نقطه شروع قبل از تغییر دادن هر چیزی.
پیدا کردن علت
پروفایل کردن تا وقتی بزرگترین عامل مشخص شود نه حدس زده شود.
اصلاح
رسیدگی به بزرگترین مورد، و بعد اندازهگیری دوباره. تکرار تا وقتی بازدهی هنوز به زحمتش میارزد.
محافظت
اضافه کردن بودجه کارایی و مانیتورینگ تا افتها در پایپلاین گرفته شوند نه توسط مشتری.
نتیجه، نه انبوه فایل
چند فایل تحویلی یعنی پیشرفت نیست. اینها چیزهایی است که باید واقعا عوض شود.
سریعتر جایی که اهمیت دارد
اول اندازه گرفتن یعنی تلاش به صفحهها و مسیرهایی میرود که آدمها واقعا استفاده میکنند.
تبدیل و رتبه با هم
بهبود Core Web Vitals هم روی دیده شدن در جستجو اثر دارد و هم روی نرخ تبدیل، که توجیه کردنش را غیرعادی آسان میکند.
قابل پیشبینی زیر بار
تست بار، ظرفیت را از یک فرض به یک عدد معلوم تبدیل میکند.
افتهایی که زود گرفته میشوند
بودجه کارایی در پایپلاین، جلوی همان برگشت آرام به کندی را میگیرد که بعد از بیشتر پروژههای بهینهسازی میآید.
پرسشهای رایج درباره بهینهسازی کارایی
چیزهایی که معمولا قبل از تماس میپرسند. اگر پرسش شما اینجا نیست، مستقیم بپرسید.
چرا سایت ما کند است؟
میتواند تقریبا هر چیزی باشد، و حدس زدن همان دلیلی است که پروژههای کارایی شکست میخورند. رایجترین علتهای واحدی که پیدا میکنیم یک کوئری دیتابیس بدون ایندکس روی یک مسیر پرتردد، تصاویر بیش از حد بزرگ، و اسکریپتهای شخص ثالث هستند. اینکه کدامش به شما مربوط است اندازهگیری میخواهد.
نمرههای آزمایشگاهی مثل Lighthouse اهمیت دارند؟
به عنوان ابزار تشخیص بله. به عنوان هدف گمراه میکنند، چون یک صفحه را روی یک دستگاه شبیهسازیشده میسنجند. رصد کاربر واقعی روی ترافیک خودتان همان چیزی است که باید تصمیمها را هدایت کند و همان چیزی که موتورهای جستجو استفاده میکنند.
واقعبینانه چقدر میتوانیم سریعتر شویم؟
کاملا به علت بستگی دارد. سایتهایی با یک مشکل غالب اغلب با یک اصلاح واحد به شدت بهتر میشوند. سایتهایی که به طور کلی سنگیناند به تدریج در طول تغییرات زیاد بهتر میشوند. مرحله اندازهگیری ظرف چند روز به ما میگوید کدامید.
کار روی کارایی به رتبه جستجوی ما کمک میکند؟
تا حدی مستقیم از راه Core Web Vitals، و بیشتر غیرمستقیم از راه تبدیل و درگیری. به ندرت بزرگترین اهرم سئوی در دسترس است، و یکی از معدود اهرمهایی است که همزمان درآمد را هم بهتر میکند.
بهینهسازی کارایی برایتان مطرح است؟
بگویید میخواهید چه چیزی عوض شود. اگر گزینه مناسبی نباشیم، همان اول میگوییم و جای بهتری معرفی میکنیم.
دنبال تصویر کاملتر هستید؟
بهینهسازی کارایی معمولا کنار کارهای دیگر در دواپس، زیرساخت و عملیات فنی قرار میگیرد. کل این حوزه را ببینید تا ارتباطها روشن شود.
