cat tools.md

ابزارها

فهرست چیزهایی که واقعاً هر روز با آن‌ها کار می‌کنم. بیشترش زیرساخت است، چون بیشتر وقتم آنجا می‌گذرد.

سرور و زیرساخت

بخشی از کارهایم روی سرورهای فیزیکی کولوکیت‌شده اجرا شده — یعنی سخت‌افزار را خودم انتخاب، نصب و نگه‌داری کرده‌ام، نه اینکه ماشین مجازی اجاره کنم. مجازی‌سازی با VMware ESXi و مدیریت متمرکز باvCenter.

هیچ سروری را دستی تنظیم نمی‌کنم؛ همه‌چیز با Ansibleتوصیف می‌شود تا محیط قابل بازتولید بماند. سرویس‌ها درDocker و پشت Nginx اجرا می‌شوند.

پایش

Netdata برای معیارهای لحظه‌ای سیستم وElastic Stack برای لاگ‌ها. هشدارها باLoguru و Notifiers ساخته می‌شوند و به تلگرام می‌روند — جایی که واقعاً می‌بینم‌شان.

زبان و کتابخانه‌ها

Python برای تقریباً همه‌چیز:FastAPI برای سرویس‌ها،asyncio و aiohttp برای کارهای I/O-bound، وPydantic برای اینکه داده‌ی بدشکل زودتر از موعد خطا بدهد.

داده

PostgreSQL پیش‌فرض من است.MongoDB وقتی شکل داده واقعاً ثابت نیست،Redis برای وضعیت کوتاه‌مدت، وKafka وقتی بخش‌های سامانه باید از هم جدا بمانند. برای داده‌ی ستونی و حجیم، Parquet باPyArrow.

میز کار

Linux و خط فرمان. ویرایشگر عوض می‌شود، ترمینال نه. این سایت هم با Astro ساخته شده و هیچJavaScriptای به مرورگر نمی‌فرستد.