• Плавный переезд

      После того, как мне попались на глаза рассказы о переезде информационной инфраструктуры компании с места на место, я подумал, что переезд среднего контентного интернет-проекта с одной площадки на другую — тоже довольно интересная тема. Особенно интересно то, как сделать это с минимальными перебоями в работе.

      Речь идёт, конечно, не о мегапортале с двумя самосвалами железа, а о средних размеров проекте, когда серверов немного, все они скорее арендуются, нежели находятся в вашей собственности, или же у вас есть достаточный запас ресурсов для того, чтобы перебросить часть серверов на новое место.

      Наверняка, есть способы как сделать это лучше в тех или иных условиях, однако изложу свои соображения на эту тему. Уверен, что как обычно это происходит, кто-нибудь дополнит изложенное своим ценным опытом.

      Рассказ рассчитан на подготовленную аудиторию и не является точным пошаговым руководством к действию.

      Читать дальше →
    • Баланс

        До недавних пор база данных нашего ресурса обслуживалась на пару двумя серверами: Bonnie и Clyde. Clyde — основной сервер проекта, отвечающий на все запросы, Bonnie — сервер, поддерживающий базы других проектов и слейв-клиент базы суперхабра.

        Clyde хорошо справляется со своим делом, была проведена большая работа по оптимизации базы, так что он вполне перемалывал все обращения при генерации миллиона с лишним документов в сутки. Однако, в моменты непредсказуемых пиковых скачков нагрузка время от времени переваливала за допустимые пределы.

        Учитывая постоянно растущий объём данных и нагрузку, настала пора предпринять шаг в сторону масштабирования аппаратных ресурсов базы данных.

        что из этого вышло
      • Миллион

          За вчерашний день проект выдал посетителям 1 180 494 документа (100 000 можно вычесть, как условно-валидные). Это является рекордом по количеству валидных обращений.



          Другое дело в том, что около 72% этих обращений не связаны с просмотром ресурса через браузер. Около 800 000 запросов приходят от роботов и разного рода агрегаторов.

          Update: 100 000 уходят в пользу подбиральщиков паролей.
        • Как остановить Рамблер?

            Самая устаревшая поисковая система русского интернета, похоже, не на шутку нас полюбила.

            Рамблер запрашивает документы с хабрахабра со скоростью до 170 запросов в секунду, что нас несколько не устраивает и по нашим наблюдениям является абсолютным рекордом среди всех индексаторов, посещающих наш проект.

            От службы технической поддержки поисковой системы получено несколько несвязных параноидальных ответов, советующих почитать страницу с описанием файла robots.txt или «поставить задержку на ответ роботу».

            Судя по всему, Рамблер не поддерживает директиву Crawl-delay и найти решение проблемы, не блокируя доступ Рамблеру, будет не так просто, как хотелось бы (nginx в шаге от того, чтобы решить эту проблему для нужного значения user-agent).

            Интересно, есть ли среди читателей те, кто может похвастаться ещё большей степенью внимания со стороны Рамблера?
          • Вопросы зала

              Идя навстречу общественным пожеланиям, мы решили компенсировать несостоявшуюся запись подкаста с разработчиками проведением встречи с заинтересованными людьми здесь, в доступном виде, общаясь средствами текстовых комментариев. Как было правильно подмечено ранее, это куда более информативно и просто, чем прослушивание многочасовой болтовни и вылавливание оттуда частиц смысла.

              Чтобы как-то упорядочить общение и не раствориться в бесконечности, мы ограничимся десятком-другим первых вопросов, обдуманных и заданных по существу. Это своего рода эксперимент, поэтому обещать всестороннего удовлетворения интересов мы, конечно, не берёмся. Речь пойдёт больше о технической стороне дела, а не о взаимоотношениях с пользователями и урегулированию морально-этических вопросов.

              Итак, люди, причастные к созданию проекта habrahabr, готовы ответить на ваши вопросы в комментариях к этой записи.

              Внимание! Название блога говорит за себя: предпочтение отдаётся вопросам о технической стороне дела
            • Конвейеры командной строки

                Предлагаю знающим людям поделиться способами построения конвейеров командной строки (pipelines) в Unix-образных системах. Может быть, получится некоторый справочник :-)

                Я начну с некоторых самых примитивных наборов, полезных для обработки журналов web-сервера.

                Читать дальше →
              • Вся неправда про Суперхабр



                  Пользуясь случаем, пока все спят, я расскажу вам всю неправду о суперхабре. Надеюсь, коллеги не будут против, если я внесу немного неясности в вопрос, что же такое суперхабр и зачем он нужен с технической точки зрения?

                  Итак, для тех кому это интересно, расскажу об составляющих частях этого проекта.

                  Читать дальше →
                • тишина

                    Что-то на хабре пусто стало

                    «Видимо по случайности разработчики „Хабрахабра“ отключили обработку PHP во время проведения работ по обновлению кода сайта (видимо до долгожданного „СуперХабра“), поэтому файлы с кодом стали отдаваться как обычные бинарные файлы.»

                    «двачую, поцы, как войти на блогистан??? куда инвайте — код вбивать то?»

                    «Точно, все закрыли постепенно, пароли наверное просто сменили.»

                    «Так так так… интересный ход… или лажа»

                    «Жесть. Я думал команда там получше...»

                    Читать дальше →
                  • Выкл

                      В 16:15 прекратилось энергоснабжение наших серверов в датацентре Караван. Через некоторое время электричество вернулось, а с ним пришли и проблемы.

                      Мы не имеем возможности получить разъяснения: вероятно, здание компании Караван разрушило НЛО. Все телефоны компании отвечают, как несуществующие.

                      Возможны перебои в работе нашего ресурса. Имеются последствия, с которыми предстоит разбираться.

                      Просим всех проявить терпение.
                    • Боты


                        В связи с усиливающимся неконтролируемым наплывом на наш ресурс разного рода фирменных и самодельных средств выноса информации, с сегодняшнего дня у нас действуют правила для ботов.

                        Просим всех владельцев индексаторов, ботов, пауков, андроидов и прочих кибернетических организмов, получающих информацию с проекта habrahabr.ru, ознакомиться с правилами и внести коррективы в работу управляемых ими систем.

                        Ознакомиться с правилами можно здесь.
                      • Пользовательские поддомены

                          С появлением новых проектов в сети иногда кажется, что задача эффективной организации пользовательских поддоменов (bob.someblog.com) кому-то представляется непростой. На самом деле, этот вопрос решается за одну минуту.
                           

                          Читать дальше →
                        • Совпадение

                            Много раз слышал от людей предостережения о том, что не стоит проверять домены на доступность средствами whois, принадлежащими регистраторам, таким как, например, nic.ru; что стоит пользоваться для таких целей консольными приложениями.

                            И вот, наконец, в один прекрасный день я сам убедился в разумности такого подхода.

                            К счастью, потеря это небольшая, так как окончательно регистрировать домен я так и не решился, но факт в том, что этот домен был занят мерзопакостными дорвейщиками уже через сутки после того, как я проверял его доступность таким вот образом.

                            Самое смешное в этом то, что с некоторых пор данные хуиз запросов веб-интерфейса nic.ru стали передаваться средствами защищённого протокола https.
                          • Тематические Медиа: задача для собеседования

                              В свете того, что в последнее время похожая тема довольно часто стала появляться на страницах проекта, опубликую задание, которое на протяжении значительного времени мы предлагали соискателям на позицию php-разработчика в нашей компании.

                              Читать дальше →
                            • Jevix 0.9.5



                                Опубликована новая версия Jevix — 0.9.5.

                                Основное отличие новой версии в том, что с этих пор Jevix можно использовать как средство для всестороннего контроля и преобразования текстовых данных больших интернет-проектов с «User-Generated» материалом.

                                Теперь Jevix умеет не только применять правила типографики, унифицировать HTML/XML разметку, но и контролировать перечень допустимых тегов с возможностью определения списка допустимых атрибутов для каждого тега отдельно. Также предусмотрена возможность предотвращения вероятных XSS-атак, скрытых в HTML-коде.

                                Читать дальше →
                              • Blitz Templates



                                  Blitz Templates — быстрый и удобный шаблонизатор для крупных интернет-проектов, разрабатываемых на php. На первых порах может быть не совсем очевидно, зачем нужен Blitz для php, в то время, когда этот язык, по сути дела, и есть шаблонизатор, только весьма навороченный.

                                  Читать дальше →