بازگشت به دوره

بازاریابی دیجیتال

0% تکمیل‌شده
0/0 مرحله

بهبود عملکرد وب‌سایت

درس 8, سر‌فصل 2
در حال پردازش

بهبود عملکرد وب‌سایت

آذر 1, 1403
پیشرفت درس
0% تکمیل‌شده

اهداف یادگیری

  • آشنایی با روش‌های کوچک‌سازی و فشرده‌سازی برای بهبود سرعت وی‌سایت
  • آشنایی با روش‌های بهینه‌سازی عناصر صفحه
  • بررسی روش‌های افزایش سرعت وب‌سایت

روش‌هایی برای بهبود عملکرد وب‌سایت

در بخش قبلی دیدید که عملکرد وب‌سایت چه تاثیری بر تجربه‌ی کاربر و و نتیجه‌ی بازاریابی شما دارد. حال که عملکرد وب‌سایت تا این اندازه مهم است، روش‌های بهبود عملکرد نیز باید به همان میزان مورد توجه قرار گیرد. اگر به عنوان بازاریاب یا هر موقعیتی غیر از برنامه‌نویس یا توسعه‌دهنده مشغول به مطالعه این مبحث هستید، احتمالاً با خود فکر می‌کنید که به عنوان شخصی که چیزی از بخش فنی وب‌سایت نمی‌داند، چطور می‌توانید در بهبود عملکرد آن نقش داشته‌باشید. لازم نیست نگران این موضوع باشید. نه قرار است برنامه‌نویسی کنیم و نه حتی می‌خواهیم کدی را تغییر دهیم. در این بخش صرفاً می‌خواهیم با عوامل تاثیرگذار بر عملکرد وب‌سایت آشنا شویم تا بهتر بتوانیم آن را مورد ارزیابی قرار دهیم. چقدر زمان می‌برد که کاربر اولین عنصر صفحه وب‌سایت ما را ببیند؟ زمان مناسب چقدر است؟ چه چیزی باعث می‌شود این زمان طولانی‌تر یا کوتاه‌تر شود؟

در حالت مطلوب، یک صفحه وب باید در ۵.۳ ثانیه قابل تعامل شود. این مقدار زمانی است که کاربر قبل از کلیک بر روی کلید بازگشت برای پیدا کردن سایتی که سریع‌تر باز شود، به شما زمان می‌دهد. آیا وب‌سایت شما در این فاصله می‌تواند با نمایش صفحه، برای خوانده شدن از مخاطبتان شانس دوباره بگیرد؟ اگر مطمئن نیستید، برای بررسی وضعیت عملکرد وب‌ساتتان می‌توانید به ابزار Website Grader مراجعه کنید.

برای ارزیابی سرعت بارگذاری وب‌سایت، معیارهای مختلفی را باید مورد بررسی قرار دهید. FCP مخفف First Contentful Paint یکی از معیارهای گوگل برای اندازه‌گیری سرعت عملکرد وب‌سایت است. FCP مدت زمانی است که طول می‌کشد تا متن یا تصاویر به کاربران نشان داده‌شود (از زمان ارسال درخواست برای بارگذاری محتوای سایت تا نمایش محتوا روی صفحه). زمان تعامل یا TTI (مخفف Time to Interactive) زمانی است که طول می‌کشد تا صفحه برای کاربر قابل تعامل شود. به عنوان مثال اینکه سایت بتواند در ۵۰ میلی‌ثانیه به کلیک کاربر واکنش نشان دهد.

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

بهبود سرعت بارگذاری صفحه

راه‌های زیادی برای افزایش سرعت بارگذاری صفحه وجود دارد که در میان آن‌ها می‌توان به کوچک‌سازی (Minification) و فشرده‌سازی (Compression) اشاره کرد. برای درک بهتر عملکرد هر یک از این روش‌ها، بیایید جداگانه آن‌ها را بررسی کنیم.

کوچک‌سازی (Minification)

