Codoloper Articles
18 subscribers
44 photos
44 links
مقاله های کدلپر اینجا منتشر میشن

کانال اصلی:
@Codoloper
Download Telegram
Forwarded from Codoloper
📌 قطعی اینترنت به هیچ عنوان کار درستی نیست در هر شرایطی.

با پاک کردن صورت مسئله مشکل رفع نمیشه.

اما متاسفانه در ایران هنوز برخی باید با تبعات این قطعی ها دست و پنجه نرم کنند، و هر لحظه امکان داره دوباره اتفاق بیوفته و یا اصلا رفع نشده باشه محدودیت دسترسی به اینترنت بین الملل

در نوشته زیر سعی کردیم آموزشی بنویسیم که بتونید با استفاده از چک لیست داخل اموزش بدون دردسر بیشتر دیپلوی کنید.

امیدواریم مفید باشه
https://codoloper.ir/blog/dyplwy-rwy-srwr-ayran-bdwn-ayntrnt-bynalmll-ya-nt-mly

کانال:
@codoloper

#آموزش #نت_ملی
Forwarded from Codoloper
تا حالا فکر کردید وقتی آدرس یک سایت را در مرورگر تایپ می‌کنید، دقیقاً چه اتفاقی می‌افتد؟ 🤔💻

سیستم DNS همان دفترچه تلفن نامرئی اینترنت است که نام دامنه‌ها را به آدرس‌های عددی تبدیل می‌کند. بدون این سیستم، اینترنتی که امروز می‌شناسیم اصلاً وجود نداشت. 🌐📖

در مقاله جدید وبلاگ، این موضوع را از صفر تا صد و به زبان ساده بررسی کردیم:
- دنیای اینترنت قبل از اختراع DNS چگونه بود؟
- این سیستم دقیقاً چیست و چرا به آن نیاز داریم؟
- مراحل جستجوی یک دامنه به صورت قدم به قدم
- بعد از پیدا شدن آدرس IP چه اتفاقی رخ می‌دهد؟
- مقایسه روش‌های سنتی با پروتکل‌های مدرن و امن
- مزایا، چالش‌ها و پاسخ به سوالات متداول 📝

اگر برنامه‌نویس، دانشجو یا علاقه‌مند به شبکه هستید، این مقاله را از دست ندهید. 🚀💡

لینک مطالعه کامل نوشته:
https://codoloper.ir/blog/systm-dns-chyst-rahnmay-jama-w-sadh-az-dftrchh-tlfn-ayntrnt

کانال:
@codoloper

#آموزشی
Forwarded from Codoloper
اگر دوست دارید درباره CDN بیشتر بدونید یا اینکه اگر نمیدونید چی هست و میخواید یاد بگیرید این میتونه مطلب مفیدی برای شما باشه.

داخلش کلی اطلاعات راجب سی دی ان ها هست. 📚

امیدواریم مفید باشه.

لینک نوشته:
https://codoloper.ir/blog/shbkh-twzya-mhtwa-cdn-chyst-mytwnm-srat-saytm-rw-afzaysh-bdm

کانال:
@codoloper
#آموزش
Forwarded from Codoloper
یوتیوب از نظر من یکی از شاهکار‌های مهندسی نرم‌افزار هست! 🛠️✨ اگر حتی یک‌بار تلاش کرده باشید که یه چیزی حتی نزدیک بهش بسازید که بتونید ویدیو ببینید، میدونید چرا این حرف رو می‌زنم 🤯🎬

داخل این نوشته بررسی کردیم که یوتیوب چطوری این کار رو می‌کنه 🔍📹

امیدوارم مفید باشه 😊👇

https://codoloper.ir/blog/raz-psht-prdh-ywtywb-chgwnh-mylyardha-saat-wydyw-ra-thkhyrh-w-mdyryt-myknd

#آموزش
Forwarded from Codoloper
یک نوشته داریم راجع به لود بالانسر‌ها 📝، لود بالانسر چیه؟ چرا ساخته شده و انواع لود بالانسر‌ها کدوم‌ها هستن؟ کیا ارائه میدن؟ 🤔

اگر دوست دارید راجع به لود بالانسر‌ها بدونید این نوشته برای شماست

