varnish چیست ؟ (دریافت پیوندک)

نوشته شده در تاریخ: 25/06/93 | نویسنده:هادی شهیدی

کش وارنیش Varnish Cache

وارنیش (Varnish) یک سیستم کشینگ برای وب سرور است.وارنیش هم بصورت کشینگ هم بصورت یک سیستم امنیتی مورد استفاده قرار میگیرد.
سیستم عملکرد آن بصورتی است که در  مقابل وب سرور آپاچی قرار میگیرد و باعث افزایش سرعت وب سایت روی هاست میشود.

وارنیش(Varnish) چگونه کار میکند ؟
سیستم کشینگ وارنیش اطلاعات استاتیک وب سایت شما را روی حافظه سرور هاست زخیره میکند و به سرعت به درخواستهای ارسال شده از سمت کاربران پاسخ میدهد.
مزیت دیگر این سیستم کاهش پردازش CPU و پایین آمدن میزان CPU Usage ، افزایش سرعت نمایش فایل ها و اطلاعاتی از دیتابیس است که لازم نیست بصورت لحظه ای و آنی اطلاعات آنها استخراج و نمایش داده شود.

عملکرد وب سرور آپاچی با کشینگ وارنیش(Varnish)
در روی وب سرورها همیشه درخواست هایی وجود دارد که این درخواست ها بصورت تکراری و بدون تغییر روی سرور اصلی است و با پاسخگویی به این نیاز ها از طریق سیستم کشینگ سرعت پاسخگویی افزایش و استفاده از منابع سرور به شدت کاهش می یابد.
در تصویر زیر دیاگرام عملکرد سیستم کشینگ وارنیش با وب سرور آپاچی نشان داده شده است :

دیاگرام عملکرد وب سرور Apache با Varnish

دیاگرام عملکرد وب سرور Apache با Varnish

عملکرد وب سرور آپاچی بدون کشینگ وارنیش(Varnish)
همانطوری که در تصویر زیر مشاهده میکنید وب سرور بدون استفاده از کشینگ وارنیش تعداد زیادی ارتباط با پی اچ پی و در نهایت با دیتابیس مای اس کیو ال(mysql) برقرار میشود که باعث کند شدن و استفاده غیر لازم از منابع سرور مانند CPU میشود.

دیاگرام زیر نحوه عملکرد آپاچی بدون سیستم کشینگ وارنیش را نمایش میدهد.

وب سرور Apache بدون استفاده از Varnish

وب سرور Apache بدون استفاده از Varnish

توضیحات تکمیلی
در سیستم Varnish Cache امکان ارسال http header به اسکریپت برنامه نویسی یا کامپیوتر بازدیدکننده وجود دارد که این موضوع از طریق زبان برنامه نویسی جاوا موسوم به VCL امکان پذیر است.