1С Битрикс Облачный драйв. Фотоотчёт.

Пару дней назад в мою почту свалилось приглашение на конференцию Битрикса. Откуда я собственно узнал, что вышла его новая 11 версия. Интересно было узнать, что же там нового, да и вообще приглядеться к самой популярной отечественной платной CMS системе.Конференция проходила в отеле Ararat Park Hyatt Moscow, в самом центре, недалеко от красной площади. Там кстати поставили какие-то ограждения не то уже на 7 ноября (хотя ещё рано), не то для чего-то ещё. Побродив там немного я направился в отель. Давно там не был, скажу что обустроено там всё по высшему разряду, что и закономерно.

На самом деле мероприятие было не столько IT-конференцией, сколько пресс-конференцией и презентацией для партнеров Битрикса. Из технических людей там были мы с Владимиром Юневым, коллеги из хостеров и Яндекса (ну не считая собственно сотрудников Битрикса), автор Roem.ru. Пока мы сидели и общались с Владимиром подошел Сергей Рыжиков, генеральный директор Битрикса. Мы разговаривали на тему гео-кластера, распределения нагрузки и облачных систем хранения данных. Было очень интересно пообщаться. За разговором не заметили, как пролетело время и всех позвали в конференц-зал. Доклад был всего один, собственно презентация 11 версии.

Релиз-цикл Битрикса

Сергей начал с того, что текущая версия была выпущена раньше времени. По идее это должен был быть Битрикс 10.5, но изменений накопилось столько, что с новая версия может с полным правом называться 11ой. В вебдеве всё постоянно меняется, и надо следовать этим изменениям, поэтому полугодовой релиз-цикл – самое то.

Проблема качества

Про баги битрикса не говорит только ленивый. На форумах, да и на Хабре тоже постоянно возникают топики про глючность и бажность этой CMS. Тут надо внести некоторую ясность. Сам я раньше тоже не был приверженцем Битрикса. Как-то поковыряв исходники 6ой версии я пришел в ужас, и неприятный осадок от того оставался до сих пор. Однако во первых, сейчас уже 11 версия на дворе, и с тех пор многое поправлено. Во-вторых глядя в changelist понимаешь, что с совсем уж плохим кодом такого сделать было бы просто нереально. Ну и в третьих, клиент не разбирается в ч1ём проблем – в хостинге, настройках сервера или самого битрикса, криворуких программистов в студии партнере. Он просто видит, что Битрикс глючит.

Таким образом проблема качества – стала основным приоритетом при разработке системы и наладке отношений с партнерами. Для облегчения процесса внедрения и сдачи проекта конечному клиенту (т.е. для клиента и для партнера) в Битрике пробовали использовать стандартные методы: обучение, сертификацию. Однако на массовом рынке сделать это сложно, да и ресурсы затрачиваются большие. Еще больше осложняет проблему тот факт, что в работе над веб-сайтов участвуют несколько человек: собственно клиент, партнер и разработчики платформы.

Монитор качества внедрения

Для решения проблемы был создан Монитор качества внедрения. Это по сути некий checklist, по которому можно (даже нужно) проверять проект перед сдачей, это система тестов для веб-разработчиков. Она включает в себя 26 обязательных тестов и 39 необязательных а также 12 автоматических проверок. Их число постоянно увеличивается. Основная цель монитора качества – сдать заказчику качественный, проверенный проект, тем самым снизив количество ошибок.

Для разработчиков он также облегчает жизнь. Они могут сами добавлять свои тесты в “монитор качества”. Например это могут быть тесты на публикацию в каталогах, какие-либо шаги по SEO-оптимизации, тестирование code style, тесты по контекстной рекламе с помощью сторонних API и многое другое.

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

Облака и Битрикс

Другая модная нынче тема это облачные вычисления. На самом деле облачные технологии это старые добрые кластерные технологии, только с динамическим выделением ресурсов, живыми миграциями и некоторыми другими “приметами нового времени”. В презентации была высказана мысль, что облако – это новая операционная система. Формируются новые сервисы с API для приложений, облачный масштабируемый SQL, документы и файлы постепенно переезжают в облака (Google Docs, DropBox, Ubuntu One), календари почта и коммуникации тоже стремятся уйти с десктопов. Что это значит для разработчика? Он обеспечивается инфраструктурой, его приложения исполняются на ресурсах облачного провайдера, становится доступна масштабируемость и высокая производительность.

Традиционное веб-приложение использует три компонента: собственно исходный код, систему хранения (БД) и систему кэширования (Memcached со товарищи). При возрастании нагрузки разработчик вынужден добавлять кэширующие сервера, фронт-энды, сервера БД… иными словами кластеризовать веб-продукт.

Что же нового представлено в 11ой версии битрикса с точки зрения облачной инфраструктуры?

  • Поддержка облачных хранилищ и CDN. Битрикс позволяет задавать типы файлов и соответствующее им облачное хранилище. Т.е. всё статику можно перевести в облако. А облако = CDN, что решает большую головную боль по доставки контента. Разработчки полностью отказались от csync2 и своей инфраструктуры в пользу использования ресурсов облачного провайдера. Надо сказать, что это снимает целый комплекс вопросов по синхронизации и поддержки актуальности данных.
  • Географический веб-кластер. Это то, о чём они мечтали пол-года – год назад. Решив проблему хранения контента можно решать проблему географического распределения вычислений, т.е. генерации страницы. Тут опять же надо использовать принцип локальности. Клиент должен взаимодействовать с ближайшим к нему узлом кластера (облака, не важно).
  • Виртуальная машина 3.0. У меня почему-то сложилось впечатление, что разработчики битрикса сделали свою виртуальную машину, которая что-то интерпретирует. Однако это было ошибочное представление. Имеется в виду образ ОС (на базе Debian) насколько я знаю, пригодный для развертывания в инфраструктуре облачного провайдера. Всё, чтобы пользователю решения (партнеру в данном случае) было легче.
  • Новая технология кэширования. Очевидно это также касается обалчно инфраструктуры и кэширования уже в ней. Вкратце было сказано, что локальая копия не изменяет себя, а все изменения накатывает в облако, откуда потом берет данные, кэшируя у себя. В общем, очень интересно. Я бы даже не отказался пощупать это в жизни.