امیدواریم مفید باشه
https://codoloper.ir/blog/lwd-balansr-az-yk-srwr-tnha-ta-chyzy-kh-hychwqt-down-nmyshh

#آموزش
Forwarded from Codoloper
داخل نکست جی اس یک فایل هست به نام template 📄، اگر میدونید چیه و کارش چیه که هیچی ولی اگر نمیدونید، این نوشته رو بخونید (api refrence هم اضافه شد) 📚.

فایل کاربردی هست 🛠️. برای رفرش کردن استیت های کلی بر خلاف لی اوت ها میشه ازش استفاده کرد 🔄.

امیدواریم مفید باشه

https://codoloper.ir/blog/tfawt-layout-w-template-dr-nextjs-ky-w-chra-bayd-az-templatetsx-astfadh-knym

#آموزش 🎓
Forwarded from Codoloper
نوشته جدید: کش

فرض کن یک صفحه داری که برای ساختنش باید بری سراغ دیتابیس، چند تا جدول رو join کنی، نتیجه رو پردازش کنی، و بعد HTML بسازی. این کار شاید ۲۰۰ میلی‌ثانیه طول بکشه 🕒. حالا اگه این صفحه رو هزار نفر در ثانیه ببینن 👥، و محتواش هر بار عوض نشه، داری همون کار سنگین رو هزار بار در ثانیه تکرار میکنی 🔄، درحالی‌که جواب همیشه یکیه.

کش دقیقاً همین اتلاف رو حل میکنه 🚀: جواب رو یک بار حساب میکنی 💻، جایی نگهش میداری که دسترسی بهش خیلی سریع‌تره ⚡، و دفعه‌های بعد به‌جای محاسبه‌ی دوباره، همون جواب آماده رو برمیگردونی 📦.

کش رو بررسی کردیم توی این نوشته

لینک:
https://codoloper.ir/blog/cache-ksh-chyh-chra-ksh-knym-yk-layh-ba-srat-bsyar-byshtr

#آموزش 📚
Forwarded from Codoloper
ایندکس در دیتابیس، نوشته جدیدیه که منتشر کردیم 📝✨

اگر یک سایت، اپلیکیشن یا هر چیزی دارید که به صورت مکرر از یک کوئری استفاده میکنه، ممکنه که بهتر باشه ایندکسش کنید تا سریع تر بشه 🚀 چون خیلی وقت‌ها حس میکنید که چقدر دردسر داره لود کردن از دیتابیس 💻🐌

داخل این نوشته، ایندکس کردن داخل دیتابیس
رو بررسی کردیم 🔍📚

امیدواریم مفید باشه
https://codoloper.ir/blog/ayndks-dytabys-chra-yk-kwery-sadh-gahy-chnd-thanyh-twl-mykshh

#آموزش #دیتابیس
Forwarded from Codoloper
نوشته جدید: شاردینگ در مبحث دیتابیس 🗄️

داخل این نوشته می‌خونیم که چطوری وقتی یک دیتابیس اونقدر بزرگ میشه که روی یک سرور جاش نمیشه، میشه پخش کرد دیتارو بین سرور های مختلف 🌐💾.

چه زمانی باید از مفهوم شاردینگ استفاده کنیم؟ 🤔
چنتا ابزار هم برای این کار و دلیل ایجاد اون ابزار هارو هم معرفی کردیم 🛠️.

امیدواریم مفید باشه ✨
https://codoloper.ir/blog/shardyng-dytabys-wqty-yk-srwr-dygh-jayy-bray-dadh-ndarh

#آموزش 📚 #دیتابیس 🔑
Forwarded from Codoloper
نوشته جدید: Replication در دیتابیس

فرض کن سرور دیتابیس اصلی یک پروژه، به هر دلیلی — خرابی سخت‌افزار 💻، آپدیت نادرست 🛠️، قطعی برق دیتاسنتر ⚡ — از دسترس خارج بشه. اگه فقط یک نسخه از داده‌ات جایی وجود داشته باشه، این یعنی کل سرویس تا وقتی اون سرور برنگرده، از کار می‌افته 🛑.

