هاست ووکامرس: فروشگاه اینترنتی چه چیزی لازم دارد

فروشگاه ووکامرس بار سنگین‌تری از یک سایت معمولی می‌سازد، چون صفحه‌های سبد خرید، تسویه و حساب کاربری برای هر کاربر متفاوت‌اند و نمی‌شود آن‌ها را کش کرد. یعنی هر بازدید واقعاً باید محاسبه شود. برای همین در هاست فروشگاهی، پردازنده و حافظه تعیین‌کننده‌اند نه گیگابایت. هاست ووکامرس در بازار ایران از ۱۳۳٫۳ هزار تومان در ماه شروع می‌شود.

این راهنما روی ۷۱ پلن فروشگاهی از ۱۰ شرکت ایرانی نوشته شده که قیمتشان را از صفحهٔ رسمی خودشان می‌خوانیم. آخرین بررسی: ۱۸ شهریور ۱۴۰۵.

چرا ووکامرس سنگین است

  • صفحه‌های غیرقابل کش: سبد خرید، تسویه، حساب کاربری. این‌ها همیشه زنده اجرا می‌شوند.
  • کوئری‌های پیچیده: فیلتر محصول بر اساس قیمت، رنگ و دسته، چند جدول را هم‌زمان می‌خواند.
  • جدول‌های بزرگ: جدول wp_postmeta در فروشگاه چند صد هزار ردیف می‌شود.
  • افزونه‌های زیاد: درگاه پرداخت، پست، فاکتور، پیامک — هرکدام بار اضافه می‌کنند.

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

پلن را با خریدار هم‌زمان اندازه بگیرید، نه با بازدید ماهانه

سؤالی که همه می‌پرسند «ماهی چند بازدید؟» است و همان سؤالی است که کمترین کمک را می‌کند. دلیلش را با یک مثال ببینید.

فرض کنید پلن شما هم‌زمان چهار درخواست PHP را جواب می‌دهد؛ این سقف در بیشتر پلن‌های اشتراکی وجود دارد و معمولاً با عنوان «پردازش هم‌زمان» در مشخصات می‌آید. کسی که صفحهٔ محصولِ کش‌شده را باز می‌کند تقریباً هیچ سهمی از این چهار جا نمی‌گیرد، چون نسخهٔ آماده تحویلش داده می‌شود. اما کسی که وارد سبد خرید یا تسویه شده، تا وقتی صفحه‌اش ساخته شود یکی از آن چهار جا را اشغال کرده است. نفر پنجم منتظر می‌ماند.

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

برای برآورد، سه عدد را از آمار خودتان بردارید: بیشترین تعداد کاربر هم‌زمان در ساعت پیک، نسبت کسانی که به سبد خرید می‌رسند (گزارش خود ووکامرس این را دارد)، و بزرگ‌ترین کمپینی که در سال اجرا می‌کنید. پلن را برای پیک انتخاب کنید؛ میانگین ماهانه هیچ‌وقت سایت را نخوابانده.

چه منابعی لازم است

اندازهٔ فروشگاهCPURAMفضا
تا ۱۰۰ محصول۲ هسته۲ گیگابایت۵ گیگابایت
۱۰۰ تا ۱٬۰۰۰ محصول۳ تا ۴ هسته۴ گیگابایت۱۰ تا ۲۰ گیگابایت
بیش از ۱٬۰۰۰ محصول۴ هسته به بالا۸ گیگابایت به بالا۳۰ گیگابایت به بالا
فروشگاه پرفروشسرور مجازی اختصاصی — راهنمای VPS

این جدول نقطهٔ شروع است، نه حکم. تعداد محصول فقط یک تقریب از اندازهٔ دیتابیس است؛ فروشگاهی با محصولات متغیر فراوان و فیلترهای پیچیده می‌تواند از فروشگاهی با محصول بیشتر ولی ساده‌تر سنگین‌تر باشد.

چه چیزهایی را جدی بگیرید

Redis یا Memcached

کش شیء (object cache) نتیجهٔ کوئری‌های تکراری دیتابیس را در حافظه نگه می‌دارد. برای ووکامرس تفاوت محسوسی می‌سازد، چون همان کوئری‌های سنگین بارها تکرار می‌شوند. اگر پلنی Redis می‌دهد، امتیاز مهمی است.

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

دیتابیس، نه فضا

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

بکاپ روزانه، نه هفتگی

