نسخه جدید محصول آماده است، اما پیش از انتشار باید مطمئن شوید پرداخت سرویس انجام میشود، تیم به حساب دسترسی دارد و برنامه به سرویسهای موردنیازش وصل میشود. برای شما که مسئول تصمیم زیرساخت هستید، انتخاب جایگزین هروکو فقط انتخاب محل اجرای کد نیست؛ هزینه عملیات، دسترسی و امکان خروج از پلتفرم هم مطرحاند. مهاجرتی که صفحه اصلی را بالا میآورد ولی پردازش سفارش یا بازیابی اطلاعات را بلاتکلیف میگذارد، تمام نشده است. تصمیم را از فهرست وابستگیهای محصول شروع کنید و با اجرای آزمایشی ادامه دهید؛ پیش از آنکه هزینه و ریسک انتقال کامل را بپذیرید.
کدام جایگزین هروکو برای تیم شما مناسب است؟
اگر اپلیکیشن وب دارید و میخواهید ساخت نسخه قابل اجرا و عملیات روزمره را به پلتفرم بسپارید، پاستا یکی از گزینههاست. دریافت پروژه از مخزن کد، نگهداری تنظیمات محرمانه، دیتابیس مدیریتشده و اتصال دامنه شخصی از قابلیتهای تأییدشده آناند.
انتخاب به سازگاری پروژه و نیازهای عملیاتی شما با پلن مقصد بستگی دارد. برای کنترل مستقیم سیستمعامل یا تنظیمات اختصاصی شبکه، سرور مجازی یا زیرساخت تحت مدیریت تیم خودتان را بررسی کنید. ابتدا نسخه آزمایشی را با داده غیرحساس اجرا کنید؛ نتیجه آن باید مبنای خرید باشد.
پیش از مقایسه قیمت، مسئولیت عملیات را مشخص کنید
جدول زیر مدلهای بهرهبرداری را مقایسه میکند، نه کیفیت ارائهدهندگان را.
|
گزینه |
نقطه قوت |
چه زمانی انتخاب مناسبتری است؟ |
اثر بر بودجه و تحویل |
|
ادامه استفاده از هروکو |
حفظ فرایند فعلی انتشار و سرویسهای متصل |
وقتی وابستگی اختصاصی دارید و جایگزین آن در پاستا تأیید نشده است |
فعلاً هزینه و ریسک همان مهاجرت را نمیپذیرید؛ مسئله دسترسی و پرداخت همچنان نیازمند بررسی است |
|
پاستا، بهعنوان PaaS ایرانی؛ پلتفرم مدیریت ساخت و اجرا |
جریان فارسی ساخت، اجرا و مشاهده وضعیت |
وقتی امکانات پلن با پروژه سازگار است و نمیخواهید سرور را مستقیم نگهداری کنید |
هزینه منابع را همراه با مسئولیتهای باقیمانده تیم بسنجید |
|
پلتفرم خارجی دیگر |
حفظ مدل مدیریتشده ساخت و اجرا |
وقتی نیاز ضروری شما را پوشش میدهد و پاستا آن را تأیید نکرده؛ شرایط حساب و پرداخت نیز برای شما قابلقبول است |
هزینه مهاجرت و ریسک دسترسی را مستقل بررسی کنید |
|
سرور مجازی با Docker؛ ابزار بستهبندی و اجرای برنامه |
کنترل بیشتر بر محیط اجرا |
وقتی کنترل مستقیم میزبان یا تنظیمات اختصاصی میخواهید |
نگهداری، پایش و بازیابی به زمان تیم نیاز دارد |
|
Kubernetes تحت مدیریت تیم؛ سامانه مدیریت اجرای برنامهها |
طراحی زیرساخت متناسب با نیازهای خاص |
وقتی تنظیمات موردنیاز شما در پاستا در دسترس نیست و تیم مسئول عملیات دارید |
ظرفیتگذاری، ارتقا و رسیدگی به رخدادها بر عهده شماست |
قیمت پایین سرور مجازی، بدون محاسبه زمان نگهداری، نشانه هزینه کمتر نیست. برای مقایسه ارائهدهندگان داخلی، همین معیارها را در «بهترین پلتفرمهای PaaS ایرانی؛ مقایسه صادقانه» دنبال کنید.
«هاست بدون تحریم» را تضمین دسترسی به همه سرویسهای موردنیاز محصول ندانید. پس از تغییر میزبان هم ممکن است ساخت یا اجرای برنامه به خدمات خارجی وابسته بماند. دسترسی را از مقصد آزمایش کنید. راهنمای «مدیریت ریسک تحریم در انتخاب زیرساخت نرمافزاری» به همین ریسک میپردازد.
پاستا چه بخشهایی از تجربه هروکو را پوشش میدهد؟
هروکو فرمانهای اجرا، تنظیمات برنامه و سرویسهای جانبی متصل را مدیریت میکند. برای مهاجرت باید مقصد هرکدام مشخص باشد؛ انتقال مخزن کد کافی نیست. مستندات معماری هروکو
پاستا پروژه را از گیتهاب، گیتلب، پوشه، ZIP یا Dockerfile، یعنی فایل دستور ساخت برنامه، دریافت میکند. نتیجه تشخیص روش ساخت باید پیش از اجرا قابل بررسی باشد و وضعیت ساخت و استقرار نمایش داده شود. این مشاهدهپذیری به تیم کمک میکند محل توقف انتشار را پیدا کند.
برای پروژه چندسرویسی، پاستا میتواند Docker Compose، یعنی تعریف اجزای مرتبط برنامه، را به سرویسهای جداگانه تبدیل کند و دیتابیس مدیریتشده پیشنهاد دهد. این به معنی سازگاری تمام تنظیمات یا سرویسهای جانبی هروکو نیست. هزینه تطبیق و آزمایش آنها را در مهاجرت حساب کنید.
کنسول فارسی، گزارش اجرا و بررسی سلامت برنامه از امکانات پاستاست. زیرساخت آن بر Kubernetes تکیه دارد؛ شما برای استفاده از پلتفرم لازم نیست این زیرساخت را مستقیم مدیریت کنید.
مهاجرت از هروکو به پاستا رایگان است
وابستگیها و نیازهای پروژهتان را برای بررسی مسیر انتقال مطرح کنید.
هزینه خرید را برای کل سرویس محاسبه کنید
پاستا هزینه و موجودی کیف پول را با تومان نمایش میدهد. پرداخت منابع، بسته به پلن، ماهانه یا متناسب با مصرف است. سرویس ماهانه پیش از ساخت شارژ میشود و ایجاد منبع مصرفی به حداقل موجودی تعیینشده نیاز دارد.
برای جلسه بودجه، جدول زیر را با قیمت روز و برآورد تیم تکمیل کنید. همه مبالغ باید برای یک دوره، منابع همسطح و با واحد تومان باشند.
|
هزینه در دوره مقایسه |
هروکو |
پاستا |
پلتفرم خارجی منتخب |
سرور مجازی |
Kubernetes تیم |
|
اجرای برنامه |
— |
— |
— |
— |
— |
|
دیتابیس، ذخیرهسازی و بکاپ |
— |
— |
— |
— |
— |
|
زمان عملیات تیم × هزینه هر ساعت |
— |
— |
— |
— |
— |
|
مهاجرت و روشنبودن همزمان دو محیط |
— |
— |
— |
— |
— |
|
جمع هزینه دوره |
— |
— |
— |
— |
— |
خط تیره یعنی داده نداریم، نه هزینه صفر. بدون این ارقام، نتیجهگیری درباره ارزانتر بودن گزینهها قابل دفاع نیست.
قیمت، ظرفیت و نسخه دیتابیس را هنگام انتخاب منبع در وبسایت پاستا بررسی کنید؛ این مشخصات ممکن است تغییر کنند.
مهاجرت را با یک نسخه آزمایشی و مسیر بازگشت شروع کنید
وابستگیها را به مقصد قابل آزمایش نگاشت کنید
از تیم بخواهید اجزای وب، پردازشهای پسزمینه، کارهای زمانبندیشده، تنظیمات، دیتابیس، فایلهای آپلودی و خدمات خارجی را ثبت کند. مقدار رمزها و کلیدهای دسترسی نباید در این فهرست باشد.
خروجی باید مقصد هر جزء را مشخص کند. جزء بدون مقصد تأییدشده، مانع انتقال کامل و منبع هزینه پیشبینینشده است.
ساخت و اجرای برنامه را جداگانه ارزیابی کنید
تیم پروژه را وارد پاستا و روش ساخت و اجرا را بازبینی میکند. اطلاعات محرمانه باید از مسیر Secret، یعنی محل نگهداری تنظیمات حساس، وارد شوند؛ نه داخل کد یا فایل ساخت.
انتظار دارید ساخت کامل شود و برنامه با اتصال رمزگذاریشده پاسخ بدهد. در غیر این صورت، تیم باید گزارش مرحله ناموفق را بررسی کند. تفکیک شکست ساخت از شکست اجرا، مسیر رسیدگی را مشخص میکند.
اگر دریافت بسته خصوصی به اعتبارنامه نیاز دارد، روش امن ارائه آن را پیش از مهاجرت تأیید کنید. پشتیبانی از تنظیمات محرمانه هنگام اجرا، اثبات پشتیبانی هنگام ساخت نیست. راهنمای اطلاعات محرمانه هنگام ساخت در Docker
بازیابی دیتابیس را روی مقصد خالی تمرین کنید
تیم باید نسخه دیتابیس، افزونهها و مجوزهای پروژه را با مقصد تطبیق دهد. هروکو برای خروجی گرفتن از PostgreSQL، یکی از انواع دیتابیس، مسیر مستند دارد. راهنمای خروجی و ورود دیتابیس هروکو
بکاپ را ابتدا روی مقصد آزمایشی خالی بازیابی کنید. معیار پذیرش، وجود جدولها نیست؛ دادههای نمونه و عملیات اصلی برنامه هم باید درست باشند. اگر بازیابی ناقص است، انتقال را متوقف کنید. تکرار بازیابی روی مقصد دارای داده میتواند تعارض ایجاد کند.
پیش از تغییر دامنه، نوشتن داده را کنترل کنید
ورود کاربر، ثبت سفارش، آپلود و پردازش پسزمینه را آزمایش کنید. برای انتقال نهایی، تیم باید تمام مسیرهای ثبت داده در مبدأ را متوقف و داده نهایی را منتقل کند. حالت تعمیرات هروکو بهتنهایی پردازشهای پسزمینه را متوقف نمیکند. مستندات حالت تعمیرات هروکو
پس از تأیید داده، دامنه و اتصال رمزگذاریشده را بررسی کنید. مبدأ را تا پایان ارزیابی نگه دارید و هزینه آن را بپذیرید. اگر مقصد داده جدید گرفته باشد، برگرداندن آدرس دامنه کافی نیست؛ ابتدا باید تکلیف آن دادهها روشن شود.
چه زمانی پاستا گزینه مناسبی نیست؟
اگر محصول به قابلیت اختصاصی هروکو، افزونه دیتابیس تأییدنشده یا کنترل مستقیم میزبان وابسته است، پاستا هنوز مقصد تأییدشدهای نیست. در حالت اول، ماندن روی هروکو تا اثبات جایگزین، ریسک مهاجرت ناقص را کم میکند. برای کنترل میزبان، سرور مجازی گزینه مناسبتری است؛ به شرط پذیرش مسئولیت نگهداری.
وجود بکاپ نیز کافی نیست. دوره نگهداری، روش بازیابی و مسئول اجرای آن را پیش از خرید مشخص کنید. از نام Kubernetes تضمین دسترسپذیری یا انتشار بدون وقفه نتیجه نگیرید.
برای پروژه صرفاً فرانتاند، یعنی بخش قابل مشاهده برنامه در مرورگر، معیارهای انتخاب متفاوتاند. راهنمای جایگزین Vercel و Netlify برای پروژههای فرانتاند ایرانی به آن تصمیم مربوط است.
خطاهای رایج مهاجرت را چگونه تشخیص دهید؟
Build هنگام دریافت وابستگی متوقف میشود
-
آنچه کاربر میبیند: ساخت نسخه قابل اجرا متوقف شده و انتشار عقب افتاده است.
-
علتهای محتمل و تأییدشده: دسترسی به بسته خارجی یا اعتبارنامه مخزن خصوصی؛ علت این رخداد بدون گزارش اجرا مشخص نیست.
-
روش تشخیص: تیم مرحله شکست و مقصد درخواست را استخراج و اطلاعات محرمانه را پیش از اشتراک گزارش حذف کند.
-
اقدام بعدی: دسترسی و روش احراز هویت ساخت را بررسی کنید.
-
آیا داده کاربر در خطر است؟ معمولاً داده جاری تغییر نمیکند؛ افشای اعتبارنامه خطر جداگانهای دارد.
بازیابی دیتابیس کامل نمیشود
-
آنچه کاربر میبیند: بخشی از جدولها یا دادهها در مقصد نیست؛ انتقال قابل تأیید نیست.
-
علتهای محتمل و تأییدشده: ناسازگاری ابزار، محدودیت مجوز یا وجود اطلاعات قبلی در مقصد.
-
روش تشخیص: تیم گزارش بازیابی و نسخه ابزار را بررسی کند.
-
اقدام بعدی: علت را برطرف و بازیابی را روی مقصد آزمایشی خالی تکرار کنید. مرجع ابزار بازیابی PostgreSQL
-
آیا داده کاربر در خطر است؟ اگر بازیابی اطلاعات موجود را حذف کند، بله.
پس از انتقال، دادههای جدید دو محیط متفاوتاند
-
آنچه کاربر میبیند: بعضی سفارشها فقط در یکی از محیطها ثبت شدهاند.
-
علتهای محتمل و تأییدشده: پردازش پسزمینه مبدأ فعال مانده یا بخشی از درخواستها هنوز به مبدأ میرسد.
-
روش تشخیص: تیم زمان آخرین ثبت داده، گزارش پردازشها و مقصد اتصال برنامهها را تطبیق دهد.
-
اقدام بعدی: ثبت همزمان را متوقف و دادهها را تطبیق دهید؛ صرفاً دامنه را برنگردانید.
-
آیا داده کاربر در خطر است؟ بله؛ بازگشت شتابزده میتواند داده جدید را از دسترس خارج کند.
چکلیست تأیید انتقال ترافیک
پیش از پذیرش هزینه انتقال کامل، نتیجه این موارد را از تیم بگیرید:
-
تمام اجزای برنامه مقصد آزمایششده دارند.
-
تنظیمات تطبیق دارند و اطلاعات محرمانه در کد و گزارشها نیست.
-
بازیابی بکاپ روی دیتابیس خالی موفق بوده است.
-
فایل آپلودی پس از استقرار مجدد باقی میماند.
-
مسئول توقف ثبت داده در مبدأ مشخص است.
-
دامنه، اتصال رمزگذاریشده و خدمات خارجی آزمایش شدهاند.
-
هزینه کل منابع و موجودی لازم ثبت شده است.
-
شرط بازگشت و روش حفظ داده جدید مشخص است.
تصمیم خرید را به نتیجه آزمون متصل کنید
پاستا زمانی گزینه قابل انتخاب است که ساخت، بازیابی داده و عملیات اصلی محصول در آن تأیید شده و هزینه کل با بودجه شما سازگار باشد. اگر وابستگی ضروری هنوز مقصد ندارد، انتقال را عقب بیندازید؛ اگر کنترل مستقیم میزبان لازم دارید، هزینه نگهداری گزینههای دیگر را بسنجید.
پاسخ کوتاه به پرسشهای این مطلب
آیا برای شروع باید Docker بلد باشید؟
خیر. پاستا پوشه، ZIP و مخزن کد را هم میپذیرد. تیم باید تنظیمات تشخیصدادهشده را بازبینی کند.
آیا داشتن Dockerfile مهاجرت را کامل میکند؟
خیر. این فایل روش ساخت را مشخص میکند؛ انتقال داده، تنظیمات محرمانه، دامنه و سرویسهای جانبی باقی میماند.
آیا میتوانید نام متغیرهای فعلی را نگه دارید؟
بله، اگر برنامه همان نامها را میخواند. مقدار اتصال به دیتابیس و خدمات باید با مقصد تطبیق پیدا کند.
آیا برای شروع به دامنه شخصی نیاز دارید؟
خیر. برنامه آماده میتواند آدرس رمزگذاریشده روی دامنه پاستا بگیرد. دامنه شخصی را بعداً متصل کنید.
تصمیم خرید را به نتیجه آزمون متصل کنید.
مستندات پاستا را باز کنید و پیشنیازهای استقرار آزمایشی پروژه را بررسی کنید.
نظرها
هنوز نظری ثبت نشده است. اولین نفر باشید.