Компания продает через Internet 85% всех товаров, распространяемых через сеть ее консультантов
Барри Блум: «Самое трудное при разработке Web-приложения — понять, что оно должно делать»

Международная косметическая корпорация Mary Kay с оборотом свыше 1 млрд. долл. продает через Internet 85% всех товаров, распространяемых через сеть ее консультантов или напрямую клиентам, при том что всего несколько лет назад эта доля составляла лишь 10%. Главный разработчик по продуктам электронного бизнеса Барри Блум встретился с ведущим журналистом Network World Дэннисом Дуби, чтобы поговорить о технологии, которая позволила Mary Kay добиться столь значительных успехов в Internet.

Чем конкретно занимается главный архитектор по продуктам электронного бизнеса?

Эти обязанности весьма разнообразны. Я принимаю участие в совещаниях разработчиков, посвященных вопросам распространения по сети следующих версий наших приложений на те серверы, через которые мы намерены продавать. Участвую в дискуссиях, касающихся развертывания нашей сети хранения данных, а также наших каналов доступа в Internet и технологии балансировки нагрузки, которую мы применяем. Я отвечаю за внедрение Microsoft .Net. У нас есть около 50 различных Web-приложений, которые используют сотрудники наших отделов продаж, и мы активно занимаемся внедрением новых версий этих приложений в нашу производственную среду. Я организую работы по их внедрению, а кроме того, принимаю участие в том, что мы называем повседневным процессом выпуска. Если возникают проблемы в нашей производственной среде, я, как правило, участвую в попытках их разрешения.

Раньше обычный консультант Mary Kay не имел доступа в Internet, и компания не была серьезно представлена в Web. Просто удивительно, насколько энергично она стала использовать Internet за последние несколько лет. Учитывая, что всего за три года доля заказов, получаемых с помощью электронных средств, выросла с 10 до 85%, темпы развития просто огромны.

Какая ИТ-инфраструктура выделена для Web-сайта?

Мы поддерживаем 700 серверов и 2000 настольных систем, включая корпоративные приложения. Около 200 серверов используются для работы в Web. Сначала для поддержки нашего присутствия в Web применялось около 20 серверов. В конце 1998 — начале 1999 года всего за шесть месяцев мы увеличили их число до 200. Мы абсолютно не представляли себе, сколько именно серверов потребуется, и совершенно неверно прогнозировали темпы внедрения. Это был период, когда мы кардинально меняли свою архитектуру каждые два месяца, пытаясь справиться с растущей нагрузкой. Это было очень трудно, поскольку руководители и менеджеры компании не всегда нас поддерживали. Нам не выделяли средства, которые мы считали необходимыми. Это продолжалось до тех пор, пока мы не доказали, что эти затраты себя оправдывают. Сейчас, наконец, формирование архитектуры закончено. У нас работает 16-процессорная система Unisys вместе с SQL Server, служащая в качестве базовой системы для всех наших Web-приложений.

Какие типы серверных ОС вы применяете?

В основном это Windows, но мы также используем VMS, Solaris и другие. Что касается аппаратного обеспечения, то это системы, выпускаемые Compaq, Dell Computer, IBM и Unisys. В компании применяется около 50 различных конфигураций, от двухпроцессорных с оперативной памятью емкостью 512 Мбайт до 16-процессорных с оперативной памятью емкостью 16 Гбайт. Очень много времени мы потратили на то, чтобы добиться эффективного использования серверов с большим числом процессоров, так что их количество не очень велико. Только что мы завершили длительный этап объединения серверов, связанный с переходом на Microsoft .Net и сократили общее количество серверов почти на 30.

Каковы затраты и предполагаемый возврат от инвестиций, который можно получить при таком объединении серверов?

Для поддержки Web-приложений, с которыми работают сотрудники отдела продаж, у нас было 46 серверов, а после завершения перехода на .Net осталось 20. Этого удалось достичь благодаря тому, что: .Net лучше компилируется и лучше масштабируется, мы перешли от двухпроцессорных серверов на четырехпроцессорные, .Net более стабильна, поэтому мы смогли запускать все наши приложения на сервере одного типа — эти 20 серверов дублируют друг друга и распределяют нагрузку.

