فروشگاه‌سازهای آماده برای شروع انتخابِ درستی‌اند و این مقاله قصدِ بدگویی از آن‌ها را ندارد. سؤالی که می‌خواهد جواب دهد مشخص‌تر است و تقریباً هیچ‌جا جوابش را پیدا نمی‌کنید: از چه نشانه‌ای بفهمم به سقف رسیده‌ام؟

همه می‌نویسند «در مقیاسِ بزرگ کند و محدود می‌شود». ولی این جمله به کارِ کسی نمی‌آید که وسطِ کار ایستاده و باید تصمیم بگیرد. چیزی که لازم دارید سه‌تاست: مکانیزمِ هر سقف (چرا رخ می‌دهد)، نشانه‌ای که در کارِ روزانه‌تان می‌بینید، و آزمونی که خودتان بتوانید اجرا کنید.

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

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

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

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

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

سقفمکانیزم — چرا رخ می‌دهدنشانه‌ای که می‌بینیدآزمون
۱. کندیِ پنلِ مدیریتفهرستِ محصولاتِ پنل با کوئریِ عمومی ساخته می‌شود و برای فیلترهای ترکیبی ایندکسِ مناسب ندارد؛ با چند هزار قلم و چند فیلترِ هم‌زمان، زمانِ پاسخ خطی نمی‌ماندکارمند از پنل به فایلِ اکسل فرار می‌کند و ویرایشِ روزانه‌ی قیمت شکنجه شدهدر نسخه‌ی آزمایشی چند هزار محصول وارد کنید و همان فیلترهای روزانه‌تان را بزنید
۲. ورودِ گروهی و به‌روزرسانیِ انبوهبدونِ عملیاتِ دسته‌ای و صفِ پس‌زمینه، هر تغییر یک درخواستِ وب است و در حجمِ بالا تایم‌اوت می‌خوردتغییرِ قیمتِ دسته‌ای را شبانه انجام می‌دهید، یا نصفه می‌ماند و نمی‌دانید کدام قلم‌ها اعمال شدقیمتِ هزار قلم را یک‌جا ده درصد زیاد کنید و ببینید تا آخر می‌رود یا نه
۳. محصولِ متغیر و ترکیبِ ویژگی‌هاسایز در رنگ در بسته‌بندی یعنی انفجارِ ترکیب‌ها. اگر پلتفرم هر ترکیب را ردیفی مستقل بسازد، موجودی و قیمتِ هر ترکیب دستی می‌شود و سقفِ تعدادِ ترکیب هم داردیک محصول را چند محصولِ جدا ثبت می‌کنید تا محدودیت را دور بزنیدمحصولی با سه ویژگی و پنج گزینه بسازید — بیش از صد ترکیب — و موجودیِ همه را ست کنید
۴. چند انبار و موجودیِ مکان‌محورمدلِ دادهِ اکثرِ پلتفرم‌ها یک عددِ موجودی به محصول می‌چسباند. چند انبار یعنی موجودی باید کلیدِ ترکیبیِ «محصول × انبار» داشته باشد و این تغییرِ مدلِ داده است، نه افزونهموجودیِ شعبه‌ها را در فایلِ جدا نگه می‌دارید و سایت فقط یکی‌شان را می‌داندببینید می‌توانید برای یک محصول دو موجودیِ مستقل با دو مکان تعریف کنید یا نه
۵. قواعدِ قیمت‌گذاریقیمت در پلتفرم‌های آماده معمولاً یک صفتِ محصول است. قیمتِ عمده و همکار و پله‌ای یعنی قیمت تابعی از (محصول، مشتری، تعداد، زمان) است — یعنی یک لایه‌ی محاسبه لازم است نه یک فیلدبرای مشتریِ عمده فاکتورِ دستی می‌فرستید و سبدِ خرید عملاً برای او بی‌فایده استیک گروهِ مشتری بسازید و برای همان محصول قیمتِ متفاوت و تخفیفِ پله‌ای تعریف کنید
۶. API و یکپارچگیسقفِ نرخِ درخواست، نبودِ وب‌هوک، یا API فقط‌خواندنی. بدونِ وب‌هوک، همگام‌سازی به pollingِ دوره‌ای تبدیل می‌شود و بین دو نوبت یک پنجره‌ی ناهم‌خوانی باز استموجودیِ سایت با انبار چند ساعت فاصله دارد و گاهی کالای ناموجود فروش می‌رودمستنداتِ API را باز کنید و دو چیز را بجویید: وب‌هوکِ سفارش، و سقفِ نرخِ درخواست
۷. کنترلِ سئوی فنیاگر آدرسِ صفحه، تگِ کانونیکال، رفتارِ صفحاتِ فیلتر و اسکیما دستِ پلتفرم باشد، در کاتالوگِ بزرگ صفحاتِ تکراریِ فیلتر تولید می‌شود و بودجه‌ی خزش هدر می‌روددر سرچ‌کنسول صفحاتِ فیلتر ایندکس شده‌اند یا صفحاتِ محصولِ اصلی ایندکس نمی‌شوندببینید می‌توانید روی صفحاتِ فیلتر noindex بگذارید و کانونیکال را دستی تعیین کنید
نکته

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

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

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

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

پس قاعده: مهاجرت وقتی درست است که سقفِ واقعی داشته باشید، نه وقتی خسته شده‌اید.

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

برمی‌دارد: مدلِ داده (چند انبار، ترکیبِ ویژگی‌ها) · لایه‌ی قیمت‌گذاریِ مشتری‌محور · API و وب‌هوکِ دلخواه · کنترلِ کاملِ سئوی فنی · نقش و دسترسیِ دقیق · و مالکیتِ کد و داده.

برنمی‌دارد — و این را کمتر می‌شنوید:

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

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

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

تعدادِ محصول، تعدادِ انبار و نوعِ قیمت‌گذاری‌تان را بگویید — می‌گوییم کدام از این هفت سقف را دارید و کدامش با یک اصلاحِ ارزان حل می‌شود.برآورد هزینه و زمان را در یک تماس کوتاه می‌گیرید.

انرژی را به‌ترتیبِ برگشت‌ناپذیری خرج کنید، نه به‌ترتیبِ اهمیت — کدام اشتباه‌ها بعداً قابلِ اصلاح‌اند و کدام نه، در اشتباه‌های رایجِ فروشگاه‌های تازه‌کار.

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

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