«Мониторинг идет хорошо»?
«Да».
Ёнхо показал экран ноутбука. Они получили доступ к серверу для проверки состояния CPU и RAM вручную.
«Проверяйте хорошо. Эти знания вам будут нужны везде, когда вы выпуститесь».
«Но мы должны делать это все вручную? Разве нет какой-нибудь автоматизированной системы для этого?»
После слов Ёнхо Сонгю понизил голос:
«Наверное, есть. Но масштаб системы управления курсами мал».
«Даже так... заставить людей сделать эту работу... »
«Тсс, не командуйте на чужой территории. Вы узнаете это позже, когда все сделаете».
Мониторингом занимался не только Ёнхо. Хеджин и Сумин также открыли 3 окна Telnet (программное обеспечение, которое хранит протокол доступа с другими серверами) и мониторили каждый сервер.
«Несмотря на это, я думаю, это слишком много...»
Ёнхо посмотрел на место, где сидела Сумин. Работник торчал вокруг Сумин, как приклеенный.
«Если вы что-то не знаете, спросите меня, хорошо?»
Он крутился около Сумин весь день. Он не был холоден к Ёнхо, но был слишком дружелюбным по отношению к Сумин.
«Есть один вопрос... Мы должны все это мониторить вручную?»
Сумин спросила то, что хотел бы спросить Ёнхо. Ёнхо и Сонгю тоже ожидали ответа сотрудника.
«Конечно, есть автоматизированное программное обеспечение. Но это слишком дорого применять его для такой системы».
«Тогда почему бы не разработать его здесь?»
«У себя? Нет... не будем говорить об этом».
«Простите?»
Работник собирался сказать об этом, но сразу же замолчал. Ёнхо и Сонгю были заинтересованы причиной, но не мог заставить его говорить. Работник, успокоившись, продолжил.
«Не болтайте об этом. На самом деле, дело в деньгах».
«Деньги?»
Из-за интереса Сумин работник начал взволнованно болтать.
«Для разработки софта вам нужны люди, и чтобы найти людей, вам будут нужны деньги, так?»
«Все верно».
«Но в действительности, университетам не выгодно вкладывать деньги в это, потому что он не принесет им прибыли в краткосрочной перспективе».
«……»
«Вы узнаете все это, когда пойдете работать».
Сонгю его не понимал. Молчание повисло в конференц-зале.
Второй день был для 3-го курса. В этот раз работник был напряжен.
«Пожалуйста, будьте сегодня особенно внимательными», - посоветовал он им. Ёнхо внимательно наблюдал, одновременно смотря на окно багов. Он видел несколько ошибок, но они не создавали никаких проблем для подачи заявок на курс.
«Минута до выхода».
Из студентов 2-й и 3-й курсы были наиболее интенсивными. 4 курс был занят поиском работы, а 1 курс многого не знал.
«Запускай. Состояние сервера?»
Как только система заработала, CPU для всех трех серверов поднялась до 99,9%.
«Проблем нет».
спокойно ответил Ёнхо.
«БД?»
«Также отсутствуют», - ответил Сонгю работнику. БД была более важной, чем сервер приложений. Если сервер приложений полетит, можно просто повторно активировать его, и он продолжит работать, в то время как БД перестанет работать.
«Пожалуйста, подождите минуту».
Вдруг сказал Ёнхо, посмотрев на экран.
«Что такое?»
«Память достигла более 70%, и продолжает увеличиваться».
«Что?»
Сотрудник посмотрел на экран. Ёнхо был прав. Коэффициент использования памяти для БД всё увеличивался.
«Д... Давайте понаблюдаем еще минуту. Если она по-прежнему не заработает, то мы можем просто повторно активировать его.
Сеансы, которые получили доступ к БД через сервер приложений, возвращали ресурсы после того, как они были закончены. Нормально, когда уровень поднимается и опускается. Но сейчас он просто продолжал подниматься.
«Больше 80%»
Процент все увеличивался. На лице работника появилась растерянность.
«Вот черт. Все прекрасно работало во время тестирования, так почему сейчас...» - ругался работник. Если сервер упадет, придется писать отчеты об ошибке. И это в лучшем случае. Если они попросят о снисхождении...
«90%».
В словах Ёнхо слышалась настойчивость.
«98%».
Память занималась слишком быстро. В этом случае единственным решением будет вытащить вилку из розетки, если сервер не мог даже принимать команды.
«По... Повторное включение».
Работник дал команду для сервера БД.
«немедленное выключение»
Внезапно экраны для регистрации студентов на курсы зависли. Сервер БД остановился.
«Запуск»
До тех пор, пока не была дана команда для повторной активации.
Глава 8. Регистрация на курсы (3)
Это был второй повторный запуск БД из-за той же самой ошибки. Программа RDBMS (система управления реляционными базами данных) по-прежнему занимает более 90% памяти на сервере. Если бы это продолжалось недолго, то это нормально, но проблема заключалась в том, что все зависнет, когда память заполнится на 100%.
«Хён, разве это нормально, перезапускать ни с того ни с сего?»
«Нет».
«Я не думаю, что это правильно».
«Я тоже... Я такого же мнения».
* дзинь * * дзинь * (звонок телефона)
Телефоны в конференц-зале начали звонить, не переставая. Это были жалобы от студентов, у которых зависла страница.
«Когда я могу зарегистрироваться на курсы снова?»
«Скоро мы все исправим».
«Такое произошло не только у меня, да?»
«Да. Это произошло у всего 3-го курса. Так что не переживайте».
Студентов заботила только одна вещь:
Я единственный, у кого возникла такая проблема? В то время как страница зависла, не займут ли мое место на курсе? – Они беспокоятся об этом.
«Хм...»
Даже сейчас, когда он отвечал на звонки, Ёнхо был сосредоточен на чем-то другом. Он проверял систему через окно багов. Но со стороны выглядело, как будто он просто бродил.
«Посмотрите на это, у сонбэ по-прежнему есть время, чтобы просто ходить даже в такой ситуации».
«Не говори так, Сумин».
«Я не могу понять, почему Сонгю-сонбэ защищает такого, как он».
«Но он хороший!»
«Хороший? Не видела, как он сидел в одних трусах в клубной комнате?»
Из-за слов Сумин лицо Хеджин покраснело. Она сменила тему.
«Е...Еще звонок, я отвечу».
Хеджин быстро схватила телефон. Ёнхо, сосредоточенный на окне багов, слышал их разговор. Если кто-то говорил в этом зале размером 5 пён (≈16.5 кв.м.), невозможно было не услышать.
«Почему она меня так ненавидит?»
Ёнхо действительно не сделал ничего плохого. Кроме решения вопросов с едой и жильем, он не сделал ничего, чтобы он нем думали плохо.
«Но в любом случае, строка 107, т.е. где SQL (язык структурированных запросов, используемых в реляционной базе данных), запускается...»
Ёнхо посмотрел на подробности ошибки.
«Хм... Но что это значит?»
Несмотря на то, что он уже на последнем курсе и выполнял много подработок, он был еще студентом. Это не первый раз, когда он видел содержание, как сейчас, но не мог ничего понять.
Название: Table Lock (блокировка таблицы).
Подробнее: Из-за команды SELECT FOR UPDATE произошла Table Lock. Из-за блокировки другие пользователи, пытающиеся получить доступ к связанной таблице, находятся в режиме ожидания, и это является причиной текущей ошибки.
Решение: Измените SELECT FOR UPDATE на SELECT FOR UPDATE WAIT 3, чтобы сессии других пользователей осуществлялись после примерно 3-х секунд.
«Мне нужно как-то сказать об этом».
Теперь Ёнхо знал, что за баг произошел. Но что-то связанное с SQL... это было исключением. Все, что он знал, было из курса по базам данных, который читали год назад.
«Надо как-то намекнуть об этом Сонгю-хёну».
Сначала он хотел бы подтвердить это у Сонгю. Даже сейчас память использовалась на 100%. Они смогли пообедать только после 2-х перезапусков.
Ёнхо тихо позвал Сонгю, который собирался войти в конференц-зал.
«Хён, подожди секунду».
«Что такое?»
«Просто давай поговорим секундочку».
«Зачем? Я сейчас занят».
«Это из-за этого. Мне нужно уточнить только один момент».