529 subscribers
36 photos
5 videos
2 files
1.53K links
👑 DevOps Labdon

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

ادمین:
@mrbardia72
Download Telegram
📌 Senior DevOps Engineer (Europe, Remote, f/m/d)

📝 Type: Visa Sponsorship
🌍 Relocation Package:

🏢 Company: factor eleven

📍 Location: GERMANY

⌨️ Category: #Devops

🔗 Tags: #python #java #rust #typescript #golang #redis #rabbitmq #npm #sqs #yarn #c #saas #kubernetes #aws #docker #devops #apache #kafka #terraform #cloud #datadog
🔵 عنوان مقاله
FRP — Fast Reverse Proxy

🟢 خلاصه مقاله:
FRP یا Fast Reverse Proxy یک ابزار متن‌باز و سریع برای در دسترس قرار دادن سرویس‌های داخل شبکه‌های خصوصی در اینترنت عمومی است؛ بدون نیاز به باز کردن پورت‌های ورودی یا تغییرات پیچیده در NAT و فایروال. معماری آن مبتنی بر frpc (در داخل شبکه) و frps (روی سرور عمومی) است و با اتصال پایدار و اتصال‌های چندگانه، تأخیر را کم و کارایی را بالا نگه می‌دارد. از TCP، UDP، HTTP و HTTPS پشتیبانی می‌کند و ویژگی‌هایی مانند مسیربندی بر اساس دامنه و زیر‌دامنه، SNI، احراز هویت، TLS و فشرده‌سازی را ارائه می‌دهد. داشبورد داخلی برای مشاهده ترافیک و وضعیت پروکسی‌ها در دسترس است و گزینه‌های امنیتی مانند STCP و محدودسازی دسترسی برای کاهش سطح حمله فراهم شده است. کاربردهای رایج شامل دسترسی راه‌دور به SSH/RDP، انتشار سرویس‌های توسعه برای دمو یا Webhook، تونل‌کردن پایگاه‌داده و کنترل دستگاه‌های IoT است. FRP یک باینری سبک و چندسکویی (Linux، Windows، macOS) نوشته‌شده با Go است و برای استقرار در محیط‌های تولیدی و پروژه‌های شخصی مناسب است.

#frp #reverse-proxy #tunneling #NATTraversal #Networking #DevOps #SelfHosting #GoLang

🟣لینک مقاله:
https://ku.bz/74QXmzGvz


👑 @DevOps_Labdon
🔵 عنوان مقاله
A practical guide to error handling in Go (10 minute read)

🟢 خلاصه مقاله:
** این مقاله یک راهنمای عملی ۱۰ دقیقه‌ای برای مدیریت خطا در Go است که نشان می‌دهد این زبان از طراحی مینیمال مبتنی بر بازگرداندن و بررسی error شروع کرده و به مرور با الگوهایی مثل افزودن کانتکست و استفاده از errors.Is و errors.As غنی‌تر شده است. چالش مهم، نبود ردیابی داخلی برای دیدن مسیر انتشار خطا است؛ ابزارهای Datadog یعنی Error Tracking و Orchestrion این شکاف را با ارائه دید شفاف از محل بروز خطا و نحوه انتشار آن در کد پوشش می‌دهند و عیب‌یابی را سریع‌تر و دقیق‌تر می‌کنند. جمع‌بندی: به‌کارگیری الگوهای idiomatic در Go در کنار این ابزارها، خطاها را از پیام‌های کوتاه به روایتی قابل پیگیری از رخداد تا رفع تبدیل می‌کند.

#Go #Golang #ErrorHandling #Datadog #ErrorTracking #Orchestrion #Tracing #Observability

🟣لینک مقاله:
https://www.datadoghq.com/blog/go-error-handling/?utm_source=tldrdevops


👑 @DevOps_Labdon
🔵 عنوان مقاله
Why Go Services Hit p99 Spikes on Kubernetes: CFS CPU Throttling, Quotas, and Go 1.25

🟢 خلاصه مقاله:
در دنیای توسعه دهندگان نرم‌افزار، اجرای برنامه‌ها بر بستر ابر و به‌ویژه در محیط‌های مبتنی بر کانتینر مانند Kubernetes، چالش‌های خاصی دارد. یکی از مشکلات رایج که ممکن است در این نوع محیط‌ها ظاهر شود، افزایش ناگهانی در زمان‌های پاسخگویی برنامه‌ها است. در مقاله‌ای که پیش رو دارید، به بررسی دلیل این نوسانات می‌پردازیم و چرایی بروز پیک‌های تأخیر در خدمات گوی، به ویژه در سطح p99، را توضیح می‌دهیم. به‌طور خاص، این مشکل ناشی از مکانیزم‌های محدودکننده منبع، مانند Throttling بر پایه CFS و سهمیه‌های CPU است که به صورت ناپیوسته عملیات کانتینرها را متوقف می‌کند و باعث می‌شود درخواست‌ها در لحظه‌های خاص زمان بیشتری ببینند.

در ادامه، تحلیل دقیق‌تر نشان می‌دهد که چگونه مکانیزم‌های کنترل سهمیه‌های CPU در Kubernetes، در کنار تغییرات جدید در زبان برنامه‌نویسی Go نسخه ۱.۲۵، تأثیر مستقیمی بر رفتار خدمات، به‌خصوص در سطوح پایین، دارند. این مکانیزم‌ها به منظور مدیریت بهتر منابع و جلوگیری از تأثیرگذاری منفی هر کانتینر بر دیگران طراحی شده است؛ اما در عین حال، ممکن است منجر به توقف‌های ناخواسته و تأخیرهای غیرمنتظره شوند، که در نتیجه این پیک‌های p99 را ایجاد می‌کنند.

در نتیجه، درک عمیق‌تر این فرآیندها، به توسعه‌دهندگان و مدیران سیستم کمک می‌کند تا بهینه‌ترین تنظیمات را برای محیط‌های Kubernetes خود انتخاب کرده و از بروز مشکلات پیک‌های تأخیر جلوگیری کنند. با آگاهی از نحوه کارکرد محدودکننده‌های CPU و چگونگی تاثیر نسخه‌های جدید زبان Go، می‌توان راهکارهای موثری برای کاهش این پیک‌ها و بهبود سطح رضایت کاربر نهایی ارائه داد.

#Kubernetes #GoLang #Latency #CFS

🟣لینک مقاله:
https://ku.bz/TjY-zrl1J


👑 @DevOps_Labdon