فروشگاه اینترنتی فقط یک وبسایت نیست؛ کاتالوگ محصولات، تصاویر، سبد خرید، سفارشها، پرداخت، حساب مشتریان و پنل مدیریت، بارهای متفاوتی روی زیرساخت ایجاد میکنند. راهکار ابری فروشگاه باید اجرای برنامه، دادههای تراکنشی، تحویل فایلها و کنترل ترافیک را در کنار هم ببیند؛ نه اینکه همه نیازها را به افزایش منابع یک سرور محدود کند.
کاربران معمولا با این مسائل و چالشها مواجهاند:
ورود همزمان کاربران میتواند بار وبسرور، دیتابیس و مسیر تحویل تصاویر و فایلها را افزایش دهد.
سبد خرید، موجودی، سفارش و حساب مشتری به دسترسی قابل اتکا به لایه برنامه و پایگاه داده نیاز دارند.
نگهداری و تحویل تصاویر، ویدیوها و فایلهای محصول میتواند از اجرای اصلی فروشگاه تفکیک شود.
تیم فروشگاه باید بتواند وضعیت اجزای مختلف را رصد کند و برای بازیابی اطلاعات برنامه مشخص داشته باشد.
محیط اجرای فروشگاه، وبسرور، افزونهها و منطق سفارش؛ میتواند یک جزء از معماری یا بخشی از چند نمونه محاسباتی باشد.
محیط اجرای فروشگاه، وبسرور، افزونهها و منطق سفارش؛ میتواند یک جزء از معماری یا بخشی از چند نمونه محاسباتی باشد.
برای تحویل محتوای قابل کش مانند تصاویر محصول، فایلهای استاتیک و داراییهای رابط کاربری؛ محتوای شخصی یا سبد خرید نباید بدون سیاست مناسب کش شود.
برای نگهداری تصاویر، کاتالوگهای رسانهای، فایلهای دانلودی و سایر داراییهایی که نیاز به نگهداری مستقل دارند.
DNS برای مدیریت مسیر دامنه و SSL برای برقراری ارتباط HTTPS؛ جزئیات صدور، تمدید و مدیریت گواهی باید با محصول واقعی تطبیق داده شود.
فایروال برای کنترل و فیلتر ترافیک در محدوده قابلیت سرویس مورد استفاده قرار میگیرد؛
Load Balancer برای توزیع درخواست بین چند نمونه برنامه؛ Auto Scaling فقط در صورت وجود قابلیت و تعریف سیاستهای مقیاسپذیری.
برای پشتیبانگیری و بررسی وضعیت؛ سازگاری بکاپ تراکنشمحور با دیتابیس و فایلها باید بررسی شود.
ترافیک، داده تراکنشی، رسانه محصول و نیاز بازیابی را جداگانه بررسی کنید؛ افزایش منابع سرور بهتنهایی پاسخ همه مسائل نیست.
DNS، SSL و Firewall مسیر ورود و کنترل ترافیک را شکل میدهند.
CDN فایلهای محصول و داراییهای قابل کش را تحویل میدهد.
Cloud Server/VM و در معماری چندنمونهای Load Balancer درخواستهای پویا را مدیریت میکنند.
DBaaS دادههای تراکنشی و Object Storage فایلهای رسانهای را نگهداری میکنند.
Backup، Snapshot، Monitoring و Logging برای حفاظت و مشاهدهپذیری به کار میروند.
ترکیب نمونه؛ انتخاب نهایی نیازمند بررسی فنی است
یک محیط اجرای متناسب + پایگاه داده سازگار + پشتیبانگیری پایه؛ CDN و Object Storage بر اساس حجم فایل و نیاز تحویل.
چند نمونه اجرا در صورت نیاز + Load Balancer + CDN + پایگاه داده با ظرفیت متناسب + Monitoring.
Object Storage + CDN برای فایلهای محصول، در کنار لایه اجرای برنامه و دیتابیس.
بر اساس چالش فعلی زیرساخت خود، نقطه ورود مناسب را بیابید.
درخواستهای پویا و تراکنشی، دیتابیس و منابع اجرای برنامه را بررسی کنید.
Object Storage و CDN را برای نگهداری و تحویل رسانه ارزیابی کنید.
چندنمونهای بودن، Load Balancer و ظرفیتپذیری را با تیم فنی بررسی کنید.
نه لزوماً. سرور لایه اجرای برنامه را پوشش میدهد؛ اما تحویل تصاویر، نگهداری فایلها، دیتابیس، کنترل ترافیک و پشتیبانگیری ممکن است سرویسهای جداگانه بخواهند.
CDN میتواند محتوای قابل کش مانند تصاویر و فایلهای استاتیک را توزیع کند و تعداد درخواستهای تکراری به مبدأ را کاهش دهد. دادههای شخصی و تراکنشی باید با سیاست کش مناسب مدیریت شوند.
این قابلیت به محصول، معماری استقرار و سیاستهای تعریفشده وابسته است. پیش از انتخاب باید مشخص شود مقیاسپذیری خودکار برای کدام لایه ارائه میشود.
خیر. Object Storage برای فایلها و اشیای رسانهای مناسب است؛ دادههای ساختیافته و تراکنشی فروشگاه به پایگاه داده نیاز دارند.
خیر. کارتها گزینههای قابل ترکیب را نشان میدهند. انتخاب سرویس باید بر اساس مسئله، معماری و نیاز واقعی انجام شود.
بله. اگر یک سرویس بهتنهایی نیاز مشخص را پوشش دهد، نیازی به تهیه سرویسهای دیگر نیست. ترکیب چندسرویسی زمانی مطرح میشود که مسئله چند لایه داشته باشد.
نوع بارکاری، نرمافزار، داده، حجم ترافیک، نیاز امنیتی و مسئولیت تیم فنی باید بررسی شوند. مشخصات و محدودیت هر سرویس نیز در صفحه خدمت و مستندات فنی ملاک تصمیم است.
برای پیشنهاد ترکیب متناسب، اطلاعات زیر را تا حد امکان وارد کنید. اطلاعات فنی دقیقتر به ارزیابی بهتر نیاز شما کمک میکند.