В общих чертах можно сказать, что Битрикс сейчас проходит этап становления платформы, как когда-то прошел его, например,  Google. На данный момент поддерживаются следующие облачные хранилища: Google, Amazon, Windows Azure, Rackspace и OpenStack. Особенная гордость битриксовцев – это поддержка OpenStack. Это комплекс открытого ПО, который поддерживает около 50 компаний по всему миру, среди которых есть и Citrix, Dell, AMD, Intel и другие. Из российских представителей это Clodo.ru

Кроме классификации файлов по типам для хранения в разных обьлачных хранилищах, можно делать это по размеру. Например все файлы “весом” больше 100Мб перемещать в Google Storage, а всё видео – в Amazon. На этом кстати можно здорово сэкономить. При использовании “Медиатеки” (аналог “Медиа-менеджера” в Joomla и “Медиафайлов” в WordPress) все файлы могут храниться в облаках и доставляться мгновенно с помощью CDN-сетей Google, Microsoft и других. Так что теперь из CDN можно брать не только jQuery 🙂
Географический веб-кластер повышает отказоустойчивость проекта и обеспечивает независимость от дата-центра и поставщика облачных услуг (нет vendor-lock). В разных дата-центрах объединяются несколько групп веб-кластеров, находящихся в разных городах и странах. В случае отказа одного дата-центра, в работу мгновенно включается другой, без необходимости восстановления “бекапа”.

Виртуальная машина 3.0

Новая “виртуальная машина 3.0” включает в себя мастер создания кластера, мастер добавления slave-сервера, мастер переключения slave-сервера в режим master. Теперь чтобы развернуть кластер, необходимо 5-10 минут. При этом не требуется ничего устанавливать или настраивать. Кроме того, появилась возможность на одной виртуальной машине запускать несколько сайтов, что также благотворно скажется на эффективности использования ресурсов. Поддерживаются следующие технологии виртуализации: VmWare, Parallels, Microsoft, Amazon WebService, Xen. Битрикс становится платформой не только для создания сайтов, но и для разработки облачных веб-сервисов, ведь основные задачи по развертыванию и поддержки инфраструктуры взяли на себя разработчики системы.

Безопасная авторизация

Из 50 000 клиентов только у 2 000 включён SSL. Остальные находятся в опасности, т.к. их учётные записи могут быть скомпрометированы. Для повышения безопасности разработчики реализовали шифрование пароля на клиенте средствами JavaScript и отправки по каналу связи уже зашифрованный пароль, что должно затруднить потенциальный взлом.

Marketplace, “Мне нравится” и социальный поиск

В новую версию включён Marketplace, в котором размещены уже более 300 готовых приложений. Интересно есть ли там Angry Birds? 🙂 Вообще идея хорошая, привлечь сторонних разработчиков. Кстати они уже запустили процессинг приложений. Посмотрим, что из этого выйдет.

Интерфейс социальной кнопки сделан более простым. Хотя алгоритм счёта и усложнился. Добавлена лента активности на сайте, и переработан поиск. Теперь поиск вместе с индексами вообще можно вынести на отдельную машину. Рейтинг того или иного контента зависит от количества и весов голосов за него, т.е. поиск стал социальным. При каждом нажатии на кнопку “мне нравится” происходит пересчёт рейтинга. Не знаю, конечно, как это сказалось на производительности.

Русские имена файлов, папок и сайтов. Микроформаты.

Теперь поддерживаются русские имена, так что можно будет чем-то забить ваш домен в зоне .рф 🙂 А для лучшей индексируемости сайта поисковиками внедрена поддержка микроформатов, например, для товаров в интернет-магазине.

Outro

В общем конференция понравилась, рад был пообщаться с коллегами из Битрикса и Сергеем лично. Мне определённо нравится в какую сторону идёт Битрикс. Надеюсь его разработчикам удастся сломать старый имидж, и мы увидим на нём ещё много качественных и интересных проектов!

 

5 Comments

    1. Ну вы так говорите, как будто сейчас это обязательная функция для всех CMS. Жили нормально, когда сервера были сосредоточены в одном дата-центре и между ними хороший канал был. Csync2-овали данные между ними совершенно спокойно. А как разнесли по странам, словили задержки и тормоза. Перестали укладываться в отведённые временные промежутки и решили двинуть в облака. По-моему логично 🙂

  1. Спасибо вам за отчет, фотки не очень хорошие правда, но прочитай и понял что пропустил много что не пришел. Спасибо

    1. Да просто заболтались и сел потом не очень удачно, так что извиняйте 🙂

  2. Думаете, что у вас нет мобильного трафика? Проверьте. Мобильный трафик сейчас превалирует на многих сайтах, даже совсем не предназначенных для мобильного просмотра и не имеющих мобильных версий. Например, цветоводы, книголюбы и другие участники разных сообществ все больше заходят в Сеть с мобильных устройств.

Leave a Comment