ریپلیکیشن دقیقاً برای جلوگیری از همین سناریو ساخته شده 🔄: به‌جای نگه‌داشتن داده روی یک سرور تنها، یک یا چند کپی زنده و همیشه به‌روز از همون داده رو روی سرورهای دیگه نگه میداری 🌐.

امیدواریم مفید باشه 😊👍

در این نوشته این مفهوم رو بررسی کردیم:
https://codoloper.ir/blog/ryplykyshn-dytabys-yk-kpy-zndh-az-dadh-ha-hmyshh-aamadh

#آموزش #دیتابیس
Forwarded from Codoloper
نوشته جدید: Elasticsearch: قدرتمند، سنگین، و نه همیشه انتخاب درست 🔍

الاستیک سرچ یکی از قدرتمندترین ابزارهای جستجو و پالایش داده هست که میتونید ازش برای خیلی چیزها، افزون بر جستجوی بسیار هوشمند و سریع، استفاده کنید. 💻📊

ولی آیا به صرفه هست استفاده‌ش؟ یا حتی به این قدرت نیاز دارید؟ 🤔💰

امیدواریم براتون مفید باشه ✨

https://codoloper.ir/blog/elasticsearch-qdrtmnd-sngyn-w-nh-hmyshh-antkhab-drst

#آموزش #جستجو
Forwarded from Codoloper
نوشته جدید: cuid و cuid2 - چرا نسخه‌ی دوم عملاً از صفر بازنویسی شد 🔄

وقتی می‌خوای برای رکوردهای دیتابیست یک شناسه‌ی یکتا بسازی، احتمالاً اول به auto increment فکر می‌کنی، بعد به UUID، و اگه دنبال چیزی سبک‌تر و url-friendly تر باشی، به cuid می‌رسی. ولی نکته‌ای که خیلی وقت‌ها گم می‌شه اینه که cuid و cuid2 دو چیز کاملاً متفاوتن — نه یک آپدیت جزئی، بلکه یک بازطراحی کامل با فرض‌های امنیتی متفاوت 🔐🔧

یک نکته بگم که اگر از zod استفاده می‌کنید، ورژن جدید cuid دپریکیت شده. پس این موضوع مهمه ⚠️

امیدواریم مفید باشه ✨

https://codoloper.ir/blog/cuid-w-cuid2-chra-nskhhy-dwm-amlaan-az-sfr-baznwysy-shd

#آموزش
Forwarded from Codoloper
نوشته جدید: Rate Limiting 🔒

فرض کن یک endpoint ساده داری که لیست محصولات رو برمیگردونه 📦. یک روز متوجه میشی سرورت زیر فشار عجیبی رفته، درحالی‌که تعداد کاربر واقعی زیاد نشده 📉. وقتی لاگ‌ها رو نگاه میکنی، میبینی یک IP تنها، چند هزار درخواست در ثانیه فرستاده — یا یک اسکریپت خرابه 🤖، یا یک نفر داره عمداً داده‌هات رو میخراشه (scrape میکنه) 🕸️، یا حتی داره تلاش میکنه با حجم درخواست سرویس رو از کار بندازه 🛑. Rate limiting دقیقاً همون لایه‌ایه که جلوی این سناریو رو میگیره 🛡️: تعیین میکنه هر کلاینت (بر اساس IP، کاربر، یا API key) توی یک بازه‌ی زمانی مشخص، حداکثر چند درخواست میتونه بفرسته ⏱️.

لایه‌های مختلف این مفهوم رو بررسی کردیم، روی وب سرور بزاریم یا روی اپلیکیشن یا اصلا نزاریم؟ 🤔 و خیلی مسائل دیگه...

امیدواریم مفید باشه ✨
https://codoloper.ir/blog/rate-limiting-chra-hr-api-bayd-yk-sqf-msrf-dashth-bashh
#آموزش
Forwarded from Codoloper
نوشته جدید: Message Queues 📬

در مقاله‌ی جدید کدلپر، از صفر توضیح دادیم که queue دقیقاً چیکار می‌کنه 🤔، چرا فقط یه background thread ساده کافی نیست، و چطور مفاهیمی مثل durability و retry باعث می‌شن سیستم در برابر کرش و قطعی مقاوم‌تر بشه 🛡.

