Поважайте, що у сисадмінів є робота, і нехай вони роблять свою роботу. У багатьох компаніях є некомпетентні систематики, і це часто не реально. Але я бачив, як зарозумілі розробники ігнорують поради системних груп навіть після того, як сисадміни довели свою компетентність.
Обговоріть розробку нової системи з систематиками. Часто існує цінне розуміння. Розробники часто розглядають дискусії із систематичними системами та дають початкові вимоги як "передчасну оптимізацію". Я фактично бачив, як голова групи розробників говорив, що це марно витрачати свій час на обговорення вимог до нових серверів баз даних із систематичними системами та DBA, навіть в міру опису, чи це завантаження, яке інтенсивно записує чи інтенсивне читання, або скільки потрібно буде сховища.
Обговоріть проблеми з систематизацією. Чесно кажучи, тільки систематики здатні правильно інтерпретувати показники продуктивності в системах. Я бачив, як розробники вирішують, що Linux завжди просочує пам'ять, оскільки вільна пам'ять, про яку повідомляє "безкоштовно", завжди зменшується, навіть після 10-го разу пояснення виходу "вільного".
Не робіть висновків, не обговорюючи це з систематинами. Я бачив, як розробники зациклювалися на таких теоріях, як "бази даних завжди пов'язані з диском" (вони не знали, що іостат навіть існує), "RAID 5 швидший для транзакційних навантажень" (заснований на спогаді однієї системи баз даних, яка була переміщена від однієї апаратної платформи до іншої - це було завантажене читання робоче навантаження, рішення RAID5 все більше і швидше накопичувачів розповсюджувалося на більше контролерів. Але вони забули ці деталі і запам'ятали лише висновок.)
Не розробляйте рішення для системної проблеми, не обговорюючи її з систематинами. Я працював в одному патологічному середовищі, де розробники розробляли б рішення та приїжджали з проханням про невелику допомогу в реалізації. Члени групи Unix, окрім мене, керівник групи Unix та його начальник, хотіли ставитись до розробників як до "замовників", а не до співробітників, які намагаються зробити загальну функцію інфраструктури. Клієнт завжди має рацію - це не ставити під сумнів, що вони роблять чи чому. Я був єдиним, хто наполягав би на тому, щоб описати проблему, щоб можна було визначити правильне рішення. Не дійте способами, які створюють такі патологічні середовища, як це. Це не призводить до чистої вигоди - натомість менеджери систем будуть діяти оборонно, і всі будуть страждати.
Ти вже не в школі. Це системи реального світу, і вони не діють ідеально. Наприклад, не все має нульову затримку. Коли sysadmin попередить вас, що рішення кластеризації мають лише політичні цілі, а додаткова складність системи знижує загальну надійність, сприйміть це серйозно. Ви повинні створити режими відмов у реальному світі, наприклад, коли ви втратите сервер, з яким ви спілкуєтесь через TCP, підключення, мабуть, не буде скинуто для вас. Сисадміни розуміють режими відмов у реальному світі.
Або слухайте те, що говорить ваш системний адміністратор, або скаржтесь керівництву на те, що ваші системні адміністратори некомпетентні та їх потрібно звільнити. Ігнорувати свій сисадмін не має сенсу.
Поміркуйте, як ви будете розгортати свою програму. Зрозумійте, що обговорювати це з вашими сисадмінами має сенс. Якщо у вас 100 ідентичних серверів, які відрізняються лише на основі одного файлу конфігурації, можливо, ви захочете розглянути можливість зберігання головних копій цих конфігураційних файлів у центральному місці. Зрозумійте, наскільки краще всім, якщо ваш додаток легко повторно розгорнути. Якщо у вас є проблеми з системою, ви б краще скористатись за лічені хвилини на запасну або чекати віків, коли пошкоджена буде відремонтована? Якщо ви зможете повторно розгорнути свою програму, ОС можна буде легше та безпечніше оновити. Ви можете це хвилювати в майбутньому.
Якщо у вас є проблеми, які, на вашу думку, можуть бути пов’язані з ОС, є сенс негайно викликати sysadmin, щоб перевірити це. Але після того, як короткочасне розслідування нічого не виявить, у вас є обов'язок пояснити проблему.
Зрозумійте, що існує різниця між "відповідати повільно" і "зовсім не реагувати".