DJANGOLEARN_IR Telegram 944
جنگولرن
12factor قبلا توی این پست در موردش نوشتم: https://www.tgoop.com/djangolearn_ir/78 اما بازم امروز از از Sider Fusion پرسیدم 12factor چیه؟ و ctrl + c بعدش ctrl + v 😁 یک سری اصول و الگوهایی است که برای توسعه و استقرار برنامه‌های وب مدرن طراحی شده‌اند. هدف آن کمک…
فاکتور چهارم: Backing services

توضیحات از ویرگول Mohammad Ghodsian که لینکش بالاتر هست:

منظور از Backing services هر سرویسیه که برنامه حین روند طبیعی خودش از اونا استفاده میکنه. مثل دیتابیسها، راه‌های ارتباطی و ساز‌و‌کار‌های پیام‌محور (مثل ربیت یا حتی وب‌هوک‌ها)، چیزایی مثل سیستمِ کشینگ (مثل Memcached) یا هر سرویس دیگه‌ای که برنامه باهاش سر و کار داره. تمامی این سرویس‌ها باید روی بستر شبکه مثلاً به کمک آدرس‌دهی http قابل دسترس باشن، و تعیین‌کننده آدرس یا نحوه ارتباط همون کانفیگیه که به عنوان فاکتور سوم باهاش آشنا شدیم. عملاً هر کدوم از این موارد به عنوان ریسورس برنامه شناخته میشن، و چقدر خوبه که برنامه طوری نوشته شده باشه که اگه سیستم مَسِیجینگ خواست تغییر بکنه (مثلا از RabbitMQ به ZeroMQ) حتی‌المقدور با یه تغییر توی کانفیگ این امر محقق بشه (طبیعتاً نمیشه همه حالات مختلف رو در نظر گرفت ولی حدأقل میشه توی کد در نظر گرفت لایه‌ای که مثلاً وظیفه مسیجینگ رو مدیریت میکنه با کمتری تغییر ممکنه و به سرعت بتونه تغییرات لازمه رو اعمال کنه). یا به عنوان یه مثال دیگه، اگه به هر دلیلی مثلاً ادمین سیستم خواست دیتابیس رو تغییر بده (فرض کنید مشکلی برای دیتابیس فعلی بوجود اومده و برنامه خواست روی یه بک‌آپی که از دیتابیس قبلی گرفته شده و روی دیتابیس جدید نشسته ران بشه) نباید هیچ مشکلی بابت این قضیه بوجود بیاد و تغییر کد خاصی نباید صورت بگیره. این مورد نه فقط روی ورژن نهایی برنامه، بلکه در مورد تمامی deployهای برنامه صدق میکنه، به این مفهوم که برنامه نباید توی برنچ‌ها یا ورژنای مختلف، عملکردای متفاوتی نسبت به محیطی که داره روش ران میشه داشته باشه و اکثر عملکردها تنها وابستگیشون به ریسورسهاشون (که اینجا منظورمون همون backing service ها) هست باید صرفاً اطلاعاتی باشه که از کانفیگ و پارامترای سیستمی دریافت میکنن.



tgoop.com/djangolearn_ir/944
Create:
Last Update:

فاکتور چهارم: Backing services

توضیحات از ویرگول Mohammad Ghodsian که لینکش بالاتر هست:

منظور از Backing services هر سرویسیه که برنامه حین روند طبیعی خودش از اونا استفاده میکنه. مثل دیتابیسها، راه‌های ارتباطی و ساز‌و‌کار‌های پیام‌محور (مثل ربیت یا حتی وب‌هوک‌ها)، چیزایی مثل سیستمِ کشینگ (مثل Memcached) یا هر سرویس دیگه‌ای که برنامه باهاش سر و کار داره. تمامی این سرویس‌ها باید روی بستر شبکه مثلاً به کمک آدرس‌دهی http قابل دسترس باشن، و تعیین‌کننده آدرس یا نحوه ارتباط همون کانفیگیه که به عنوان فاکتور سوم باهاش آشنا شدیم. عملاً هر کدوم از این موارد به عنوان ریسورس برنامه شناخته میشن، و چقدر خوبه که برنامه طوری نوشته شده باشه که اگه سیستم مَسِیجینگ خواست تغییر بکنه (مثلا از RabbitMQ به ZeroMQ) حتی‌المقدور با یه تغییر توی کانفیگ این امر محقق بشه (طبیعتاً نمیشه همه حالات مختلف رو در نظر گرفت ولی حدأقل میشه توی کد در نظر گرفت لایه‌ای که مثلاً وظیفه مسیجینگ رو مدیریت میکنه با کمتری تغییر ممکنه و به سرعت بتونه تغییرات لازمه رو اعمال کنه). یا به عنوان یه مثال دیگه، اگه به هر دلیلی مثلاً ادمین سیستم خواست دیتابیس رو تغییر بده (فرض کنید مشکلی برای دیتابیس فعلی بوجود اومده و برنامه خواست روی یه بک‌آپی که از دیتابیس قبلی گرفته شده و روی دیتابیس جدید نشسته ران بشه) نباید هیچ مشکلی بابت این قضیه بوجود بیاد و تغییر کد خاصی نباید صورت بگیره. این مورد نه فقط روی ورژن نهایی برنامه، بلکه در مورد تمامی deployهای برنامه صدق میکنه، به این مفهوم که برنامه نباید توی برنچ‌ها یا ورژنای مختلف، عملکردای متفاوتی نسبت به محیطی که داره روش ران میشه داشته باشه و اکثر عملکردها تنها وابستگیشون به ریسورسهاشون (که اینجا منظورمون همون backing service ها) هست باید صرفاً اطلاعاتی باشه که از کانفیگ و پارامترای سیستمی دریافت میکنن.

BY جنگولرن


Share with your friend now:
tgoop.com/djangolearn_ir/944

View MORE
Open in Telegram


Telegram News

Date: |

As five out of seven counts were serious, Hui sentenced Ng to six years and six months in jail. With the “Bear Market Screaming Therapy Group,” we’ve now transcended language. ‘Ban’ on Telegram The Channel name and bio must be no more than 255 characters long But a Telegram statement also said: "Any requests related to political censorship or limiting human rights such as the rights to free speech or assembly are not and will not be considered."
from us


Telegram جنگولرن
FROM American