برای درک کوچک‌سازی، ابتدا باید چند چیز درباره HTML، CSS و JavaScript بدانید. این‌ها اجزای هر وب‌سایتی هستند که ساختار، سبک و رفتار یک صفحه وب را تعریف می‌کنند. در واقع صفحات وب‌ از همکاری این اجزاء حاصل می‌شود. HTML ساختار پایه (بستر) سایت‌ را فراهم می‌کند که توسط CSS و JavaScript بهبود یافته و به نوعی اصلاح می‌شود. از CSS برای ویرایش نحوه ارائه، قالب‌بندی و چیدمان یک صفحه  و JavaScript برای کنترل رفتار عناصر مختلف در آن استفاده می‌شود. هر سه مورد CSS ،HTML و JavaScript می‌توانند کوچک‌سازی شوند. البته نگران انجام این کار نباشید. این کار را توسعه‌دهندگان وب‌سایت انجام می‌دهند. مگر اینکه یک بازاریاب فنی باشید و وب‌سایتتان را خودتان ساخته‌باشید.

خب، حالا نوبت پرداختن به روش کوچک‌سازی است. کوچک‌سازی یا Minification، فرآیند کاهش اندازه منابع با حذف نظرات و کاراکترهای غیرضروری در کد منبع است. برنامه‌نویسان برای اینکه سایر توسعه‌دهندگان یا حتی خودشان بتوانند در آینده راحت‌تر با کدهای نوشته شده کار کنند، با اضافه کردن فضاهای سفید، نظرات و نام‌‌گذاری‌های طولانی متغیرها سعی می‌کنند که فهم کدها را آسان‌تر کنند. این کاراکترهای اضافی برای سهولت کار برنامه‌نویسان مفید است اما برای ماشین‌ها کاربردی ندارند. در واقع این امر حجم فایلی که باید منتقل شود (و مرورگر باید آن را بخواند) را بیشتر می‌کند. اینجاست که کوچک‌سازی می‌تواند به شما کمک کند. این فرآیند عملاً عناصر اضافی را حذف کرده و خواندن آن را برای ماشین‌ها آسان‌تر و البته سریع‌تر می‌کند. البته لازم به ذکر است که کوچک‌سازی تغییر دائمی در کد نیست. به طور کلی، کوچک‌سازی نسخه جدیدی از کد منبع شما ایجاد می‌کند و شما همیشه می‌توانید با خارج کردن کد خود از حالت کوچک‌شده، به فایل اصلی و توضیحات خود دسترسی داشته‌باشید.

در فرآیند کوچک‌سازی HTML، تمام کاراکترهای غیر ضروری از آن حذف می‌شود. کوچک‌سازی CSS تمام کاراکترها و نظرات غیرضروری را از stylesheet شما  (فایلی که حاوی قوانین فونت و طرح‌بندی است) حذف می‌کند و به طور مشابه در کوچک‌سازی JavaScript، تمام کاراکترهای غیرضروری و نظرات از آن حذف می‌شود. برای کوچک کردن HTML، می‌توانید از افزونه PageSpeed ​​Insights Chrome کمک بگیرید. برای CSS و JavaScript نیز به ترتیب می‌توانید CSS Compressor و JS Compress را امتحان کنید. به این ترتیب ما فایل‌های وب‌سایت حاوی کد CSS ،‌HTML و JavaScript را کوچک می‌کنیم تا اندازه فایل‌ها کاهش یابد و مرورگر وب بتواند آن‌ها را سریع‌تر بخواند.

فشرده‌سازی (Compression)

دومین روشی که می‌توانید برای بهبود سرعت بارگذاری صفحه از آن استفاده کنید، فشرده‌سازی یا Compression است. احتمالاً تا به حال برایتان پیش آمده که برای ارسال یک فایل با حجم بالا از طریق ایمیل، مجبور شده‌باشید آن را به یک فایل ZIP تبدیل کنید که فشرده‌تر شود و حجمش کاهش یابد. این همان کاری است که فشرده‌سازی انجام می‌دهد.

