Juan-Carlos Gandhi (
juan_gandhi) wrote2009-03-12 02:25 pm
![[personal profile]](https://www.dreamwidth.org/img/silk/identity/user.png)
что-то было не так
В оркуте юзерский спрос был волнами: первая волна - утро Бразилии, до обеда. Потом спад. Потом после обеда, волна чуть повыше (потому что присоединились те, кто дрых до обеда). К вечеру волна спадает.
Кроме того, были изменения в течение недели: в понедельник уровень ниже всего; затем больше, больше... и в пятницу после обеда - самая высокая волна. Ну типа насчёт выходных утрясают.
А ресурсы в оркуте распределены под завязку. И вот каждую пятницу после обеда дежурный по пейджеру получает звонки, раз в пять минут: сервер перегружен, сервер перегружен! Можно предсказать за месяц, когда сервер будет перегружен.
Я ходил спрашивал, ребята, нельзя в пятницу добавить с десяток серверов-то? Или сделать это погибче, ну типа приоритеты там, запасные сервера... ведь не АТС же, компьютеры, линухи - пока не занят оркутом, гоняет мапредьюсы, а как занят... да какие по пятницам мапредьюсы, народ же отдыхает, к TGIF готовится.
Но нет. Жизнь сурова, ресурсы ограничены, пиши программу так, чтоб она была на грани, но снизу.
То есть, в принципе-то проблемы особой в софте оркута вообще не было. Кроме как баги мелкие пофиксить, фичи новые добавить да с хакерами бороться. А с хакерами бороться нужны же ресурсы. Я нарисовал регексп, покрывающий все хакерские трюки в scrapbook. Этот регексп выкинули, да ещё со словами "неопытный инженер" (ну это гугл, там всякий сельский идиот считает себя умнее усех, т.к. он умеет на распределённой системе вычислять медиану) - неопытность заключалась в том, что этот регексп требует небольшое но количество дополнительных серверных ресурсов. И чё? А ничё, ресурсы добавлять нельзя, лучше пусть хакают, это не так часто случается. Потом, правда, абьюз тим бьётся потом круглые сутки, пишут мапредьюсы, которые сутками работают чистят базу - но это как бы уже не наше дело. Не барское.
Конечно, ресурсы добавляются. Потому что каждую неделю несколько миллионов новых юзеров приходит. Тренд положительный. Но нельзя же выделить столько ресурсов чтобы пейджер не пищал! Тогда же служба мёдом покажется.
Я что хочу сказать... что сложность работы гугловского инженера в-основном, имхо, обусловлена наличием искусственных и бессмысленных ограничений. Дескать, а ну-ка мы попробуем решить такую-то задачу в условиях, приближенных к боевым с другой стороны. А на хера? А потому что мы ж крутые, и задачи у нас все NP-полные, другие задачи нас не интересуют.
Это в среднем, конечно (см Пирамиду Лебедева).
Просто проблема сложности в разработке программного обеспечения большей частью состоит в желании подвыпендриться в условиях, когда ума и фантазии не хватает на действительно серьёзные задачи.
Кроме того, были изменения в течение недели: в понедельник уровень ниже всего; затем больше, больше... и в пятницу после обеда - самая высокая волна. Ну типа насчёт выходных утрясают.
А ресурсы в оркуте распределены под завязку. И вот каждую пятницу после обеда дежурный по пейджеру получает звонки, раз в пять минут: сервер перегружен, сервер перегружен! Можно предсказать за месяц, когда сервер будет перегружен.
Я ходил спрашивал, ребята, нельзя в пятницу добавить с десяток серверов-то? Или сделать это погибче, ну типа приоритеты там, запасные сервера... ведь не АТС же, компьютеры, линухи - пока не занят оркутом, гоняет мапредьюсы, а как занят... да какие по пятницам мапредьюсы, народ же отдыхает, к TGIF готовится.
Но нет. Жизнь сурова, ресурсы ограничены, пиши программу так, чтоб она была на грани, но снизу.
То есть, в принципе-то проблемы особой в софте оркута вообще не было. Кроме как баги мелкие пофиксить, фичи новые добавить да с хакерами бороться. А с хакерами бороться нужны же ресурсы. Я нарисовал регексп, покрывающий все хакерские трюки в scrapbook. Этот регексп выкинули, да ещё со словами "неопытный инженер" (ну это гугл, там всякий сельский идиот считает себя умнее усех, т.к. он умеет на распределённой системе вычислять медиану) - неопытность заключалась в том, что этот регексп требует небольшое но количество дополнительных серверных ресурсов. И чё? А ничё, ресурсы добавлять нельзя, лучше пусть хакают, это не так часто случается. Потом, правда, абьюз тим бьётся потом круглые сутки, пишут мапредьюсы, которые сутками работают чистят базу - но это как бы уже не наше дело. Не барское.
Конечно, ресурсы добавляются. Потому что каждую неделю несколько миллионов новых юзеров приходит. Тренд положительный. Но нельзя же выделить столько ресурсов чтобы пейджер не пищал! Тогда же служба мёдом покажется.
Я что хочу сказать... что сложность работы гугловского инженера в-основном, имхо, обусловлена наличием искусственных и бессмысленных ограничений. Дескать, а ну-ка мы попробуем решить такую-то задачу в условиях, приближенных к боевым с другой стороны. А на хера? А потому что мы ж крутые, и задачи у нас все NP-полные, другие задачи нас не интересуют.
Это в среднем, конечно (см Пирамиду Лебедева).
Просто проблема сложности в разработке программного обеспечения большей частью состоит в желании подвыпендриться в условиях, когда ума и фантазии не хватает на действительно серьёзные задачи.