آموزش React Query - پیاده سازی Undo با useMutation
در این ویدیو از آموزش React Query ابتدا با استفاده از useMutation امکان حذف آگهی ها را فراهم کردیم و سپس برای بررسی بیشتر با استفاده از Promise امکانی را فراهم کردیم که بتوان برای حذف آیتم تا زمان مشخصی به کاربر امکان Undo بدهیم.
Link: https://youtu.be/R5BR55jFGEo
PlayList: https://www.youtube.com/playlist?list=PLJ9zDGwhhsBzELHNdflPj4XgS2hAXBILz
Git Repo: https://github.com/hemanhp/react-query-course
〰️〰️〰️〰️〰️〰️
© | @microfrontend_ir
در این ویدیو از آموزش React Query ابتدا با استفاده از useMutation امکان حذف آگهی ها را فراهم کردیم و سپس برای بررسی بیشتر با استفاده از Promise امکانی را فراهم کردیم که بتوان برای حذف آیتم تا زمان مشخصی به کاربر امکان Undo بدهیم.
Link: https://youtu.be/R5BR55jFGEo
PlayList: https://www.youtube.com/playlist?list=PLJ9zDGwhhsBzELHNdflPj4XgS2hAXBILz
Git Repo: https://github.com/hemanhp/react-query-course
〰️〰️〰️〰️〰️〰️
© | @microfrontend_ir
❤4👍2🔥2
Forwarded from Django Expert (Boby Cloud)
✔️ در طی چند سال گذشته از فعالیت کانال، محتواهای رایگان زیادی تولید شده و هدف کانال هم از ابتدا اشتراک دانش رایگان و عام المنفعه بوده، برای همین تصمیم گرفتیم یک بار دیگه تمام این محتواهارو در یک پیام قرار بدیم تا به راحتی قابل دسترسی برای افراد علاقمند به یادگیری باشه:
✅🎥 کانال یوتوب سیلیسیم مهران تعریف (آموزش پایتون و جاوااسکریپت و...)
https://www.youtube.com/@Silicium7
✅🎥 کانال یوتوب میکروفرانت اند (آموزش پایتون و جاواسکریپت و ...)
https://www.youtube.com/@MicroFrontend
✅🎥 کانال یوتوب بابی کلاد (آموزش پایتون، کلاد، دوآپس و ...)
https://www.youtube.com/@bobycloud
✅🎥 کانال یوتوب امیر مطهری (آموزش پایتون، میکروپایتون و ...)
https://www.youtube.com/@AmirMotahari
✅🎥 کانال یوتوب گیت اور هیر مانی (آموزش پایتون، دیزاین پترن و ...)
https://www.youtube.com/@GitOverHere
✅🎥 کانال یوتوب تورهام (آموزش پایتون، فست ای پی آی و ...)
https://www.youtube.com/@techwithtori
✅🎥 کانال یوتوب شهریار شریعتی (آموزش سلری، جنگو چنلز، وب فریمورک ها و ...)
https://www.youtube.com/@ShahriarShariati
✅🎥 کانال یوتوب دوآپس هابیز (آموزش امیربهادر - دوره پروژه محور جنگو به همراه داکر، سی آی سی دی و ...)
https://www.youtube.com/watch?v=KtYDIJN3wmM&list=PLYrn63eEqAzY5uG5ks_OquWcojzHvhp9Z
✅🔥 سه فایل مصاحبه با آقای حسن رمضانی که از Core Developer های Django, Gunicorn, Pydantic, Urllib3 و ... هستند در کانال موجود هست که با سرچ کردن اسم آقای "حسن رمضانی" در کانال میتونید مصاحبه هارو پیدا کنید و گوش بدید.
✅📚 ریپازیتوری گیتهاب Awesome Python Resources: مجموعه ای از بهترین و کامل ترین ریسورسهای مورد نیاز برای رشد در مسیر شغلی مهندسی نرم افزار (پایتون) به همراه تفکیک بر اساس Career Path و Advanced Topics
https://github.com/DjangoEx/awesome-python-resources
✅📚 ریپازیتوری گیتهاب Awesome Python Roadmaps: مجموعه از رودمپهای مورد نیاز یک مهندس نرم افزار (پایتون) در Career Path هایی نظیر Backend، Data Scientist، Software Architect و ...
https://github.com/DjangoEx/awesome-python-roadmaps
✅📚 تمام ریپازیتوریها به صورت یکجا نیز در صفحه گیتهاب DjangoEx قابل دسترسی هست
https://github.com/DjangoEx
✅ تمام این موارد آموزشی رایگان هستند و میتونید ازشون استفاده کنید.
✅ موقت: اگر مطلبی رو یادم رفته بزارم و قبلا توی کانال تولید محتوا داشتند لطفا به من (@BobyCloud) پیام بدید.
#رودمپ #پایتون #جنگو #منابع #از_کجا_شروع_کنیم
〰️〰️〰️〰️〰️〰️
© @DjangoEx
✅🎥 کانال یوتوب سیلیسیم مهران تعریف (آموزش پایتون و جاوااسکریپت و...)
https://www.youtube.com/@Silicium7
✅🎥 کانال یوتوب میکروفرانت اند (آموزش پایتون و جاواسکریپت و ...)
https://www.youtube.com/@MicroFrontend
✅🎥 کانال یوتوب بابی کلاد (آموزش پایتون، کلاد، دوآپس و ...)
https://www.youtube.com/@bobycloud
✅🎥 کانال یوتوب امیر مطهری (آموزش پایتون، میکروپایتون و ...)
https://www.youtube.com/@AmirMotahari
✅🎥 کانال یوتوب گیت اور هیر مانی (آموزش پایتون، دیزاین پترن و ...)
https://www.youtube.com/@GitOverHere
✅🎥 کانال یوتوب تورهام (آموزش پایتون، فست ای پی آی و ...)
https://www.youtube.com/@techwithtori
✅🎥 کانال یوتوب شهریار شریعتی (آموزش سلری، جنگو چنلز، وب فریمورک ها و ...)
https://www.youtube.com/@ShahriarShariati
✅🎥 کانال یوتوب دوآپس هابیز (آموزش امیربهادر - دوره پروژه محور جنگو به همراه داکر، سی آی سی دی و ...)
https://www.youtube.com/watch?v=KtYDIJN3wmM&list=PLYrn63eEqAzY5uG5ks_OquWcojzHvhp9Z
✅🔥 سه فایل مصاحبه با آقای حسن رمضانی که از Core Developer های Django, Gunicorn, Pydantic, Urllib3 و ... هستند در کانال موجود هست که با سرچ کردن اسم آقای "حسن رمضانی" در کانال میتونید مصاحبه هارو پیدا کنید و گوش بدید.
✅📚 ریپازیتوری گیتهاب Awesome Python Resources: مجموعه ای از بهترین و کامل ترین ریسورسهای مورد نیاز برای رشد در مسیر شغلی مهندسی نرم افزار (پایتون) به همراه تفکیک بر اساس Career Path و Advanced Topics
https://github.com/DjangoEx/awesome-python-resources
✅📚 ریپازیتوری گیتهاب Awesome Python Roadmaps: مجموعه از رودمپهای مورد نیاز یک مهندس نرم افزار (پایتون) در Career Path هایی نظیر Backend، Data Scientist، Software Architect و ...
https://github.com/DjangoEx/awesome-python-roadmaps
✅📚 تمام ریپازیتوریها به صورت یکجا نیز در صفحه گیتهاب DjangoEx قابل دسترسی هست
https://github.com/DjangoEx
✅ تمام این موارد آموزشی رایگان هستند و میتونید ازشون استفاده کنید.
✅ موقت: اگر مطلبی رو یادم رفته بزارم و قبلا توی کانال تولید محتوا داشتند لطفا به من (@BobyCloud) پیام بدید.
#رودمپ #پایتون #جنگو #منابع #از_کجا_شروع_کنیم
〰️〰️〰️〰️〰️〰️
© @DjangoEx
❤7👍3
آموزش جامع داکر
** در این پلی لیست میخوام داکر رو از بیخ یاد بگیریم. یعنی قبل از داکر خودمون یه چیزی شبیه داکر اما خیلی ساده تر با پایتون بنویسم بعد بریم سراغ خود داکر که هم داکر رو یاد بگیریم و هم بدونیم پشت صحنه چه اتفاقاتی می افته!
در این ویدیو از آموزش جامع Docker به بررسی تاریخچه مجازی سازی و روش های مختلف آن پرداختیم. روش VM-Based برای مجازی سازی کامل یک ماشین و روش Container Based برای اجرای ایزوله فرایندها و پروسس ها مطرح کردیم. سپس مولفه های لازم برای ساخت کانتینر در سیستم عامل لینوکس را بررسی کردیم و در نهایت Docker و podman و rtk را به عنوان مهمترین Container runtime های حال حاضر معرفی کردیم و در نهایت مفهوم Container Orchestration و ضرورت آن را شرح دادیم.
Link: https://youtu.be/Z8olH4UzeA0
Playlsit: https://www.youtube.com/playlist?list=PLJ9zDGwhhsBzLTI3VNE8Vp4JpXNn_yRR7
〰️〰️〰️〰️〰️〰️
© @microfrontend_ir
** در این پلی لیست میخوام داکر رو از بیخ یاد بگیریم. یعنی قبل از داکر خودمون یه چیزی شبیه داکر اما خیلی ساده تر با پایتون بنویسم بعد بریم سراغ خود داکر که هم داکر رو یاد بگیریم و هم بدونیم پشت صحنه چه اتفاقاتی می افته!
در این ویدیو از آموزش جامع Docker به بررسی تاریخچه مجازی سازی و روش های مختلف آن پرداختیم. روش VM-Based برای مجازی سازی کامل یک ماشین و روش Container Based برای اجرای ایزوله فرایندها و پروسس ها مطرح کردیم. سپس مولفه های لازم برای ساخت کانتینر در سیستم عامل لینوکس را بررسی کردیم و در نهایت Docker و podman و rtk را به عنوان مهمترین Container runtime های حال حاضر معرفی کردیم و در نهایت مفهوم Container Orchestration و ضرورت آن را شرح دادیم.
Link: https://youtu.be/Z8olH4UzeA0
Playlsit: https://www.youtube.com/playlist?list=PLJ9zDGwhhsBzLTI3VNE8Vp4JpXNn_yRR7
〰️〰️〰️〰️〰️〰️
© @microfrontend_ir
🔥16❤10👍4
Microfrontend.ir
آموزش جامع داکر ** در این پلی لیست میخوام داکر رو از بیخ یاد بگیریم. یعنی قبل از داکر خودمون یه چیزی شبیه داکر اما خیلی ساده تر با پایتون بنویسم بعد بریم سراغ خود داکر که هم داکر رو یاد بگیریم و هم بدونیم پشت صحنه چه اتفاقاتی می افته! در این ویدیو از آموزش…
در این ویدیو از آموزش جامع داکر به بررسی مفهوم Namespace پرداختیم. در لینوکس، مفهوم Namespace یک ویژگی اساسی از محیطهای اجرای فرایندها (Processes) است که به آنها این امکان را میدهد که از یکدیگر جدا شده و منابع مختلفی را به اشتراک نگذارند. Namespace به عنوان یک مکانیزم ایزولاسیون سطح کرنل (Kernel-level isolation) عمل میکند و برای مدیریت و ایجاد یک محیط مجازی (Virtualized environment) برای هر فرایند مفید است.
در لینوکس، چندین نوع Namespace وجود دارد که هرکدام به یک نوع خاص از منابع مربوطه ایزوله میشوند.
Link: https://youtu.be/AgkmTpOMcRM
Playlsit: https://www.youtube.com/playlist?list=PLJ9zDGwhhsBzLTI3VNE8Vp4JpXNn_yRR7
〰️〰️〰️〰️〰️〰️
© @microfrontend_ir
در لینوکس، چندین نوع Namespace وجود دارد که هرکدام به یک نوع خاص از منابع مربوطه ایزوله میشوند.
Link: https://youtu.be/AgkmTpOMcRM
Playlsit: https://www.youtube.com/playlist?list=PLJ9zDGwhhsBzLTI3VNE8Vp4JpXNn_yRR7
〰️〰️〰️〰️〰️〰️
© @microfrontend_ir
❤9👍5🔥1
Microfrontend.ir
در این ویدیو از آموزش جامع داکر به بررسی مفهوم Namespace پرداختیم. در لینوکس، مفهوم Namespace یک ویژگی اساسی از محیطهای اجرای فرایندها (Processes) است که به آنها این امکان را میدهد که از یکدیگر جدا شده و منابع مختلفی را به اشتراک نگذارند. Namespace به عنوان…
آموزش داکر - ایجاد Process با fork
در قسمت دوم از آموزش داکر برای بررسی و درک بهتر کانتینرها یک محیط توسعه پایتونی مبتنی بر ماشین مجازی و Vagrant ایجاد کردیم و سپس با استفاده از fork یک child process ایجاد کردیم که بتوانیم مفهوم isolation را بیشتر درک کنیم و در ادامه به پیاده سازی رویکردهای مختلف آن بپردازیم. همچنین پیکربندی vagrant را بر روی PyCharm و VSCode انجام دادیم تا بتوانیم در ادامه راحت تر از این ابزارها استفاده کنیم.
Link: https://youtu.be/VNRZyp5cjAQ
Git: https://github.com/hemanhp/container-course
Playlsit: https://www.youtube.com/playlist?list=PLJ9zDGwhhsBzLTI3VNE8Vp4JpXNn_yRR7
〰️〰️〰️〰️〰️〰️
© @microfrontend_ir
در قسمت دوم از آموزش داکر برای بررسی و درک بهتر کانتینرها یک محیط توسعه پایتونی مبتنی بر ماشین مجازی و Vagrant ایجاد کردیم و سپس با استفاده از fork یک child process ایجاد کردیم که بتوانیم مفهوم isolation را بیشتر درک کنیم و در ادامه به پیاده سازی رویکردهای مختلف آن بپردازیم. همچنین پیکربندی vagrant را بر روی PyCharm و VSCode انجام دادیم تا بتوانیم در ادامه راحت تر از این ابزارها استفاده کنیم.
Link: https://youtu.be/VNRZyp5cjAQ
Git: https://github.com/hemanhp/container-course
Playlsit: https://www.youtube.com/playlist?list=PLJ9zDGwhhsBzLTI3VNE8Vp4JpXNn_yRR7
〰️〰️〰️〰️〰️〰️
© @microfrontend_ir
❤8👍7
در یک ماه گذشته کانال میکروفرانت اند بیش از ۹ هزار بازدید و یک هزار ساعت تماشا شده. برام باور پذیر نبود که با داشتن این جنس محتوا به این حد از بازدید برسه و از منظر خودم یک موفقیته. ممنونم از حمایت همه دوستانی که به رشد کانال کمک کردند. عمیقا امیدوارم و دوست دارم بتونم نقشی در توسعه جامعه توسعه دهندگان فارسی داشته باشم و خوشحال میشم اگر فکر میکنید این محتوا مفیده، با اشتراک گذاشتن محتوی کانال با دوستانتون من رو در رسیدن به این هدف یاری کنید.
در این کانال سعی میکنم تکنولوژیهای مختلفی که باهاشون تو محیط پروداکشن کار کردم آموزش بدم. هدفم اینه از آموزش های مرسوم یه خرده فراتر برم و مباحثی مطرح کنم که در پروژههای واقعی به کار گرفته میشوند صحبت کنم و عمیق تر بررسی کنم. محتوای کانال فقط به فرانت اند مرتبط نیستند و سعی میکنم به شکل فول استک و حوزه های مختلف دیتا باشه.
Channel Link: https://www.youtube.com/microfrontend
〰️〰️〰️〰️〰️〰️
© @microfrontend_ir
در این کانال سعی میکنم تکنولوژیهای مختلفی که باهاشون تو محیط پروداکشن کار کردم آموزش بدم. هدفم اینه از آموزش های مرسوم یه خرده فراتر برم و مباحثی مطرح کنم که در پروژههای واقعی به کار گرفته میشوند صحبت کنم و عمیق تر بررسی کنم. محتوای کانال فقط به فرانت اند مرتبط نیستند و سعی میکنم به شکل فول استک و حوزه های مختلف دیتا باشه.
Channel Link: https://www.youtube.com/microfrontend
〰️〰️〰️〰️〰️〰️
© @microfrontend_ir
❤61👍5🔥1
Microfrontend.ir
آموزش داکر - ایجاد Process با fork در قسمت دوم از آموزش داکر برای بررسی و درک بهتر کانتینرها یک محیط توسعه پایتونی مبتنی بر ماشین مجازی و Vagrant ایجاد کردیم و سپس با استفاده از fork یک child process ایجاد کردیم که بتوانیم مفهوم isolation را بیشتر درک…
آموزش داکر - Linux Busybox and chroot
در این به بررسی مفهوم jail process در لینوکس پرداختیم. بعد از اجرای پروسس در لینوکس به صورت پیش فرض به همه فایل سیستم دسترسی دارد. از طریق دستور chroot میتوان یک پروسس را با یک روت دایرکتوری مشخص و ایزوله اجرا کرد به گونه ای که صرفا همان دایرکتوری را ببیند و به سایر فایل سیستم دسترسی نداشته باشد و به اصطلاح لینوکسی یک پروسس را در زندان اجرا کنیم. سپس کاربرد busybox را بویژه در بهینه کردن ایمیج ها بررسی کردیم و دلیل سبک بودن ایمیج هایی مانند alpine را شرح دادیم و نهایتا موارد فوق را با پایتون پیاده کردیم.
Link: https://youtu.be/5m04uQDd5Ns
Git: https://github.com/hemanhp/container-course
Playlsit: https://www.youtube.com/playlist?list=PLJ9zDGwhhsBzLTI3VNE8Vp4JpXNn_yRR7
〰️〰️〰️〰️〰️〰️
© @microfrontend_ir
در این به بررسی مفهوم jail process در لینوکس پرداختیم. بعد از اجرای پروسس در لینوکس به صورت پیش فرض به همه فایل سیستم دسترسی دارد. از طریق دستور chroot میتوان یک پروسس را با یک روت دایرکتوری مشخص و ایزوله اجرا کرد به گونه ای که صرفا همان دایرکتوری را ببیند و به سایر فایل سیستم دسترسی نداشته باشد و به اصطلاح لینوکسی یک پروسس را در زندان اجرا کنیم. سپس کاربرد busybox را بویژه در بهینه کردن ایمیج ها بررسی کردیم و دلیل سبک بودن ایمیج هایی مانند alpine را شرح دادیم و نهایتا موارد فوق را با پایتون پیاده کردیم.
Link: https://youtu.be/5m04uQDd5Ns
Git: https://github.com/hemanhp/container-course
Playlsit: https://www.youtube.com/playlist?list=PLJ9zDGwhhsBzLTI3VNE8Vp4JpXNn_yRR7
〰️〰️〰️〰️〰️〰️
© @microfrontend_ir
❤15👍2🔥2
بهینه سازی و افزایش سرعت پایتون با C Extension
در این ویدیو به بررسی ۴ سناریو مختلف برای اجرای یک مثال ساده پرداختیم که بتوانیم پرفورمنس را در حالت های مختلف مقایسه کنیم. در حالت اول از Pure Python استفاده کردیم. در حالت همان مثال را با C پیاده سازی کردیم. در حالت سوم از NumPy و در حالت چهارم کدی را که به زبان C نوشته بودیم از طریق پایتون فراخوانی کردیم و نتایج را به صورت آماری بررسی کردیم. یکی از مهمترین راهکارهای بهینه سازی کدهای پایتون در حالت هایی که پرفورمنس حیاتی است استفاده از C Extension است
** چون در پلی لیست داکر لازم است که با C تعامل داشته باشد مشاهده این ویدیو برای اون پلی لیست هم مفیده
Link : https://youtu.be/SfRtPJ8DNtA
playlist: https://www.youtube.com/playlist?list=PLJ9zDGwhhsBwZcy2wRRBNqXZP8wf--TmF
〰️〰️〰️〰️〰️〰️
© @microfrontend_ir
در این ویدیو به بررسی ۴ سناریو مختلف برای اجرای یک مثال ساده پرداختیم که بتوانیم پرفورمنس را در حالت های مختلف مقایسه کنیم. در حالت اول از Pure Python استفاده کردیم. در حالت همان مثال را با C پیاده سازی کردیم. در حالت سوم از NumPy و در حالت چهارم کدی را که به زبان C نوشته بودیم از طریق پایتون فراخوانی کردیم و نتایج را به صورت آماری بررسی کردیم. یکی از مهمترین راهکارهای بهینه سازی کدهای پایتون در حالت هایی که پرفورمنس حیاتی است استفاده از C Extension است
** چون در پلی لیست داکر لازم است که با C تعامل داشته باشد مشاهده این ویدیو برای اون پلی لیست هم مفیده
Link : https://youtu.be/SfRtPJ8DNtA
playlist: https://www.youtube.com/playlist?list=PLJ9zDGwhhsBwZcy2wRRBNqXZP8wf--TmF
〰️〰️〰️〰️〰️〰️
© @microfrontend_ir
❤🔥8👍6❤3🔥1
Forwarded from Django Expert (Majid A.M)
برنامه نویس خوب کیه؟
این بار میخوایم با هیمن حسینی پناه در مورد تعریف های مختلف یه برنامه نویس گپ و گفت کنیم
امروز شنبه 7 بهمن ماه 1402 ساعت 18 به وقت تهران مهمان هیمن هستیم
™️ @DjangoIR
〰〰〰〰〰〰〰〰〰〰〰
© @DjangoEX | @Djangogap
این بار میخوایم با هیمن حسینی پناه در مورد تعریف های مختلف یه برنامه نویس گپ و گفت کنیم
امروز شنبه 7 بهمن ماه 1402 ساعت 18 به وقت تهران مهمان هیمن هستیم
™️ @DjangoIR
〰〰〰〰〰〰〰〰〰〰〰
© @DjangoEX | @Djangogap
❤10❤🔥3👍2
Microfrontend.ir
آموزش داکر - Linux Busybox and chroot در این به بررسی مفهوم jail process در لینوکس پرداختیم. بعد از اجرای پروسس در لینوکس به صورت پیش فرض به همه فایل سیستم دسترسی دارد. از طریق دستور chroot میتوان یک پروسس را با یک روت دایرکتوری مشخص و ایزوله اجرا کرد به…
آموزش داکر - Mount Namespace
در قسمت چهارم از آموزش Docker به بررسی Mount Namespace در لینوکس و شیوه استفاده از آن پرداختیم. از طریق این مفهوم می توان Mount Point های یک پروسس را ایزوله کرد. برای این کار unshare Linux Api استفاده کردیم و شیوه فراخوانی آن در پایتون را بررسی کردیم.
Link: https://youtu.be/SrxytU6eZ68
Git: https://github.com/hemanhp/container-course
Playlsit: https://www.youtube.com/playlist?list=PLJ9zDGwhhsBzLTI3VNE8Vp4JpXNn_yRR7
〰️〰️〰️〰️〰️〰️
© @microfrontend_ir
در قسمت چهارم از آموزش Docker به بررسی Mount Namespace در لینوکس و شیوه استفاده از آن پرداختیم. از طریق این مفهوم می توان Mount Point های یک پروسس را ایزوله کرد. برای این کار unshare Linux Api استفاده کردیم و شیوه فراخوانی آن در پایتون را بررسی کردیم.
Link: https://youtu.be/SrxytU6eZ68
Git: https://github.com/hemanhp/container-course
Playlsit: https://www.youtube.com/playlist?list=PLJ9zDGwhhsBzLTI3VNE8Vp4JpXNn_yRR7
〰️〰️〰️〰️〰️〰️
© @microfrontend_ir
❤11🔥4👍3
Microfrontend.ir
آموزش داکر - Mount Namespace در قسمت چهارم از آموزش Docker به بررسی Mount Namespace در لینوکس و شیوه استفاده از آن پرداختیم. از طریق این مفهوم می توان Mount Point های یک پروسس را ایزوله کرد. برای این کار unshare Linux Api استفاده کردیم و شیوه فراخوانی آن…
آموزش داکر - مفهوم Process در لینوکس
در قسمت پنجم از آموزش Docker به بررسی مفهوم Process در لینوکس پرداختیم. ابتدا در مورد فایل سیستم procfs و ضرورت mount شدن آن صحبت کردیم. سپس شیوه ایجاد پروسس در لینوکس پرداختیم. در لینوکس معمولا از دو رویکرد برای ساخت پروسس استفاده می شود. در حالت اول از fork استفاده می شود که یک ساختار پدر فرزندی ایجاد می کند و حالت دوم از سیستم کال execve استفاده می شود که پروسس را جایگزین می کند. و در نهایت تفاوت زامبی و اروفان پروسس را که یکی از سوالات پر تکرار در مصاحبه
های فنی است را با یک مثال شرح دادیم.
Link: https://youtu.be/A9la8hJvp2k
Git: https://github.com/hemanhp/container-course
Playlsit: https://www.youtube.com/playlist?list=PLJ9zDGwhhsBzLTI3VNE8Vp4JpXNn_yRR7
〰️〰️〰️〰️〰️〰️
© @microfrontend_ir
در قسمت پنجم از آموزش Docker به بررسی مفهوم Process در لینوکس پرداختیم. ابتدا در مورد فایل سیستم procfs و ضرورت mount شدن آن صحبت کردیم. سپس شیوه ایجاد پروسس در لینوکس پرداختیم. در لینوکس معمولا از دو رویکرد برای ساخت پروسس استفاده می شود. در حالت اول از fork استفاده می شود که یک ساختار پدر فرزندی ایجاد می کند و حالت دوم از سیستم کال execve استفاده می شود که پروسس را جایگزین می کند. و در نهایت تفاوت زامبی و اروفان پروسس را که یکی از سوالات پر تکرار در مصاحبه
های فنی است را با یک مثال شرح دادیم.
Link: https://youtu.be/A9la8hJvp2k
Git: https://github.com/hemanhp/container-course
Playlsit: https://www.youtube.com/playlist?list=PLJ9zDGwhhsBzLTI3VNE8Vp4JpXNn_yRR7
〰️〰️〰️〰️〰️〰️
© @microfrontend_ir
❤12👏2👍1
Microfrontend.ir
آموزش داکر - مفهوم Process در لینوکس در قسمت پنجم از آموزش Docker به بررسی مفهوم Process در لینوکس پرداختیم. ابتدا در مورد فایل سیستم procfs و ضرورت mount شدن آن صحبت کردیم. سپس شیوه ایجاد پروسس در لینوکس پرداختیم. در لینوکس معمولا از دو رویکرد برای ساخت…
در قسمت ششم از آموزش Docker به بررسی PID and UTS Linux Namespace پرداختیم.
به طور کلی، فضای نام UTS شامل اطلاعاتی مانند نام میزبان (hostname) و نسخه کرنل است که هر فرآیندی در سیستم لینوکس می تواند دسترسی داشته باشد. با استفاده از namespace UTS، می توانید این اطلاعات را برای هر فرآیند جداگانه تغییر دهید، بدون اینکه اثری بر روی سایر فرآیندها داشته باشد. این کار امکان ایجاد محیط های مجازی مستقل از یکدیگر را فراهم می کند.
استفاده از PID namespace به ارائه امکانات مانند ایجاد محیطهای مجازی (virtual environments) و ایزوله کردن فرآیندها از یکدیگر کمک میکند. به این صورت که هر فضای نام PID میتواند دارای یک سلسله مراتب از شناسههای فرآیندها باشد که مستقل از سلسله مراتب دیگر PID namespace هاست. این امکان به سیستم عامل کمک میکند تا فرآیندها را در محیطهای جداگانه اجرا کند و از همدیگر جدا نگه دارد.
Link: https://youtu.be/WBqTTdBEVps
Git: https://github.com/hemanhp/container-course
Playlsit: https://www.youtube.com/playlist?list=PLJ9zDGwhhsBzLTI3VNE8Vp4JpXNn_yRR7
〰️〰️〰️〰️〰️〰️
© @microfrontend_ir
به طور کلی، فضای نام UTS شامل اطلاعاتی مانند نام میزبان (hostname) و نسخه کرنل است که هر فرآیندی در سیستم لینوکس می تواند دسترسی داشته باشد. با استفاده از namespace UTS، می توانید این اطلاعات را برای هر فرآیند جداگانه تغییر دهید، بدون اینکه اثری بر روی سایر فرآیندها داشته باشد. این کار امکان ایجاد محیط های مجازی مستقل از یکدیگر را فراهم می کند.
استفاده از PID namespace به ارائه امکانات مانند ایجاد محیطهای مجازی (virtual environments) و ایزوله کردن فرآیندها از یکدیگر کمک میکند. به این صورت که هر فضای نام PID میتواند دارای یک سلسله مراتب از شناسههای فرآیندها باشد که مستقل از سلسله مراتب دیگر PID namespace هاست. این امکان به سیستم عامل کمک میکند تا فرآیندها را در محیطهای جداگانه اجرا کند و از همدیگر جدا نگه دارد.
Link: https://youtu.be/WBqTTdBEVps
Git: https://github.com/hemanhp/container-course
Playlsit: https://www.youtube.com/playlist?list=PLJ9zDGwhhsBzLTI3VNE8Vp4JpXNn_yRR7
〰️〰️〰️〰️〰️〰️
© @microfrontend_ir
❤14👍4
Microfrontend.ir
در قسمت ششم از آموزش Docker به بررسی PID and UTS Linux Namespace پرداختیم. به طور کلی، فضای نام UTS شامل اطلاعاتی مانند نام میزبان (hostname) و نسخه کرنل است که هر فرآیندی در سیستم لینوکس می تواند دسترسی داشته باشد. با استفاده از namespace UTS، می توانید…
در قسمت هفتم از آموزش Docker به بررسی رویکرد مدیریت منابع در لینوکس با استفاده از cgroup پرداختیم.
در لینوکس، cgroups یا "control groups" ابزاری برای محدود کردن، اختصاص دادن منابع سیستم مانند CPU، حافظه، پهنای باند شبکه و... به پروسهها یا گروههای پروسه است. این امکان را فراهم میکند تا منابع سیستم به بهترین شکل ممکن بین برنامهها یا خدمات تقسیم شود و همچنین به نظارت و کنترل دقیقتری بر روی مصرف منابع سیستم دست یافت.
در این ویدیو ابتدا یک برنامه ساده پایتونی که حافظه زیادی را در گیر میکند را نوشتیم و سپس با استفاده از cgroup سعی کردیم مموری استفاده شود توسط برنامه را محدود و کنترل کردیم.
Link: https://youtu.be/i8Q2YoYWYKE
Git: https://github.com/hemanhp/container-course
Playlsit: https://www.youtube.com/playlist?list=PLJ9zDGwhhsBzLTI3VNE8Vp4JpXNn_yRR7
〰️〰️〰️〰️〰️〰️
© @microfrontend_ir
در لینوکس، cgroups یا "control groups" ابزاری برای محدود کردن، اختصاص دادن منابع سیستم مانند CPU، حافظه، پهنای باند شبکه و... به پروسهها یا گروههای پروسه است. این امکان را فراهم میکند تا منابع سیستم به بهترین شکل ممکن بین برنامهها یا خدمات تقسیم شود و همچنین به نظارت و کنترل دقیقتری بر روی مصرف منابع سیستم دست یافت.
در این ویدیو ابتدا یک برنامه ساده پایتونی که حافظه زیادی را در گیر میکند را نوشتیم و سپس با استفاده از cgroup سعی کردیم مموری استفاده شود توسط برنامه را محدود و کنترل کردیم.
Link: https://youtu.be/i8Q2YoYWYKE
Git: https://github.com/hemanhp/container-course
Playlsit: https://www.youtube.com/playlist?list=PLJ9zDGwhhsBzLTI3VNE8Vp4JpXNn_yRR7
〰️〰️〰️〰️〰️〰️
© @microfrontend_ir
❤6🔥5👍1
Microfrontend.ir
در قسمت هفتم از آموزش Docker به بررسی رویکرد مدیریت منابع در لینوکس با استفاده از cgroup پرداختیم. در لینوکس، cgroups یا "control groups" ابزاری برای محدود کردن، اختصاص دادن منابع سیستم مانند CPU، حافظه، پهنای باند شبکه و... به پروسهها یا گروههای پروسه…
تو قسمت هشتم از پیش آموزش Docker ابتدا مکانیزم ساخت پروسس رو از fork بردیم رو clone بعد برای کانتینر یک cgroup ساختیم
Link: https://youtu.be/F1tb-KZo1K8
Git: https://github.com/hemanhp/container-course
Playlsit: https://www.youtube.com/playlist?list=PLJ9zDGwhhsBzLTI3VNE8Vp4JpXNn_yRR7
〰️〰️〰️〰️〰️〰️
© @microfrontend_ir
Link: https://youtu.be/F1tb-KZo1K8
Git: https://github.com/hemanhp/container-course
Playlsit: https://www.youtube.com/playlist?list=PLJ9zDGwhhsBzLTI3VNE8Vp4JpXNn_yRR7
〰️〰️〰️〰️〰️〰️
© @microfrontend_ir
👍7🔥6❤1
I've been thinking about the foundational skills that will serve me (and my son) well for the next 10 - 20 years.
Statistics and Probabilities are high on that list.
https://x.com/svpino/status/1763914648359748066
Statistics and Probabilities are high on that list.
https://x.com/svpino/status/1763914648359748066
❤4
Microfrontend.ir
تو قسمت هشتم از پیش آموزش Docker ابتدا مکانیزم ساخت پروسس رو از fork بردیم رو clone بعد برای کانتینر یک cgroup ساختیم Link: https://youtu.be/F1tb-KZo1K8 Git: https://github.com/hemanhp/container-course Playlsit: https://www.youtube.com/playlist?list…
در قسمت نهم از آموزش Docker به بررسی Net namespace برای ایزوله کردن شبکه از پروسس پرداختیم. ابتدا در مورد نام گذاری device ها در لینوکس صبحت کردیم و سپس پروسس خود را در نیم اسپیس ایزوله شبکه اجرا کردیم.
Net namespace یا فضای نام شبکه در لینوکس، یکی از انواع فضاهای نام (namespaces) است که به شما امکان میدهد منابع شبکه مانند آدرسهای IP، جدولهای مسیریابی، قوانین فایروال و سوکتهای شبکه را در بین چندین پروسه جدا از هم نگه دارید. با استفاده از net namespace، میتوانید چندین محیط شبکه مجازی و مستقل در یک سرور فیزیکی ایجاد کنید، که هر کدام دارای تنظیمات و پروتکلهای شبکه خود هستند.
Link: https://youtu.be/728mAe353RM
Git: https://github.com/hemanhp/container-course
Playlsit: https://www.youtube.com/playlist?list=PLJ9zDGwhhsBzLTI3VNE8Vp4JpXNn_yRR7
〰️〰️〰️〰️〰️〰️
© @microfrontend_ir
Net namespace یا فضای نام شبکه در لینوکس، یکی از انواع فضاهای نام (namespaces) است که به شما امکان میدهد منابع شبکه مانند آدرسهای IP، جدولهای مسیریابی، قوانین فایروال و سوکتهای شبکه را در بین چندین پروسه جدا از هم نگه دارید. با استفاده از net namespace، میتوانید چندین محیط شبکه مجازی و مستقل در یک سرور فیزیکی ایجاد کنید، که هر کدام دارای تنظیمات و پروتکلهای شبکه خود هستند.
Link: https://youtu.be/728mAe353RM
Git: https://github.com/hemanhp/container-course
Playlsit: https://www.youtube.com/playlist?list=PLJ9zDGwhhsBzLTI3VNE8Vp4JpXNn_yRR7
〰️〰️〰️〰️〰️〰️
© @microfrontend_ir
🔥12👍2
Microfrontend.ir
در قسمت نهم از آموزش Docker به بررسی Net namespace برای ایزوله کردن شبکه از پروسس پرداختیم. ابتدا در مورد نام گذاری device ها در لینوکس صبحت کردیم و سپس پروسس خود را در نیم اسپیس ایزوله شبکه اجرا کردیم. Net namespace یا فضای نام شبکه در لینوکس، یکی از…
در قسمت دهم از آموزش Docker به بررسی مفهوم Layered File System در لینوکس و داکر پرداختیم. ابتدا به بررسی فایل سیستم در لینوکس پرداختیم و ضرورت استفاده از فایل سیستم های لایه ای را مطرح کردیم و در نهایت شیوه استفاده از overlayfs در لینوکس را شرح دادیم. overlayfs یکی از مفاهیم بنیادین در داکر است که نقش مهمی در بهینه سازی ایمیج ها دارد.
Link: https://youtu.be/noWgiAofss4
Git: https://github.com/hemanhp/container-course
Playlsit: https://www.youtube.com/playlist?list=PLJ9zDGwhhsBzLTI3VNE8Vp4JpXNn_yRR7
〰️〰️〰️〰️〰️〰️
© @microfrontend_ir
Link: https://youtu.be/noWgiAofss4
Git: https://github.com/hemanhp/container-course
Playlsit: https://www.youtube.com/playlist?list=PLJ9zDGwhhsBzLTI3VNE8Vp4JpXNn_yRR7
〰️〰️〰️〰️〰️〰️
© @microfrontend_ir
❤14
در این ویدیو از پلیلیست نکته ها و ترفندهای پایتون به بررسی ساخت اپلیکیشنهای Command-line در Python پرداختیم و سعی کردیم دستور ls در لینوکس را با پایتون بازنویسی کردیم.
یک برنامه خط فرمان (Command Line Application) نوعی برنامه کامپیوتری است که از طریق خط فرمان (Command Line Interface یا CLI) کنترل و اجرا میشود. در محیطهای مختلف سیستمهای عامل مانند Windows, Linux و macOS، کاربران میتوانند با وارد کردن دستورات متنی در یک پنجره ترمینال یا کنسول، با برنامههای خط فرمان ارتباط برقرار کنند.
ابتدا شیوه دسترسی به پارامترهای خط فرمان در پایتون را شرح دادیم سپس با استفاده از پکیج argparse کنترل بیشتری بر روی پارامترها اعمال کردیم و در نهایت با استفاده از پکیج click که ویژه ساخت چنین نرم افزارهایی است ساختار برنامه را بهبود دادیم.
Link : https://youtu.be/xYPGgFAeVaU
playlist: https://www.youtube.com/playlist?list=PLJ9zDGwhhsBwZcy2wRRBNqXZP8wf--TmF
〰️〰️〰️〰️〰️〰️
© @microfrontend_ir
یک برنامه خط فرمان (Command Line Application) نوعی برنامه کامپیوتری است که از طریق خط فرمان (Command Line Interface یا CLI) کنترل و اجرا میشود. در محیطهای مختلف سیستمهای عامل مانند Windows, Linux و macOS، کاربران میتوانند با وارد کردن دستورات متنی در یک پنجره ترمینال یا کنسول، با برنامههای خط فرمان ارتباط برقرار کنند.
ابتدا شیوه دسترسی به پارامترهای خط فرمان در پایتون را شرح دادیم سپس با استفاده از پکیج argparse کنترل بیشتری بر روی پارامترها اعمال کردیم و در نهایت با استفاده از پکیج click که ویژه ساخت چنین نرم افزارهایی است ساختار برنامه را بهبود دادیم.
Link : https://youtu.be/xYPGgFAeVaU
playlist: https://www.youtube.com/playlist?list=PLJ9zDGwhhsBwZcy2wRRBNqXZP8wf--TmF
〰️〰️〰️〰️〰️〰️
© @microfrontend_ir
👍11❤2🔥1
👍4