توسعه وردپرس 6.2 بهبودهایی را در نحوه عملکرد تیم توسعه اصلی ایجاد کرد که منجر به تمرکز مداوم بر عملکرد در هر مرحله از توسعه شد. این فرآیندهای جدید در زمان معرفی تغییرات با مشکلاتی مواجه می شوند و از ورود آنها به نسخه نهایی جلوگیری می کند.
دو بهبود مسئول این تغییر عبارتند از:
- عملکرد جدید منجر می شود
- محک زدن خودکار
این دو بهبود به تیم وردپرس اجازه دادند تا عملکرد را بخشی از توسعه هر بخش وردپرس قرار دهند و اساساً آن را به DNA توسعه آن اضافه کنند.
درس های آموخته شده از وردپرس 6.1
نسخه قبلی وردپرس، نسخه 6.1، با کاهش کلی عملکرد مشخص شد، چیزی که وردپرس از آن به عنوان رگرسیون عملکرد یاد می کند.
رگرسیون عملکرد زمانی است که بهبود منجر به کاهش عملکرد شود.
چیزی که آنها کشف کردند این بود که حتی با وجود اینکه آنها بزرگترین علت منفرد رگرسیون عملکرد را برطرف کردند و همچنین بهبودهای عملکردی متعددی را معرفی کردند، عملکرد کلی سایت همچنان به دلیل تغییراتی که عملکرد را کاهش می داد، پایین آمد.
وردپرس درسی را که از نسخه 6.1 آموختند توضیح داد:
علیرغم پیشرفتهای دیگر عملکرد در آن نسخهها، رگرسیونها عملاً پیشرفتها را لغو کردند.
…هر چه رگرسیون های بیشتری وجود داشته باشد، به طور کلی سایر بهبودهای عملکرد تاثیرگذارتر است.”
رهبر عملکرد توسعه وردپرس
فرآیند توسعه وردپرس 6.2 با هماهنگی یک نقش اصلی عملکرد جدید تکمیل شد.
رهبری عملکرد آغازگر تغییرات و بهبودها نیست. این کار تیم توسعه بود.
هدایت عملکرد به سادگی بین تیم ها هماهنگ می شود.
هر یک از تیم ها مسئول برنده شدن عملکرد در پروژه های خود هستند.
رهبر اجرا توضیح داد که چگونه این کار کرد:
“این به من امکان داد تا از نزدیک با سایر مشارکت کنندگان همکاری کرده و از آنها حمایت کنم و رویکردهای سنجش عملکرد خود را با آنها هماهنگ کنم.
…برنده عملکرد در این نسخه نتیجه کار عالی چندین مشارکت کننده در شناسایی نقاط ضعف عملکرد است.
معرفی نقش اصلی Performance … صرفاً نمایش بهتری از عملکرد در کنار سایر اعضای تیم انتشار به ارمغان آورد.
بنچمارک خودکار وردپرس
وردپرس خاطرنشان کرد که رگرسیون های عملکرد بدون توجه اتفاق می افتد زیرا هر تغییری نمی تواند به صورت دستی برای تأثیر بر نسخه کلی بررسی شود.
وردپرس برای رفع نقص عدم امکان تست دستی تک تک تغییرات در هسته، معیار عملکرد خودکار را برای همه تغییرات معرفی کرد.
معیار عملکرد خودکار، تأثیر هر تغییر را اندازهگیری میکند تا گلوگاههای عملکردی پنهان را قبل از ورود به نسخههای عرضهی نهایی پیدا کند.
وردپرس این تغییر گردش کار را توضیح می دهد:
“چندین مشارکت کننده برای معرفی یک عملکرد خودکار اندازه گیری گردش کار CI در هسته وردپرس با یکدیگر همکاری کرده اند.
با این گردش کار CI، معیارهای عملکرد هسته وردپرس اکنون برای هر commit ثبت می شود و در این داشبورد موجود است.
این به ما امکان می دهد به راحتی یک رگرسیون بالقوه را در جایی که قبلاً مورد توجه قرار نمی گرفت، تشخیص دهیم.
به روز رسانی وردپرس 6.1 رگرسیون های عملکردی را در گوتنبرگ معرفی کرد، مشکلاتی که با آزمایش خودکار پیش از موعد رفع می شدند.
تستهای عملکرد خودکار در هر core commit در GitHub انجام میشود تا نحوه عملکرد وردپرس در قالبهای بلاک و کلاسیک را اندازهگیری کند.
این آزمایش همچنین معیارهای زمان بندی سرور را با استفاده از آخرین نسخه PHP جمع آوری می کند.
اطلاعات بیشتر در مورد نظارت بر عملکرد خودکار در اینجا: نظارت بر عملکرد خودکار در هسته وردپرس.
مشارکت کنندگان وردپرس با هم کار کردند
مشارکت کنندگان وردپرس برای شناسایی مناطقی که نیاز به بهبود دارند با تمرکز مجدد بر عملکرد کار کردند.
بررسی عملکرد سمت سرور هسته وردپرس با ابزارهای منبع باز Xdebug، XHProf و Blackfire (SaaS) انجام شد.
محک زدن هسته وردپرس چندان ساده نبود زیرا گروه های توسعه دهنده از ابزارهای مختلفی استفاده می کردند.
استانداردسازی ابزارهای مورد استفاده برای اندازهگیری عملکرد در حال حاضر در حال انجام است، به طوری که همه تیمها یک چیز را با مجموعهای از ابزارها اندازهگیری میکنند.
واقعیت: وردپرس 6.2 عملکرد بهتری دارد
نتیجه معیارهای عملکرد خودکار و هماهنگی عملکرد بین تیم های توسعه، بهبود قابل توجهی در معیارهای عملکرد است.
وردپرس به اشتراک گذاشت:
«بر اساس معیارهای آزمایشگاهی، وردپرس 6.2 به طور کلی 14-18٪ سریعتر برای تم های بلوک و 2-5٪ سریعتر برای تم های کلاسیک بارگذاری می شود (اندازه گیری شده از طریق بزرگترین رنگ محتوا / LCP).
به خصوص عملکرد سمت سرور (اندازه گیری شده از طریق Time to First Byte / TTFB) شاهد افزایش 17-23٪ برای تم های بلوک و 3-5٪ برای تم های کلاسیک است که به طور مستقیم به زمان بارگذاری کلی کمک می کند.
تست عملکرد نه تنها در مرحله تعهد اصلی اتفاق میافتد، بلکه محک زدن برای کل نامزدهای انتشار وردپرس انجام میشود.
وردپرس این فرآیند را شرح می دهد:
“در این مرحله به طور خاص، توصیه می شود به جای اندازه گیری در محیط توسعه هسته وردپرس، از نسخه ZIP تولیدی هسته وردپرس (به عنوان مثال نسخه بتا یا RC خاص) استفاده کنید.
دستور ‘benchmark-web-vitals’ که در بخش قبل ذکر شد برای این مورد مناسب است، زیرا معیارهای عملکرد سطح بالایی را ارائه می دهد که عملکرد سمت سرور و مشتری را نشان می دهد.
سپس دادههای بهدستآمده را میتوان با معیارهای مشابه از نسخه پایدار قبلی مقایسه کرد تا در مورد چگونگی تغییر عملکرد هسته وردپرس (امیدوارم بهبود یافته) در نسخه جدید ایده بگیرید.
وردپرس گوشه ای از عملکرد را روشن کرد
وردپرس در چند سال گذشته سخت کار کرده است تا بهبود عملکرد را در گردش کار توسعه ادغام کند.
در ابتدا تیم عملکرد بهبودهایی مانند کاهش جاوا اسکریپت اضافی یا غیر ضروری که برای هر صفحه بارگذاری می شد و اضافه کردن مواردی مانند بارگذاری تنبل تصاویر را انجام می داد.
اما اکنون تیم عملکرد در حال ادغام معیارهای عملکرد مستقیماً در مرحله توسعه هر مؤلفه بهبود یافته در سطح تعهد GitHub و استفاده از محک زدن عملکرد خودکار برای ارتقاء مقیاس است.
در اصل، وردپرس با موفقیت عملکرد را به DNA فرآیند توسعه خود اضافه کرده است.
این یکی از مهمترین تغییرات در نحوه توسعه وردپرس است و نشانه این است که وردپرس در مسیر رسیدن به سایر سیستمهای مدیریت محتوا قرار دارد.
در نهایت، وردپرس ممکن است به بازی عملکرد بازگردد.
اطلاعیه کامل وردپرس را بخوانید که شامل جزئیات پیشرفت آنها و پیوندهایی به ابزارهای مورد استفاده برای معیار عملکرد است.
مزایای اولویت بندی و اندازه گیری عملکرد در وردپرس 6.2
تصویر برجسته توسط Shutterstock/Asier Romero
منبع: https://www.searchenginejournal.com/wordpress-performance/485479/