زمانی که یک کاربر وارد وب‌سایت شما می‌شود، درخواستی به سرور شما ارسال می‌شود که در واقع یک برنامه است که صفحات وب را ذخیره، پردازش و ارائه می‌کند. بدیهی است که هر چه این فایل‌ها بزرگ‌تر باشند، مدت زمان بیشتری برای بارگذاری آن‌ها نیاز است. فشرده‌سازی، قطعات تکراری کد را با علامت‌هایی جایگزین می‌کند که به اولین مورد از آن کد ارجاع داده می‌شود. هدف از فشرده‌سازی، کاهش اندازه فایل حین انتقال آن از سرور به مرورگر است. پس از رسیدن فایل به مرورگر، باید آن را از حالت فشرده خارج کرد. درست همان طور که یک پوشه ZIP را پس از دانلود، از حالت فشرده خارج کنید تا بتوانید محتویات آن را مشاهده نمایید. مرورگرها به صورت خودکار این کار را انجام می‌دهند. برای فشرده‌سازی می‌توان از راه‌حل‌هایی مثل gzip و Brotli استفاده کرد که هر دو رایگان و منبع باز (open source) هستند. فشرده‌سازی یک کار فنی است و به سروری که از آن استفاده می‌کنید بستگی دارد.

بهینه‌سازی عناصر صفحه وب

بیایید به عناصری که بر اندازه یک صفحه وب‌ تأثیر می‌گذارند نگاهی بیندازیم. اما قبل از آن باید بدانیم که منظور از اندازه‌ی صفحه چیست. اندازه صفحه (page size یا page weight) اندازه کلی حافظه‌ مورد نیاز برای یک صفحه است. به عبارت دیگر می‌توان آن را حجم کلی یک صفحه با تمام عناصرش در نظر گرفت. کاهش اندازه کلی صفحه، باعث افزایش سرعت بارگذاری آن می‌شود. پیش‌تر دیدیم که کوچک‌سازی و فشرده‌سازی، اندازه HTML، CSS و JavaScript را کاهش می‌دهند. اما درباره عناصری که در صفحه قرار دارند چه باید کرد؟

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

  • استفاده از فونت‌های Google به جای فونت‌های سفارشی
  • استفاده از راه‌حل‌های موجود برای میزبانی (hosting) ویدئو
  • فشرده‌سازی تصاویر
  • ساخت تصاویر واکنش‌گرا یا ریسپانسیو

بیایید نگاه کلی‌ای به راه‌حل‌های فوق بیندازیم.

استفاده از فونت‌های Google

اگر در صفحات وب‌سایت شما از فونت‌های سفارشی استفاده شده‌باشد و بازدیدکننده، آن فونت را بر روی سیستم عامل خود نداشته‌باشد، سیستم مجبور می‌شود فایل‌های وب فونت را همراه با بقیه فایل‌ها دانلود کند.این موضوع می‌تواند زمان انتظار کاربر را افزایش دهد. فراموش نکنید که به صورت کلی، استفاده از فونت‌های مختلف اندازه/وزن صفحه شما را افزایش می‌دهند؛ فونت‌های سفارشی بیشتر!

Google Fonts مجموعه‌ای از فونت‌ها است که توسط گوگل میزبانی می‌شود و همه مرورگرهای وب به آن دسترسی دارند. این فونت‌ها توسط گوگل بهینه‌سازی شده و در نتیجه استفاده از آن‌ها می‌تواند اندازه صفحه شما را کاهش دهد. بنابراین اگر کسی از آخرین نسخه مرورگر وب استفاده کند، آخرین نسخه بهینه‌سازی‌شده آن فونت را دریافت می‌کند که این خود باعث می‌شود دانلود فونت‌های Google سریع‌تر انجام شود. علاوه بر این، استفاده از این فونت‌ها رایگان است و ممکن است افراد قبلاً این فونت‌ها را در مرورگر خود ذخیره کرده‌باشند. یعنی فونت‌ها در سیستم آماده استفاده هستند و نیازی به دانلود آن‌ها نیست.

میزبانی ویدئو

اگر ویدئوها را بر روی وب‌سایت بارگذاری شوند (ذخیره بر روی سرور) مقداری وزن اضافی غیرضروری به وب‌سایت تحمیل می‌شود. این به این معنی است که از پهنای باند سرور شما برای نمایش ویدئو استفاده می‌شود و اندازه کلی صفحه افزایش می‌یابد. نکته‌ی دلنشین این است که این موضوع به راحتی قابل حل است. اصولاً برای نمایش ویدئو، از یک میزبان مانند YouTube، Vimeo یا Amazon در سایت‌های خارجی و از آپارات و نماشا برای سایت‌های داخلی استفاده می‌شود. راه‌حل‌ها می‌توانند به طور قابل توجهی وزن صفحه شما را کاهش دهند. اینگونه می‌توانید به جای ذخیره محتوای ویدئویی بر روی سرور خود، از سرورهای آن‌ها استفاده کنید و برای نمایش آن بر روی صفحه وب خود، ویدئوی مورد نظر را از طریق کدی که پلتفرم میزبان به شما ارائه می‌دهد فراخوانی کنید.

