آنچه یاد خواهید گرفت:
ساخت یک ابزار CLI در سطح تولید با Commander.js و TypeScript
پیادهسازی ارتباطات دوطرفه WebSocket با SocketIO
طراحی پروتکلهای شبکهی سفارشی برای تونلسازی و فوروارد کردن درخواستها
ایجاد منطق reverse proxy برای HTTP با استریم کردن درخواست و پاسخ
مدیریت اتصال مجدد اجنتها، heartbeatها و نظارت بر سلامت اتصال
طراحی schemaهای PostgreSQL برای تونلها، کاربران، توکنها و لاگهای درخواست
پیادهسازی احراز هویت مبتنی بر توکن با سشنهای JWT
جمعآوری متریکهای لحظهای (RPS، پهنای باند، تاخیر و نرخ خطا)
ساخت داشبورد React با نمایش اتصال لایو با استفاده از React Flow
استقرار یک سیستم چندبخشی در محیط تولید
پیشنیازهای دوره
آشنایی راحت با JavaScript و TypeScript
درک پایه از Node.js و Express
تجربه کم یا بدون تجربه با React
NodeJS و NPM
یک ویرایشگر کد
توضیحات دوره
ساخت یک پلتفرم تونلسازی HTTP به سبک Ngrok با Node.js، WebSockets و React
تا به حال فکر کردهاید ابزارهایی مثل ngrok و localtunnel یا Cloudflare Tunnel چگونه localhost شما را در اینترنت در دسترس قرار میدهند؟
در این دوره عملی، شما اپلیکیشن تونلسازی HTTP خودتان را از ابتدا میسازید و از Node.js و WebSockets و PostgreSQL و React استفاده میکنید.
بهجای اینکه فقط از ابزارهای تونلسازی استفاده کنید، یاد میگیرید آنها به صورت داخلی چگونه کار میکنند؛ چون یک سیستم کامل تونلسازی در سطح تولید را مرحلهبهمرحله پیادهسازی میکنید.
این دوره روی معماری واقعی سیستم تمرکز دارد و به شما تجربه عملی ساخت یک ابزار زیرساختی برای توسعهدهندگان، مشابه ngrok، میدهد.
آنچه خواهید ساخت:
در طول دوره، یک سیستم کامل سهبخشی را طراحی و پیادهسازی میکنید:
Tunnel Agent (اپلیکیشن CLI)
یک ابزار خط فرمان Node.js که بهصورت محلی روی دستگاه توسعهدهنده اجرا میشود و یک اتصال تونل امن به اینترنت ایجاد میکند.
سرور تونل (سرور رله)
یک سرور Node.js که مسئول مدیریت اتصالهای تونل، دریافت ترافیک عمومی و مسیریابی درخواستهای HTTP به ایجنت متصل است.
داشبورد نظارت بلادرنگ
یک اپلیکیشن React که اتصالهای تونل و فعالیت درخواستها را به صورت لایو نمایش میدهد.
در پایان دوره شما یک پلتفرم تونلسازی HTTP کاملاً تابعی ساختهاید، که شامل:
Tunnel Agent خط فرمانی Node.js
سرور رله تونل
داشبورد نظارت بلادرنگ React
همچنین تجربهی عملی در طراحی سیستمهای backend شبکهای و ابزارهای زیرساختی برای توسعهدهندگان به دست میآورید؛ ابزارهایی که میتوانند در پورتفولیوی شما نمایش داده شوند یا به یک محصول واقعی گسترش پیدا کنند.
این دوره برای چه کسانی مناسب است؟
توسعهدهندگان فولاستک که میخواهند مهارتهای خود را ارتقا دهند.
مهندسان Backend که میخواهند زیرساخت تولید و طراحی سیستم را بهتر درک کنند.
جویندگان کار که برای مصاحبه به یک پروژه پورتفولیو برجسته نیاز دارند.
مهندسان Frontend که میخواهند سطح تخصص خود را بالاتر ببرند.