برنامه ۱۲ عاملی (۹)- عامل هشتم: همروندی 14 مرداد 1401
عامل ۸- همروندی (Concurrency) برنامه را از طریق مدل پردازش (process model) مقیاسپذیر و بزرگ کنید هر برنامه کامپیوتری پس از اجرا با یک یا چند پردازش (process) در سیستم عامل نمایش داده میشود. برنامههای وب شکلهای مختلفی برای اجرای پردازش پیدا کردهاند. به عنوان مثال پردازشها یا برنامههای PHP میتوانند به عنوان فرزندی از […]
برنامه ۱۲ عاملی (۸)- عامل هفتم: اتصال به پورت 6 تیر 1401
عامل ۷-سرویسها را از طریق اتصال به پورت (port binding) در اختیار استفادهکنندگان بیرونی قرار دهید [ مترجم؛ برگردان Port به فارسی درگاه است ولی در این متن همان واژهی پورت استفاده شده است.] گاهی برنامههای وب در داخل یک کانتینر سرویسدهنده وب (web-server container) اجرا میشوند. برای مثال، برنامههای PHP میتوانند به عنوان یک […]
برنامه ۱۲ عاملی (۷)- عامل ششم: پردازش 21 خرداد 1401
عامل ۶: پردازشها (process) برنامه را به صورت یک یا چند پردازش بدون حالت (stateless processes) اجرا کنید. برنامهها در محیط اجرا به صورت یک یا چند پردازش اجرا میشود. در سادهترین حالت، کد برنامه شامل چندین خط است که با یک زبان برنامهنویسی نوشته شد و به تنهایی و بدون نیاز به اجزای خارجی […]
برنامه ۱۲ عاملی (۶)- عامل پنجم: ساخت، انتشار، اجرا 3 خرداد 1401
عامل ۵: ساخت(build)، انتشار(release)، اجرا(run) گامهای ساخت (Build) و اجرا(Run) را کاملا از هم جدا کنید. هر پایگاه کد (codebase) طی سه مرحله به استقرار (deploy) تبدیل میشود: مرحله ساخت (build stage) : در این مرحله مخزن کد (codebase) به یک بسته قابل اجرا (executable bundle) تبدیل میشود. این بستهی قابل اجرا با نام بستهی […]
برنامه ۱۲ عاملی (۵)- عامل چهارم: سرویسهای کمکی 28 اردیبهشت 1401
عامل ۴: سرویس های کمکی ( backing services) با سرویسهای کمکی مانند منابع ضمیمه شده یا پیوست ( attached resources) رفتار کنید. سرویس کمکی ( backing services) هر سرویسی است که برنامه از طریق شبکه از آن برای انجام کارهای معمول و روزمرهاش استفاده کند. از جمله سرویسهای کمکی میتوان به پایگاه داده مانند MySQL، […]
برنامه ۱۲ عاملی (۴)- عامل سوم: پیکربندی 18 اردیبهشت 1401
عامل ۳: پیکربندی پیکربندی (config) را در محیط استقرار (environment) ذخیره کنید پیکربندی هر برنامه احتمالاً برای استقرارهای مختلف (محیط عملیاتی یا production، محیط داخلی یا stage، محیط توسعهدهندگان و غیره) یکسان نیست. این تفاوت میتواند به دلایل متفاوتی از جمله موارد زیر باشد: – منابع دسترسی به پایگاه داده، حافظههای ذخیرهسازی سریع (Memcached) و […]
گربه کد من را خورد (۳) 10 اردیبهشت 1401
قسمت اول را اینجا و قسمت دوم را اینجا بخوانید. به جای بهانه، گزینهها و راهکارهای جدیدی پیشنهاد کنید. نگویید که این کار شدنی نیست؛ توضیح دهید که چه کاری میتوان برای نجات از شرایط کنونی انجام داد. آیا بهتر است کد را حذف کنیم (delete)؟ اگر به این نتیجه رسیدید، این موضوع را با […]