این کار مزایای دیگیر را نیز برای شما به همراه دارد. هر کدام از این پلتفرم‌های میزبان، برای اطمینان از تجربه کاربری مطلوب و کیفیت بهینه نمایش، اقداماتی انجام می‌دهند که می‌تواند برای شما و محتوایتان نیز سودمند باشد. هنگام انتخاب پلتفرم میزبان، به مزایا و معایب آن‌ها توجه داشته‌باشید و پس از بررسی امکانات، گزینه مناسب کسب‌وکار خود را انتخاب نمایید. یوتیوب به دلیل رایگان بودن و محبوبیت بالا، انتخاب اول بسیاری از افراد است. اما نمی‌توان نادیده گرفت که ویدئوهای آن شامل تبلیغات هستند و در انتهای ویدئو پیشنهادهای اضافی به کاربر ارائه می‌شود. با توجه به محدودیت دسترسی به این پلتفرم، ممکن است دسترسی به آن برای کاربران داخلی مناسب نباشد. آپارات با وجود تبلیغات در ابتدای ویدئو، بزرگ‌ترین مرجع ویدئو در ایران بوده که علاوه بر کاهش هزینه هاست، امکان بازدید بالایی برای ویدئوهای شما فراهم می‌سازد. تماشا، در مقایسه با آپارات شاید انتخاب اول کاربران نباشد اما با توجه به سرورهای حرفه‌ای و قدرتمندی که برای آپلود ویدئوهای ۳۶۰ درجه در اختیار کاربران قرار می‌دهد می‌تواند گزینه مناسب دیگری برای کاربران داخلی باشد. ویمئو با توجه به اینکه یک پلتفرم بدون تبلیغ است، هزینه اشتراک دریافت می‌کند و در نتیجه، گزینه‌ی مناسبی برای کاربران داخلی محسوب نمی‌شود.

فشرده‌سازی تصاویر

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

اگر از تصاویری مثل لوگو در صفحه وب خود دارید، از فایل‌های SVG استفاده کنید. فایل SVG یک فایل گرافیکی است که از فرمت گرافیکی وکتوری دو بعدی استفاده می‌کند و به طور خاص برای فضای اینترنت طراحی شده‌است. این نوع فایل‌ها می‌توانند به طور خودکار به اندازه هر صفحه‌ای در بیایند و همین مزیت است که باعث می‌شود عملکرد بهینه‌ای در صفحه داشته‌باشد. به طور کلی، در مورد هر تصویری (نه فقط SVG‌ها) اندازه تصاویر اهمیت بسیاری دارد؛ چراکه فضای اشغالی تصویر در صفحه را مشخص می‌کند. به همین خاطر توصیه می‌شود که برای تصاویری مانند لوگو بر روی وب‌سایت، آن‌ها را به عنوان یک فایل SVG ذخیره کنید.

ایجاد تصاویر واکنش‌گرا

اما با تصاویر واکنش‌گرا یا responsive چه کنیم؟ تصاویر واکنش‌گرا به تصاویری گفته می‌شود که روی دستگاه‌های مختلف با اندازه‌های صفحه، وضوح تصویر و ویژگی‌های متفاوت، به طرز مناسبی نمایش داده‌می‌شوند. این تصاویر اجزایی نیستند که بتوانید به راحتی آن‌ها را از صفحه حذف کنید. گوشی خود را بردارید و وبسایت خود را از طریق مرورگر موبایل مشاهده کنید. تصاویر چگونه به نظر می‌رسند؟ آیا به درستی با صفحه تطابق دارند؟ به طور ایده‌آل، صفحه شما هرگز نباید تصاویری با ابعاد بزرگتر از صفحه، به کاربر نمایش دهد. برای اعمال این تنظیمات احتمالاً به کمک برنامه‌نویسان خود نیاز دارید. ایجاد تصاویر واکنش‌گرا تنها با چند خط کد در HTML یا CSS امکان‌پذیر است. پس نگران آن نباشید.