مقایسه‌ی RabbitMQ و Kafka هم توش هست — با یه جمع‌بندی ساده از اینکه کِی کدومشون منطقی‌تره ⚖️.

نکته‌ای هم درباره‌ی idempotency و dead letter queue گفتیم که تو خیلی از tutorial ها نادیده گرفته می‌شه ولی زیر لود بالا خودش رو نشون می‌ده .

امیدواریم مفید باشه ✨

https://codoloper.ir/blog/message-queue-chyh-w-chra-hr-brnamhnwysy-bayd-bahash-aashna-bashh
#آموزش 📚
Forwarded from Codoloper
نوشته جدید: قضیه CAP در دیتابیس

یکی از مهم ترین مباحثی که باید راجع به دیتابیس های توزیع شده بدونید قضیه CAP هست

میگن که یک دیتابیس هیچ‌وقت نمیتونه این سه تا رو باهم تضمین کنه Consistancy, Availability و Partition tolerance

این مطلب مهمی هست در کل

امیدواریم مفید باشه
https://codoloper.ir/blog/qdhyhy-cap-chra-hych-dytabys-twzyashdhay-nmytwnh-hmhchyz-rw-ba-hm-dashth-bashh

#آموزش
Forwarded from Codoloper
⚙️ یه سؤال ساده: وقتی یه سرور کش رو اضافه یا حذف می‌کنی، چرا یهو کل کش خالی می‌شه و همه‌ی درخواست‌ها می‌ریزن رو دیتابیس؟ 🤔

جواب این سؤال به یه فرمول ساده برمی‌گرده: hash(key) % N. تا وقتی N ثابته همه‌چیز خوبه ✅، ولی همین که یه سرور کم یا زیاد بشه، تقریباً همه‌ی کلیدها جابه‌جا می‌شن 🔄. تو مقاله‌ی جدید کدلپر، از صفر توضیح دادیم consistent hashing چطور این مشکل رو حل می‌کنه 🛠️ و چرا فقط K/N کلید (به‌جای همه‌شون) جابه‌جا می‌شه.

توش رفتیم سراغ:
🔹 یه پیاده‌سازی واقعی با پایتون 🐍
🔹 مفهوم virtual node و این‌که چرا بدونش توزیع بار روی سرورها اصلاً یکنواخت نمی‌شه ⚖️
🔹 کاربردهای واقعیش تو Cassandra، DynamoDB و Memcached 🗄️
🔹 محدودیت‌هایی که کمتر کسی درباره‌شون حرف می‌زنه؛ مثل چالش سرورهای با ظرفیت متفاوت و رابطه‌ش با replication 🚧

👉 https://codoloper.ir/blog/consistent-hashing-chtwr-yh-systm-twzyashdh-rw-dr-brabr-adhafh-w-km-shdn-srwr-mqawm-myknh

#آموزش
Forwarded from Codoloper
نوشته جدید: اصول SOLID 🛠️

اصول SOLID احتمالاً یکی از پرتکرارترین موضوعاتی هست که تو مصاحبه‌های برنامه‌نویسی ازش سؤال می‌شه 🤔، ولی همین تکرار زیاد باعث شده خیلی وقت‌ها به یه سری تعریف حفظی تبدیل بشه که کسی واقعاً نمی‌دونه کِی و چرا باید ازشون استفاده کنه. 🧠

این پنج اصل، راهنمای طراحی کلاس‌ها و ماژول‌ها هستن که هدفشون کد قابل نگهداری‌تر و کمتر شکننده در برابر تغییره 🛡️؛ نه یه سری قانون مقدس که باید همیشه و همه‌جا کورکورانه اجراشون کنی. ✨

امیدواریم مفید باشه 🚀

https://codoloper.ir/blog/aswl-solid-chyzy-kh-hmh-azsh-asm-mybrn-wly-kmtr-ksy-drst-azsh-astfadh-myknh
#آموزش 📚
Forwarded from Codoloper
نوشته جدید: Test-Driven Development 🧪📝

داخل این آموزش بررسی کردیم که چطوری میشه اول تست نوشت، بعد برای اون تست لاجیک نوشت و اصلا چرا باید اینکار رو بکنیم؟ 🤔

