عوامل تاثیرگذار بر پرفورمنس سایت


پرفورمنس بحث پیچیده‌ایه،اینطوری دسته بندیش کنیم

۱.بک‌اند:

دیتابیس، ORM، لاگ گرفتن‌ها و مونیتوریتگ‌ها و تعداد Request در دقیقه معمولا خیلی مهم هستن و هر کدوم باید بهینه بشن مداوم، ضمن اینکه CPU/RAM usage هم مونیتور بشه که اگر لازم یه سرور به دو یا بیشتر تغییر پیدا کنه

۲.فرانت اند:

تعداد Event Listener ها، نحوه‌ی آپدیت کردن صفحه، ننوشتن Loop. اضافی، کم کردن حجم Bundle و نداشتن Timeout های الکی، الکی آپدیت نکردن کامپوننت‌ها یا rerender کردنشون، معمولا بیشترین تاثیر رو دارن

ضمن اینکه SSR به خودی خود و تعریفش کمی تجربه‌ی کاربری رو بهتر میکنه و سایت سریعتر به نظر میاد و واقعا هم کمی سریعتر میشه

۳.مباحث DevOps:

حالا مسائل Caching و CDN و Resize کردن درست عکس‌ها و اینا مطرح میشه


یک سری نکات اضافی:

  1. پرفورمنس هیچ ربطی به React یا VueJS یا Vanila JS بودن نداره! اینکه از Shadow Dom و Virtual DOM استفاده بشه کافیه.
  2. برای SSR هم به روش‌های مختلفی میشه پیاده سازی کرد.

۳.برای Bundle کردن هم بهتره با ابزاری پیش بریم ک روش مسلط تریم. ک معمولا webpack معروف تره.

۴.ضمنا CSS هم هیچ ربطی به Performance نداره، جز اینکه انیمیشن ها تو CSS. سریعترن! و ترجیحا کمتر تو JavaScript باشن بهتره

۴. آخرین نکته و یجورایی مهم ترینش اینه که چطوری کد بزنی لوپ اضافی نداشته باشی، الکی rerender نکنی و غیره

در آخر هم باید اینو بگیم که معمولا خیلی سخته از اول حواست به همه اینا باشه، اینا معمولا بعد از این مطرح میشه که MVP زده شده و حالا میایم Refactor میکنیم و Monitor میکنیم که بهترش کنیم