در فروشگاه، هر ساعت سفارش ثبت می‌شود. بکاپ هفتگی یعنی در بدترین حالت یک هفته سفارش را از دست می‌دهید. برای فروشگاه، بکاپ روزانهٔ دیتابیس حداقل قابل قبول است.

و یک نکته که معمولاً وسط بحران کشف می‌شود: بازگرداندن بکاپ دیروز یعنی سفارش‌های امروز هم پاک می‌شوند. قبل از هر بازگردانی، اول از وضعیت فعلی یک کپی بگیرید تا بتوانید سفارش‌های بین دو نقطه را دستی بیرون بکشید. بکاپ باید بیرون از همان هاست هم نگه داشته شود؛ بکاپی که کنار خود سایت است، در سناریویی که واقعاً لازمش دارید از بین رفته.

SSL؛ اختیاری نیست

برای درگاه پرداخت الزامی است. تقریباً همهٔ هاست‌ها رایگان می‌دهند — جزئیات در راهنمای گواهی SSL. دو چیز را چک کنید: گواهی خودکار تمدید شود (وگرنه یک روز صبح فروشگاه با هشدار مرورگر بالا می‌آید) و هیچ تصویر یا اسکریپتی روی صفحه‌های پرداخت از آدرس ناامن بارگذاری نشود، چون همان یک مورد قفل سبز را می‌شکند. SSL فقط مسیر را رمز می‌کند و از خود فروشگاه محافظت نمی‌کند؛ لایه‌های دیگری که یک سایت پولی لازم دارد در راهنمای امنیت هاست فهرست شده.

پشتیبانی سریع

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

چرا پیشخوان با زیاد شدن سفارش‌ها کند می‌شود

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

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

درگاه پرداخت: آن بخشی که به هاست ربط دارد

درگاه‌های ایرانی کاربر را به صفحهٔ بانک می‌فرستند و بعد به «آدرس بازگشت» روی سایت شما برمی‌گردانند. اگر آن آدرس دقیقاً همان چیزی نباشد که در پنل درگاه ثبت کرده‌اید — با www و بدون www، یا نسخهٔ ناامن به‌جای امن — پول از حساب مشتری کم می‌شود ولی سفارش تأیید نمی‌شود. این خطا معمولاً در روز اول راه‌اندازی کشف می‌شود و همیشه هم گران است.

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

و اگر به هاست خارج فکر می‌کنید: پیش از خرید از ارائه‌دهندهٔ درگاه بپرسید که با سرور خارج از کشور مشکلی ندارد. برای فروشگاهی که با درگاه ایرانی کار می‌کند، هاست ایران معمولاً کم‌دردسرترین انتخاب است؛ بحث کامل‌ترش در هاست ایران یا خارج هست.

پلن‌های فروشگاهی بازار

شرکتپلنفضاقیمت ماهانه
الماس هاستهاست 500 مگ ووکامرس۱۳۳٬۳۳۳ تومان
الماس هاستهاست 1 گیگ ووکامرس۱۷۵٬۰۰۰ تومان
فراسوهاست ووکامرس هلند — JW1۲ گیگابایت۲۰۰٬۰۰۰ تومان
وی آی پی هاستهاست ووکامرس ایران — پلن اول۳ گیگابایت۲۷۵٬۰۰۰ تومان
فراسوهاست ووکامرس هلند — JW2۵ گیگابایت۳۲۰٬۰۰۰ تومان
آذر آنلاینهاست ووکامرس 1۳۴۱٬۰۰۰ تومان
قیمت‌ها از جدول کامل هاست فروشگاهی (ووکامرس) — به‌روزرسانی خودکار.

چه زمانی باید ارتقا بدهم؟

وقتی در ساعت‌های پیک سایت کند می‌شود، یا کنترل‌پنل مرتب خطای محدودیت منابع می‌دهد، یا مصرف CPU به سقف پلن می‌خورد. تا آن زمان، هاست اشتراکیِ خوب کاملاً جواب می‌دهد. برای اینکه بدانید کدام سقف را زده‌اید، نشانه را با علتش تطبیق بدهید:

