Сам себе MBA. Самообразование на 100 %
Шрифт:
На внешнем жестком диске можно сохранить важнейшие данные вашего компьютера, на случай если вдруг внутренний жесткий диск сломается. Некоторые компании доходят даже до того, что хранят диски с резервными копиями данных за пределами своей территории на случай пожара или стихийного бедствия.
В самолетах имеются системы, фиксирующие перепад давления в салоне и автоматически выбрасывающие кислородные маски.
Бесперебойные механизмы в каком-то смысле можно назвать неэффективными: вы вкладываете время и ресурсы в создание систем, которые в идеале никогда
Но вот в чем дело: когда вам может понадобиться бесперебойная система, ее уже будет поздно развивать. Оплата страховки от пожара кажется бессмысленной ровно до того момента, как ваш дом сгорает дотла.
Попытайтесь максимально разграничить свои основные и запасные системы. Одна из причин, по которым люди арендуют ячейки в банке, как раз связана с тем, чтобы сохранить что-то важное в случае пожара или кражи. Той же цели служит резервное копирование данных на серверах, расположенных вне офиса: если с основными компьютерами компании что-то произойдет, данные сохранятся в целости в другом месте.
Системы обеспечения бесперебойной работы, взаимосвязанные с основными системами, могут нести с собой дополнительные риски. Худшее, что вы можете сделать, — это превратить систему резервного копирования в часть системы, которую пытаетесь защитить. К примеру, будет плохо, если поломка генератора приведет к проблемам в основной системе энергообеспечения дома и внезапному отключению электричества. Аналогичным образом, использование автоматизированной системы копирования данных окажется совершенно бесполезным, если в результате ее работы ваши изначальные файлы будут уничтожены.
По возможности избегайте наличия в системе единственной критической точки неудачи. Если функционирование вашей системы зависит от критически важных входных элементов или процессов, то стоит создать план действий на случай, если эти элементы недоступны, а рабочие процессы нарушены. Что произойдет, если откажет ваша основная система?
Заранее планируйте механизмы обеспечения бесперебойной работы для всех важнейших систем, и они станут настолько гибкими, насколько это возможно.
Тестирование в условиях стресса
Человек не в силах избегать ошибок, однако он способен учиться на ошибках и обретать мудрость для будущей жизни.
Предположим, вы создали гибкую систему, однако хотите убедиться в том, что она действительно работает так, как вам надо. Каким образом вы могли бы ее протестировать?
Тестирование в условиях стресса представляет собой процесс определения границ системы с помощью имитации определенных условий среды. Вместо того чтобы мыслить, подобно инженеру системы, вы (с помощью тестирования в условиях стресса) выступаете
В самом начале работы над «Сам себе МВА», каждый раз, когда я загружал новую версию списка рекомендованной для чтения литературы, мой веб-сервер «погибал с музыкой»: система просто не справлялась с наплывом людей, пытавшихся зайти на мой сайт. Я несколько раз выбирал новые системы, но каждый раз их мощностей было недостаточно.
Проблемы с сервером продолжались до тех пор, пока я всерьез не задумался о тестировании в условиях стресса. Вместо того чтобы ждать притока посетителей, вырубавшего мой сайт, я решил намеренно «разрушить» свою систему.
С помощью автоматизированного инструмента3 я имитировал огромное количество посетителей, одновременно заходящих на мой сайт. Этот инструмент последовательно увеличивал количество обращений к сайту и рассчитывал время отклика. По мере роста количества обращений производительность сервера снижалась до тех пор, пока он не рухнул.
С помощью данных тестирования в условиях стресса я произвел целый ряд значительных улучшений инфраструктуры и системы сайта. Теперь тысячи людей могут одновременно посещать мой сайт, практически не мешая друг другу.
Стресс-тесты помогут вам лучше понять, как работают ваши системы. Если вы занимаетесь производством, то могли бы имитировать одновременное поступление тысячи заказов и проверить, сможете ли вы с ними справиться. Если вы занимаетесь поддержкой пользователей, то можете имитировать одновременное поступление тысяч вопросов или жалоб. Ваша способность к тестированию ограничена только временем и воображением — позвольте своему внутреннему демону вырваться на волю и решите все основные проблемы до того, как они помешают вашим реальным клиентам.
Планирование сценариев
Благоразумный видит беду и укрывается, а неопытные идут вперед и наказываются.
Никто не способен предсказать, что случится завтра, не говоря уже о том, что произойдет через десять лет. В сущности, многие ваши планы и цели зависят от обстоятельств, находящихся вне вашего локуса контроля. Что вы можете сделать, чтобы подготовиться к неопределенному будущему?
Планирование сценариев представляет собой процесс систематического построения набора гипотетических ситуаций, а затем ментального моделирования того, что вы будете делать при их наступлении. Вы можете не быть провидцем, однако процесс моделирования, противоречащего фактам, наделяет вас потрясающей способностью: вы в состоянии представить себе события, которые могли бы возникнуть, а затем определить, что бы вы делали при их наступлении.