Linux и ОС

Разберёшь, какие части работы сервиса видит Go, а какие принадлежат ядру: процессы и потоки, память, файлы, сеть и сигналы. Научишься переходить от симптома к проверяемым данным Linux и безопасно запускать сервис под systemd.

  1. 1.1 Процессы и ядро

    Сопоставишь процессы, потоки ОС и горутины, а затем разберёшь память процесса, дескрипторы и сигналы. Это поможет понять, какие ограничения задаёт ядро, а какие - рантайм Go.

  2. 1.2 Файлы и диски

    Увидишь, почему имя файла и его inode - разные вещи, откуда берутся расхождения df и du и когда write ещё не означает запись на диск. Разберёшь права каталогов, page cache, монтирования и безопасную замену файла.

  3. 1.3 Сеть на хосте

    Проследишь путь пакета на хосте: адрес прослушивания, маршруты, DNS, очереди TCP и правила netfilter. Научишься читать ss и tcpdump и отличать локальную проблему сервиса от проблемы сети или ядра.

  4. 1.4 Диагностика и systemd

    Свяжешь задержку и перезапуск процесса с очередями CPU, памяти и диска, PSI и журналами ядра. Затем разберёшь systemd unit: ограничения, сигналы, перезапуск и корректную остановку сервиса.