
در دنیای پرشتاب وب، سرعت حرف اول را می زند. وقتی کاربران فقط چند ثانیه برای بارگذاری یک سایت صبر می کنند، هر میلی ثانیه اهمیت دارد. در اینجا Varnish Cache بهعنوان یکی از قدرتمندترین ابزارهای کش وب، نقش خود را ایفا میکند.
با بهرهگیری از Varnish، می توانید سرعت پاسخدهی سرور خود را به طرز چشمگیری افزایش داده و تجربه ای روان تر برای کاربران فراهم کنید. در این مقاله، گام به گام با نصب Varnish Cache 7 در اوبونتو 22.04 آشنا می شوید — از نصب اولیه تا تنظیمات نهایی برای عملکردی بهینه.
📌 همین حالا شروع کنید و با چند دستور ساده، با نصب Varnish Cache 7 در اوبونتو 22.04 سرعت وب سایت خود را چند برابر کنید!
Varnish Cache 7 و ویژگی های آن
Varnish Cache یک نرم افزار است که بین کاربر و سرور سایت قرار میگیرد و باعث افزایش سرعت سایت می شود. این کار را با ذخیره کردن پاسخ های تکراری در حافظه انجام می دهد، تا نیاز نباشد سرور هر بار دوباره آن ها را تولید کند. به این شکل، سرعت سایت تا چند صد برابر بیشتر می شود. نسخه ۷ این نرم افزار امکانات مهمی دارد که در ادامه معرفی می شوند.
1- مهاجرت به موتور regex جدید (PCRE2)
2- ابزار های پیشرفتهتر برای نمایش و log
3- امکانات توسعه در VCL
4- VMOD و قابلیت های مدیریتی بیشتر
نحوه نصب و پیکربندی 7 Varnish Cache در توزیع اوبونتو
در ادامه موارد لازم برای نصب و مراحل پیکربندی Varnish Cache 7 در توزیع اوبونتو را بررسی کردیم:
پیش نیاز های نصب 7 Varnish Cache
- نصب اوبونتو 22.04
- داشتن حساب کاربری با دسترسی SUDO
- به روزرسانی بسته های کلاینت سرور به آخرین نسخه
📌 مرحله اول: انتخاب نسخه مناسب Varnish
پیشنهاد می کنیم از نسخه 6.0 LTS Varnish Cache استفاده کنید، چون این نسخه پایدار است، مدت طولانی پشتیبانی می شود و به طور منظم به روزرسانی می شود.
📌 مرحله دوم: ثبت مخزن بسته
قبل از نصب Varnish، باید مخزن رسمی آن را اضافه کنیم؛ وگرنه ممکن است نسخهای که همراه با لینوکس است نصب شود.
دستور زیر را اجرا کنید:
sudo apt-get update
این دستور لیست بسته ها را به روزرسانی کرده تا اطلاعات جدید دریافت شود و دستور بعدی درست اجرا شود و همچنین ابزارهای لازم برای تنظیم مخزن را نصب میکند:
sudo apt-get install debian-archive-keyring curl gnupg apt-transport-https
دستور بعدی کلید GPG را به سیستم اضافه می کند تا بتواند بسته ها را تأیید کند:
curl -fsSL https://packagecloud.io/varnishcache/varnish60lts/gpgkey | gpg --dearmor | sudo tee /etc/apt/keyrings/varnishcache_varnish60lts-archive-keyring.gpg > /dev/null
حالا که ابزار های مورد نیاز نصب شده اند، می توانیم مخزن اضافه کنیم:
. /etc/os-release sudo tee /etc/apt/sources.list.d/varnishcache_varnish60lts.list > /dev/null <<-EOF deb [signed-by=/etc/apt/keyrings/varnishcache_varnish60lts-archive-keyring.gpg] https://packagecloud.io/varnishcache/varnish60lts/$ID/ $VERSION_CODENAME main EOF sudo tee /etc/apt/preferences.d/varnishcache > /dev/null <<-EOF Package: varnish varnish-* Pin: release o=packagecloud.io/varnishcache/* Pin-Priority: 1000 EOF
در پایان، باید دوباره لیست بسته ها را به روزرسانی کنیم تا مخزن Packagecloud هم اضافه شود:
sudo apt-get update
📌 مرحله سوم: نصب Varnish
حالا که مخزنها اضافه شدهاند، میتوانید با دستور زیر Varnish 6.0 LTS را نصب کنید. این دستور دقیقاً همین نسخه را نصب میکند:
sudo apt-get install varnish
📌 مرحله چهارم: پیکربندی Varnish
بعد از نصب Varnish، باید تنظیماتی برای اجرای آن انجام دهید که شامل دو مرحله است:
- تنظیم Systemd
فرآیند varnishd با systemd کنترل میشود و فایل آن در مسیر /lib/systemd/system/varnish.service قرار دارد:
[Unit] Description=Varnish Cache, a high-performance HTTP accelerator After=network-online.target nss-lookup.target [Service] Type=forking KillMode=process # Maximum number of open files (for ulimit -n) LimitNOFILE=131072 # Locked shared memory - should be enough to lock the shared memory log # (varnishd -l argument) # Default log size is 80MB vsl + 1M vsm + header -> 82MB # unit is bytes LimitMEMLOCK=85983232 # Enable this to avoid "fork failed" on reload. TasksMax=infinity # Maximum size of the core file. LimitCORE=infinity ExecStart=/usr/sbin/varnishd \ -a :6081 \ -a localhost:8443,PROXY \ -p feature=+http2 \ -f /etc/varnish/default.vcl \ -s malloc, 256m ExecReload=/usr/sbin/varnishreload [Install] WantedBy=multi-user.target
برای تغییر تنظیمات زمان اجرا در فایل مربوطه، این دستور را اجرا کنید. ویرایشگری باز خواهد شود تا فایل تنظیمات که از /lib/systemd/system/varnish.service آمده، ویرایش کنید:
sudo systemctl edit --full varnish
بعد از تغییرات، فایل را ذخیره و ویرایشگر را ببندید تا نسخه جدید فایل در /etc/systemd/system/varnish.service ساخته شود.
- تغییر پورت و مقدار حافظه کش
در فایل پیشفرض، Varnish روی پورت ۶۰۸۱ تنظیم شده است که محافظه کارانه است. ما پورت را به ۸۰ تغییر می دهیم و حافظه کش را به ۲ گیگابایت افزایش می دهیم. بعد از تغییرات، دستور ExecStart به شکل جدیدی خواهد بود.
ExecStart=/usr/sbin/varnishd \ -a :80 \ -a localhost:8443,PROXY \ -p feature=+http2 \ -f /etc/varnish/default.vcl \ -s malloc, 2g
📌 مرحله پنجم: پیکربندی وب سرور برای کار با Varnish
از آنجا که Varnish روی پورت ۸۰ تنظیم شده، وب سرور باید روی پورت دیگری مثل ۸۰۸۰ تنظیم شود:
- Apache
اگر از Apache استفاده می کنید، باید پورت پیش فرض آن را از ۸۰ به ۸۰۸۰ تغییر دهید
sudo find /etc/apache2 -name '*.conf' -exec sed -r -i 's/\bListen 80\b/Listen 8080/g; s/<VirtualHost ([^:]+):80>/<VirtualHost \1:8080>/g' {} ';'
- Nginx
اگر از Nginx استفاده می کنید، فقط کافی است پورت listen را در پیکربندی های مختلف میزبان مجازی تغییر دهید.
sudo find /etc/nginx -name '*.conf' -exec sed -r -i 's/\blisten ([^:]+:)?80\b([^;]*);/listen \18080\2;/g' {} ';'
📌 مرحله ششم: پیکربندی VCL backend
بعد از تغییر پورت وب سرور به ۸۰۸۰، باید این تغییر در فایل VCL نیز اعمال شود. خوشبختانه، فایل VCL پیش فرض که در مسیر /etc/varnish/default.vcl قرار دارد، از قبل backend را روی ۱۲۷.۰.۰.۱:۸۰۸۰ تنظیم کرده است:
vcl 4.1; default backend { .host = "127.0.0.1"; .port = "8080"; }
📌 مرحله هفتم: راه اندازی مجدد سرویس ها
برای اعمال تغییرات، باید Varnish و وب سرور را دوباره راه اندازی کنیم:
- Apache
دستور زیر را اجرا کنید:
sudo systemctl restart apache2 varnish
- Nginx
دستور زیر را وارد کنید:
sudo systemctl restart nginx varnish
سخن پایانی
در این آموزش، مراحل نصب و پیکربندی Varnish Cache 7 بر روی اوبونتو 22.04 را به صورت گام به گام مرور کردیم؛ از افزودن مخازن رسمی و نصب نرم افزار تا پیکربندی پورت ها و تنظیمات فایل VCL. اجرای این مراحل باعث بهبود چشمگیر سرعت پاسخ دهی سرور و افزایش کارایی سایت شما خواهد شد.
اگر به دنبال استفاده حرفه ای تر از Varnish، یا راه اندازی یک سرور لینوکسی قدرتمند برای اجرای آن هستید، می توانید همین حالا از صفحه خرید سرور مجازی لینوکس در آذرسیس بازدید کنید. تیم ما آماده ارائه پشتیبانی تخصصی و خدمات حرفه ای برای مدیریت سرور و بهینه سازی عملکرد شماست.
همچنین برای اطلاعات تکمیلی و مستندات رسمی، میتوانید به سند رسمی Varnish Cache مراجعه نمایید.
پورت پیش فرض 6081 است. برای اینکه Varnish روی پورت 80 (پیش فرض HTTP) کار کند، باید آن را تنظیم کنید.
فایل اصلی پیکربندی Varnish با پسوند .vcl در مسیر /etc/varnish/default.vcl قرار دارد.