ببینید، اگر یک اینترفیس ورودی و یک اسکیما/فرمت خاص خروجی دارید، و تجربه دارید که کار رو از همون اول در بیارید این روش صرفا یک لایه اطمینان هست. ✅ اما در غیر اینصورت پیشنهاد میکنم حتما تست رو بنویسید و یا به یک روشی از ورودی و خروجی کدتون اطمینان حاصل کنید.

این روش بسیار برای کسانی که میخوان بزرگ کد بزنن کمک کننده هست. 🚀

امیدواریم مفید باشه 🌟
https://codoloper.ir/blog/tdd-chyh-w-chra-nwshtn-tst-qbl-az-kd-mntqytr-az-chyzyh-kh-bh-nzr-myrsh

#آموزش
Forwarded from Codoloper
نوشته جدید: wget vs curl 🛠️

اگه تا حالا تو ترمینال یه فایل دانلود کردی یا یه API رو تست کردی، احتمالاً با هر دوی این ابزارها برخورد داشتی. هر دو کارشون رفتن سراغ یه URL و گرفتن داده از اونه، و تو خیلی از موارد ساده، هر کدوم رو که استفاده کنی فرقی نمی‌کنه. ولی وقتی پای موارد پیچیده‌تر وسط بیاد، این دو تا فلسفه کاملاً متفاوتی دارن که دونستنش از انتخاب اشتباه و کلنجار رفتن با فلگ‌های اضافه جلوگیری می‌کنه. 🚀📉

امیدواریم مفید باشه 💡
https://codoloper.ir/blog/curl-dr-mqabl-wget-kdwm-rw-key-astfadh-knym
#آموزش 📚
Forwarded from Codoloper
نوشته جدید: Design Patterns

دیزاین پترن‌ها یکی از اون موضوعاتیه که تو مصاحبه‌ها خیلی می‌پرسنش، ولی همین تکرار زیاد باعث شده خیلی‌ها فقط ۲-۳ تا پترن رو حفظ کنن بدون اینکه بدونن دقیقاً چه مشکلی رو حل می‌کنن 🤔. نتیجه‌ش می‌شه کدی که پر شده از Factory، Strategy و Observer 🏗، در حالی که خود پروژه اصلاً به هیچ‌کدومشون نیاز نداشته! 🙄

فرض کن شش ماه پیش یه پروژه رو تموم کردی 🗓. امروز مدیرت میگه فقط یه قابلیت کوچیک بهش اضافه کن ➕. پروژه رو باز می‌کنی، ولی بعد از چند دقیقه می‌بینی خودتم نمی‌دونی چرا اون کدها رو اون‌جوری نوشتی 🤷‍♂️. هر تغییری یه جای دیگه رو میشکنه 🧱 و انگار پروژه تبدیل شده به یه دومینوی آماده سقوط 🃏. اگه این تجربه برات آشناست 🤝، احتمالاً همینجاست که به اهمیت واقعی دیزاین پترن‌ها نزدیک می‌شی 💡.

امیدواریم مفید باشه
https://codoloper.ir/blog/dyzayn-ptrnha-chyzy-kh-hmh-asmshw-bldn-wly-kmtr-ksy-mydwnh-key-bayd-azsh-astfadh-knh

نویسنده: آرش بهادری
#آموزش
Forwarded from Codoloper
نوشته جدید: Bun vs Deno vs Node 🚀

هر سه‌ی این‌ها یه runtime کامل جاوااسکریپت/تایپ‌اسکریپت هستن؛ یعنی هر کدوم می‌تونه کد سمت سرور رو اجرا کنه، پکیج نصب کنه، و پروژه رو build کنه. تفاوتشون تو فلسفه‌ی طراحی، عملکرد، و چیزیه که هر کدوم به‌صورت پیش‌فرض بهت می‌دن. تو این مقاله این سه تا رو کنار هم می‌ذاریم تا ببینیم کدوم برای چه نوع پروژه‌ای منطقی‌تره. 💡🔍

امیدواریم مفید باشه ✨
https://codoloper.ir/blog/bun-vs-deno-vs-nodejs-kdwm-rw-antkhab-knym

#آموزش 📚 #مقایسه ⚖️