Глюки ЖЖ: взгляд айтишника
В начале немного теории для непосвящённых в айтишную рутину.
Для нормального функционирования и развития любой большой ИТ-системы (а ЖЖ, без сомнения, ею является) необходим определенный набор железа и софта. И этих комплектов, по хорошему, должно быть, как минимум, три.
Первый – продуктивный. На нём крутится текущая база данных, пашет софт ЖЖ, благодаря которым мы, собственно говоря, и ведём журналы и используем всякие-разные сервисы.
Второй и третий – это копии, вернее полные клоны (включая операционку, прикладной софт и железо), рабочей системы. Один из них предназначен для программистов-разработчиков, они на нём ваяют и отлаживают новые фичи и делают новые баги. Другой – для тестировщиков. Которые, получив от разработчиков новую сборку софта (и, возможно, апдейт на базу данных), занимаются проверкой и тестированием всех изменений (по уму, не только их, но и всего комплекса целиком).
По хорошему, должен быть ещё четвертый стенд, синхронно работающий с продуктивным и, в случае поломки последнего, подменяющий его.
У меня нет точных данных про техническим показателям (честно говоря, не спрашивал; возможно, мне бы их и дали) этих трёх-четырёх сред, но некоторые предположения мне сделать, тем не менее, хочется.
Так вот. По моим прикидкам, объём базы данных (всех журналов) около 200-300 террабайт. Соответственно, при таком объеме сделать три-четыре полноценных стенда достаточно сложно и дорого. А, судя по причинам, которые нам озвучивали в конце года – ЖЖ испытывает определённые трудности с вычислительными ресурсами (именно с этим был связан «переезд» журналов на новые сервера).
Из чего, логично для меня следует, что самое слабое звено в части доработки ЖЖ-платформы – это стадия тестирования. Отсутствие полноценной среды, как минимум. Плюс, ещё такие признаки:
- бета-тестирование проходит на продуктиве,
- почти каждый выпускаемый релиз содержит критические баги.
То, что касается последних тормозов ЖЖ при миграции журналов, то опять повторюсь: скорее всего у тестировщиков ЖЖ не было технической возможности (см. про трудности с вычислительными ресурсами) проверить всю процедуру в условиях, приближенных к боевым.
Потому и не летает (с)
Резюме: руководству ЖЖ нужно решать проблемы, связанные с тестированием продукта. Если под это не выделять нужного количества ресурсов (железячных и человековых), то ЖЖ так и будет падать.