Gopher Academy
3.85K subscribers
933 photos
42 videos
280 files
2.21K links
🕸 Gopher Academy

🔷interview golang
https://github.com/mrbardia72/Go-Interview-Questions-And-Answers

حمایت مالی:
https://www.coffeete.ir/mrbardia72

ادمین:
@mrbardia72
Download Telegram
🔵 عنوان مقاله
Practical Networking Patterns in Go

🟢 خلاصه مقاله:
** این بخش تازه از Go Optimization Guide مجموعه‌ای از ۱۳ راهنما را ارائه می‌کند که به شکل عملی ساخت اپلیکیشن‌های شبکه‌ای مقیاس‌پذیر با Go را پوشش می‌دهند. محورهای اصلی شامل دستیابی به «همزمانی بسیار بالا»، الگوهای مدیریت اتصال، کنترل فشار، زمان‌بندی و لغو عملیات، همراه با بنچمارک‌گیری واقع‌گرایانه و عیب‌یابی مبتنی بر سنجه‌ها، پروفایلینگ و تِرِیسینگ است. همچنین درباره انتخاب و پیکربندی پروتکل‌های انتقال، مدیریت خطا، اندازه‌گیری بافرها و تنظیمات سطح پایین برای پایداری و عملکرد بهتر توضیح می‌دهد. خروجی نهایی مجموعه‌ای از الگوهای عملی و چک‌لیست‌هاست که به تیم‌ها کمک می‌کند توان عملیاتی را افزایش دهند، تأخیرهای دُم توزیع را کاهش دهند و سرویس‌های Go را در مقیاس به‌صورت پایدار و شفاف اداره کنند.

#Go #Golang #Networking #Concurrency #Benchmarking #Performance #Scalability #Systems

🟣لینک مقاله:
https://golangweekly.com/link/174636/web


👑 @gopher_academy
2
🔵 عنوان مقاله
Making a Cross-Platform Game using Pion and WebRTC Datachannels

🟢 خلاصه مقاله:
این مقاله رویکرد ساخت یک بازی چندسکویی را با تکیه بر Pion و WebRTC Datachannels شرح می‌دهد. ایده اصلی این است که با استفاده از WebRTC، ارتباطات دوطرفه و کم‌تاخیر بین مرورگر و مشتریان بومی برقرار شود و Pion نقش پیاده‌سازی WebRTC را در سمت سرور یا کلاینت‌های نیتیو بر عهده بگیرد. به‌دلیل پشتیبانی گسترده مرورگرها، همان لایه شبکه می‌تواند بدون پلاگین روی وب، دسکتاپ و موبایل کار کند.

راه‌اندازی فعلی ساده و آزمایشی است و محدودیت‌هایی دارد: اتکای احتمالی به سیگنالینگ حداقلی، تکیه بر TURN در شرایط دشوار شبکه، نیاز به تنظیم دقیق قابلیت‌های Datachannel (سفارش‌دهی/قابلیت اطمینان)، دشواری اشکال‌زدایی، و نبود سرور اقتدارگرا یا rollback netcode که همگام‌سازی، ضدتقلب و پایداری را سخت‌تر می‌کند. با این حال پتانسیل توسعه بالاست: کانال‌های چندگانه برای ترافیک‌های مختلف، به‌کارگیری پیش‌بینی سمت مشتری و snapshot interpolation، افزودن امنیت و ضدتقلب، لابی و matchmaking، و پایش و سنجه‌ها. این مسیر برای نمونه‌سازی و آزمایش شبکه‌سازی بلادرنگ چندسکویی بسیار امیدوارکننده است. نویسنده: Srayan Jana.

#WebRTC #Pion #GameDev #Multiplayer #DataChannel #CrossPlatform #Networking

🟣لینک مقاله:
https://golangweekly.com/link/174647/web


👑 @gopher_academy
1
🔵 عنوان مقاله
The 'Compare IP Subnets' Proposal

🟢 خلاصه مقاله:
در مجموعه Accepted!، «Anton» یکی از تغییرات «Go 1.26» را معرفی می‌کند که مشکل قدیمی مقایسه زیرشبکه‌های IP را هدف گرفته است. این تغییر روشی استاندارد و یکدست برای مقایسه و مرتب‌سازی زیرشبکه‌ها (IPv4 و IPv6) ارائه می‌کند تا کارهایی مثل مرتب‌سازی جدول‌های مسیریابی، حذف موارد تکراری و بررسی شمول (Containment) ساده و قابل اتکا شود. نتیجه این است که کدهای شبکه خواناتر می‌شوند، از خطاهای ظریف جلوگیری می‌شود و عملکرد بهبود می‌یابد؛ بدون آنکه ناسازگاری با کدهای موجود ایجاد شود. این قابلیت به‌صورت افزایشی اضافه می‌شود و می‌توان آن را تدریجی به کار گرفت.

#Go #Golang #Networking #IP #CIDR #Subnetting #Go126 #SoftwareEngineering

🟣لینک مقاله:
https://golangweekly.com/link/175978/web


👑 @gopher_academy
👍2
🔵 عنوان مقاله
From 19 Hours to Under a Second: Building a Blazing-Fast TCP Scanner in Go

🟢 خلاصه مقاله:
با یک روایت عملی، مقاله توضیح می‌دهد چگونه یک اسکنر ساده TCP که ۱۹ ساعت طول می‌کشید، با بازطراحی در Go به ابزاری «زیر یک ثانیه» تبدیل شد. ابتدا نشان می‌دهد چرا اسکن مبتنی‌بر net.Dial حتی با همزمانی محدود گرفتار زمان‌های انتظار، محدودیت FD و سربار syscall می‌شود. سپس با گذار از اتصال‌های کامل به اسکن SYN، ساخت بسته‌ها، فیلترکردن پاسخ‌ها با BPF، و نگه‌داری وضعیت سبک‌وزن، سربار کرنل و زمان‌بندی به شدت کاهش می‌یابد. بهینه‌سازی‌هایی مانند batch کردن ارسال/دریافت، پیش‌اختصاص بافرها، کاهش تخصیص‌ها با sync.Pool، و حلقه‌های رویدادی کارا (epoll/kqueue) همراه با تنظیمات سیستم (ulimit، بافرهای سوکتی و sysctl) throughput را به حداکثر می‌رساند. با پروفایل‌کردن مداوم (pprof) و راستی‌آزمایی با ابزاری مانند Nmap، هم دقت و هم کارایی تضمین می‌شود. خروجی نهایی: الگوی عملی برای ساخت ابزارهای پرسرعت شبکه در Go—ترکیبی از انتخاب مدل درست (SYN به‌جای connect)، کاهش سربارها، batch کردن، اندازه‌گیری پیوسته، و پایبندی به اصول ایمنی و اخلاق اسکن. این مطلب در Golang Weekly برجسته شده است.

#Go #Golang #TCP #PortScanning #Networking #Performance #Concurrency #SystemsProgramming

🟣لینک مقاله:
https://golangweekly.com/link/176335/web


👑 @gopher_academy