بهینه‌سازی درخواست‌های HTTP

هر عنصری که در یک صفحه وب ظاهر می‌شود در واقع از جایی دیگر به نمایشگر شما ارسال می‌شود. یک درخواست HTTP به معنی ارسال درخواست اطلاعات از مرورگر (مثلاً Chrome یا Firefox) به سرور است، که در واقع یک کامپیوتر راه دور است که این درخواست را فراهم می‌سازد.در نهایت، سرور اجزای خواسته شده را ارسال کرده و این اجزا بر روی نمایشگر به شما نمایش داده‌می‌شود. سپس سرور همه چیزهایی که باید نمایش داده شود را تحویل می‌دهد. این اجز می‌تواند شامل متن، تصاویر، استایل‌ها، اسکریپت‌ها و همه چیزهای دیگری باشدکه یک صفحه وب را تشکیل می‌دهند.

درست است که کاهش اندازه فایل‌های HTML ،CSS و JavaScript شما بر اندازه دانلود کلی صفحه وب تأثیر می‌گذارد، اما نمی‌توان تاثیر تعداد درخواست‌های ارسالی را نیز نادیده گرفت. هر چه تعداد درخواست‌های HTTP کم‌تر باشد، در واقع تعداد دفعاتی که این دانلودها باید انجام شوند، کم‌تر است. دانلودهای کمتر به این معناست که وب‌سایت شما می‌تواند سریع‌تر نمایش داده‌شود. اگر می‌خواهید صفحه‌ای با عملکرد بالا داشته‌باشید، باید حداکثر ۳۰ درخواست داشته‌باشید. برای کاهش تعداد درخواست‌های HTTP می‌توانید زا استراتزی‌های زیر استفاده کنید:

  • ترکیب منابع متنی
  • ترکیب منابع تصویری
  • انتقال JavaScript مسدودکننده‌ی رندر
  • کاهش ریدایرکت‌ها

ترکیب منابع متنی

صفحات وب اغلب دارای چندین فایل اسکریپت هستند. برای مثال، ممکن است از چندین کتابخانه JavaScript برای انجام وظایف خاصی مانند اسلایدر تصویر، ردیابی آنالیتیکس یا انیمیشن‌ها استفاده شده‌باشند. نتیجه این است که این اسکریپت‌ها صفحه وب شما را کند می‌کنند. در نظر داشته‌باشید که هر فایلی که حذف کنید، یک درخواست HTTP کمتر برای بارگذاری صفحه شما نیاز خواهد‌بود.

چگونه می‌توانید چندین فایل متنی مانند JavaScript را در یک صفحه ترکیب کنید؟ از یک اتصال‌دهنده (باندلر) متن باز مانند Webpack یا Parcel برای ترکیب فایل‌های JavaScript استفاده کنید. راه‌اندازی با یک باندلر فنی است. اگر از منابع متنی متعدد استفاده می‌کنید و این باعث افزایش تعداد درخواست HTTP و در نتیجه کند شدن وب‌سایت شده‌است، با برنامه‌نویسان خود صحبت کنید و تا بتوانید این فایل‌ها را ترکیب کنید.

ترکیب منابع تصویری

همین منطق در مورد منابع تصویری نیز صدق می‌کند. وب‌سایتتان را مرور کنید و ببینید در کدام قسمت‌های از تصاویر تکراری استفاده شده‌است؟ احتمالاً اولین چیزی که به ذهنتان می‌رسد آیکون‌هاست.  به تمام جاهایی که در وبسایت خود از تصاویر مشابه استفاده می‌کنید فکر کنید. می‌توانید هر تصویر را به صورت فایل جداگانه‌ای در نظر بگیرید، اما این تعداد درخواست‌های HTTP را افزایش می‌دهد. اینجاست که باید اسپریت‌های تصویری استفاده کنید. اسپریت‌های تصویری یک گروه از تصاویر کوچک هستند که به جای چندین تصویر در یک تصویر فیزیکی قرار می‌گیرند. توسعه‌دهنده  CSS وب شما می‌تواند این تصویر واحد را به روش‌های مختلف ریپوزیشن کند تا فقط آیکونی که نیاز دارید (بخش مشخصی از آن تصویر کلی) نمایش داده‌شود. این کار می‌تواند به طور قابل توجهی تعداد فایل‌های تصویری (که باعث کاهش سرعت بارگذاری می‌شوند) را کاهش دهند. این کار علاوه بر افزایش سرعت، ثبات را افزایش می‌دهد و اطمینان حاصل می‌کند که تمام آیکون‌های شما در سراسر وب‌سایت شما مطابقت دارند.