Что вы посоветуете компаниям, которые планируют объединить свои серверы?

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

Почему вы выбрали .Net?

Мы уже работали с Visual Basic 6 и Component Object Model корпорации Microsoft, используя такой инструментарий, как Site Server 3.0 Commerce Server Edition для разработки. Этот опыт позволил нам сделать вывод, что мы сможем создавать наилучшую систему для Mary Kay с помощью технологий .Net.

Каким образом вам удалось адаптировать 50 своих приложений к .Net?

Самое трудное при разработке Web-приложения — понять, что оно должно делать. Но создание новой версии Web-приложения для .Net даже нельзя сравнивать с разработкой совершенно нового приложения «с нуля».

Мы взяли существующее приложение обработки заказов, которое обслуживает 85% наших операций и было написано для версии Site Server 3.0 Commerce, технологии, созданной 5 лет назад корпорацией Microsoft, и адаптировали ее к .Net. Мы использовали всю информацию о том, как оно выглядит, как оно работает, все правила, которые были в нем запрограммированы, и на основе этих знаний написали приложения для .Net.

Это заняло около двух месяцев. На первоначальное создание приложений обработки заказов было потрачено полтора года. Когда мы перешли на .Net, сократили число серверов до 20 и смогли увеличить число выполняемых заказов в 10 раз.

Сколько денег Mary Kay тратит на .Net, каковы ожидаемая общая стоимость владения и возврат от инвестиций?

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

Что вы можете порекомендовать другим компаниям, планирующим перейти на .Net?

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

Развертываете ли вы Web-службы с помощью .Net?

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

В чем причина успеха Web-служб?

Учитывая ажиотаж, поднятый сейчас вокруг Web-служб, принять решение об их повсеместном использовании очень просто. Но все это на самом деле сводится к созданию искусственного уровня, который будет медленнее других видов распределенных компонентных моделей. Поскольку это протокол связи на базе XML, он предусматривает передачу слишком большого количества данных. Как правило, независимые производители используют иную технологию Web-служб, чем мы. ProPay — это созданная нами система на базе Unix. Это наш интерфейс Web-служб, и мы можем предоставить документацию, где описано, как с ним работать. Определяя Web-службу, вы предлагаете документацию, поэтому вам не нужно лично ехать и объяснять другим, как с ней работать. Это стандарт, поэтому выполнение транзакций между компаниями не составляет труда.

Назовите области, в которых Web-службы не используются сейчас, но станут использоваться в будущем?

Самая серьезная проблема, связанная с Web-службами, заключается в том, что мы стремимся использовать Internet для выполнения транзакций большого объема. Мы говорили о развертывании клиентов на настольных системах в нашей службе продаж, где сотрудники могли бы выполнять транзакции Web-службы в процессе выполнения заказов. Но сейчас мы понимаем, что нам следует больше внимания уделять вопросам защиты при выполнении тех транзакций, для которых мы предлагаем Web-службы.

Каким образом вы гарантируете приемлемый уровень защиты для приложений Mary Kay?

Мы применяем методологии, которые заставляют разработчиков использовать определенные виды защиты. Мы уже определили, как должна быть организована защита, будет ли это intranet-приложение или общедоступный Web-сайт. Разработчики об этом не думают, они просто создают приложения таким образом, как мы указываем, и защита встраивается в само приложение.

Что в области информационных технологий для вас сейчас имеет наивысший приоритет?

Я занимаюсь проектом по развертыванию системы управления информационным наполнением. Мы разработали ее в своей компании, эта система использует поисковый механизм Google.

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

Ваша ИТ-инфраструктура работает и по ночам?

По мере развития нашего бизнеса мы устанавливаем определенные правила управления приложением. Главное, чтобы внедрение нового не отразилось пагубно на нашем сайте. Когда мы впервые начали внедрять новые разработки, существовали механизмы принятия заказов, которые не предусматривали работу через Web. Теперь, если мы сделаем что-то, мешающее работе нашего приложения интерактивного приема заказов, заказы приниматься не будут. Нет ничего хорошего, когда работа прекращается на восемь часов.