نشانهعلت محتملکار بعدی
ساعت پیک کند است، شب سریعسقف پردازش هم‌زمانپلنی با پردازش هم‌زمان و هستهٔ بیشتر
خطای محدودیت منابع تکرار می‌شودسقف پردازنده یا حافظهارتقای پلن، یا سرور مجازی
پیشخوان کند، صفحه‌های عمومی سریعدیتابیس بزرگ و نبود کش شیءRedis، پاک‌سازی، بازبینی جدول سفارش‌ها
فقط سبد و تسویه کندندصفحه‌های کش‌نشدنیهستهٔ سریع‌تر و کش شیء
ایمیل سفارش دیر می‌رسد یا اسپم می‌شودارسال ایمیل از خود هاستسرویس ایمیل جدا
فضا مدام پر می‌شودتصویر و بکاپ محلیفضای بیشتر و انتقال بکاپ به بیرون

اگر دو ردیف اول تکرار شدند و ارتقای پلن هم فقط چند ماه جواب داد، وقت سرور مجازی است. اگر بار فروشگاه فصلی است و فقط در کمپین‌ها اوج می‌گیرد، پیش از مهاجرت یک نگاه به هاست پربازدید بیندازید؛ راهنمای هاست پربازدید نشان می‌دهد این دسته دقیقاً کدام سقف را بازتر می‌کند و برای پیک برنامه‌ریزی‌شده چه کار دیگری باید کرد.

وقتی کاتالوگ بزرگ می‌شود چه چیزی زودتر می‌شکند

رشد فروشگاه همه‌چیز را به یک اندازه سنگین نمی‌کند. معمولاً به همین ترتیب خراب می‌شود:

  1. جست‌وجو و فیلتر محصول. فیلتر روی ویژگی‌ها یعنی خواندن از همان جدول فرادادهٔ بزرگ. راه‌حل رایج، افزونه یا سرویسی است که برای محصولات نمایه می‌سازد تا جست‌وجو به دیتابیس اصلی فشار نیاورد.
  2. تصاویر. هر محصول چند اندازه تصویر تولید می‌کند. اندازه‌هایی که قالبتان استفاده نمی‌کند را خاموش کنید، وگرنه فضا و زمان پشتیبان‌گیری بی‌دلیل چند برابر می‌شود.
  3. به‌روزرسانی دسته‌ای موجودی و قیمت. سنگین‌ترین کار روزانهٔ فروشگاه‌های بزرگ همین است. زمان‌بندی‌اش را به ساعت کم‌بازدید ببرید، نه وسط پیک فروش.
  4. ایمیل تراکنشی. با زیاد شدن سفارش، ارسال ایمیل از خود هاست هم صف می‌سازد و هم احتمال اسپم شدن را بالا می‌برد. جدا کردن صندوق‌های سازمانی از مسیر ارسال تراکنشی دو تصمیم متفاوت است؛ هر دو را در راهنمای هاست ایمیل باز کرده‌ایم.

پرسش‌های متداول

هاست اشتراکی برای ووکامرس کافی است؟

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

چقدر فضا لازم دارم؟

کمتر از چیزی که فکر می‌کنید. فضای فروشگاه را تصویر محصول پر می‌کند نه دیتابیس، و تصویر بهینه‌شده حجم کمی دارد. حساب دقیق‌ترش در چقدر فضای هاست نیاز دارم هست. اگر روزی فضا کم آمد، ارتقای فضا ساده‌ترین و ارزان‌ترین ارتقاست.

بدون Redis فروشگاه کار نمی‌کند؟

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

پلن‌های «نامحدود» برای فروشگاه خوب‌اند؟

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

فروشگاه را چطور بدون از دست دادن سفارش منتقل کنم؟

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

جمع‌بندی: مسیر تصمیم

  1. پیک کاربر هم‌زمان و نسبت رسیدن به سبد خرید را از آمار خودتان دربیاورید.
  2. پلن را با پردازش هم‌زمان و هسته انتخاب کنید، نه با گیگابایت.
  3. وجود کش شیء، دیسک NVMe و بکاپ روزانه را قبل از خرید بپرسید.
  4. تکلیف درگاه پرداخت و محل سرور را با هم تصمیم بگیرید، نه جدا.
  5. گزینه‌ها را در جدول هاست ووکامرس فیلتر کنید و دو تا را در صفحهٔ مقایسه کنار هم بگذارید.
  6. قبل از پرداخت، یک تیکت آزمایشی بزنید و زمان پاسخ را ببینید.

اگر هنوز مطمئن نیستید کدام دسته به دردتان می‌خورد، یابندهٔ هاست با چند سؤال کوتاه گزینه‌ها را محدود می‌کند.

هاست ووکامرسفروشگاه اینترنتیوردپرسردیس

آماده‌اید قیمت‌ها را ببینید؟ جدول هاست فروشگاهی (ووکامرس)