انتقال مسدودکننده‌ی رندر

قرار دادن بلوک‌های JavaScript در هدر صفحه امری رایج است. بطور کلی JavaScript به وب‌سایت شما این امکان را می‌دهد که بر اساس معیارهای مختلف، رفتار متفاوتی داشته‌باشد. اما اگر رندر انجام نگیرد، رفتار وب‌سایت شما نمی‌تواند تغییر کند. این به این معناست که اساساً JavaScript در هدر قرار دارد، مانع بارگذاری سریع بقیه صفحه می‌شود. به همین خاطر است که به آن مسدودکننده‌ی رندر گفته‌می‌شود. حال چگونه می‌توان مشکل JavaScript مسدودکننده‌ی رندر را رفع کرد؟ برای تمام عملکردهای غیر‌ضروری، فایل‌های JavaScript خود را به انتهای صفحه منتقل کنید. در مورد عملکردهای حیاتی نیز، می‌توانید JavaScript خود را مستقیماً در HTML قرار دهید. فرض کنید که می‌خواهید در وب‌سایت یک پیغام خوش‌آمدگویی با نام کاربران به آن‌ها نمایش دهید. این یک عملکرد حیاتی JavaScript محسوب می‌شود؛ زیرا تجربه اولیه کاربران صفحه وب را کاملاً تغییر می‌دهد. برای اینکه مطمئن شوید این JavaScript در هنگام بارگذاری صفحه دقیقاً همان جایی که باید، اجرا می‌شود، می‌توانید آن را مستقیماً در جایی که نیاز است قرار دهید.

کاهش ریدایرکت‌ها

تغییر مسیر یا ریدایرکت، در واقع راهی برای هدایت افراد و موتورهای جستجو به یک URL دیگر (از صفحه‌ای که کاربر در آن قرار دارد و درخواست از آن ارسال می‌شود) است. ریدایرکت‌ها درخواست‌های HTTP به همراه دارند، در نتیجه باعث کاهش سرعت بارگذاری می‌شوند. با این وجود، انتقال به صفحات دیگر چیزی نیست که بتوانیم از آن بگذریم. اما از نظر شما، چند تغییر مسیر می‌توانید داشته‌باشید؟ اکر بخواهیم به این سوال به طور خلاصه پاسخ بدهیم، بهترین روش این است که در هر صفحه وب، حداکثر یک تغییر مسیر داشته‌باشید. تغییر مسیرهای ۳۰۳ (که نوعی انتقال دائمی محسوب می‌شود) و ۳۰۲ (انتقال موقت) معمولاً مشکلی ایجاد نمی‌کنند و لازم نیست که نگران سرعت بارگذاری باشید.

بهینه‌سازی حافظه یا کش صفحات

تا اینجا روش‌هایی را برای بهینه‌سازی حجم عناصر و تعداد درخواست‌ها مرور کردیم. با این وجود، در بهینه‌ترین حالت ممکن، ارسال درخواست و دریافت نتیجه امری زمان‌بر است. پس چگونه می‌توان تعداد درخواست‌های وقت‌گیر را کم کرد؟ تا چه حد می‌توان تعداد آن‌ها را کاهش داد؟ بدیهی است که شما تا حدی می‌توانید این مقدار را کاهش دهید. کاهش بیش از اندازه، کیفیت محتوای ارائه شده را تحت تاثیر قرار می‌دهد. پس باید روش دیگری را نیز به کار بگیرید. آن هم استفاده از حافظه پنهان یا کش (cach) است.

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

  •  کاهش هزینه‌های شبکه با کاهش درخواست‌ها به سرور شما
  • بهبود پاسخگویی با افزایش سرعت بارگذاری وب‌سایت برای مرورگرها
  • دسترسی به محتوای وب‌سایت حتی در صورت بروز قطعی سرور

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