КАТЕГОРИИ: Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748) |
Затраты 8 страница
Диспетчер пользовательского интерфейса ответствен за «облик и дух» пользовательского интерфейса клиента. С другой стороны, пользуясь расширяемостью набора ресурсов, доступных системе \YW\V, другой ллсмент — диснетчср представлений — можетделегировать полномочия по отображению информации внешним программам (просмотра). Так происходит с ресурсами, которые известны системе, но которые диспетчер пользовательского интерфейса нс поддерживает напрямую. В частности, большинство веб-браузеров делегируют внешней программе обязанности по отображению файлов PostScript и.pdf. Такое решение возникло как компромисс между стремлением к интеграции пользовательского интерфейса (способной стабилизировать его представление и, следовательно, повысить практичность), с одной стороны, и расширяемостыо — с другой.
Рис. 13.5. Представление размещения клиент-серверной модели Всемирной паутины, а также представление декомпозиции на модули клиента HTTP и серверных компонентов Диспетчер пользовательского интерфейса забирает запрос на поиск информации, поданный пользователем в виде URL, а затем передает эти данные диспетчеру доступа. Диспетчер доступа проводит проверку иа наличие запрошенного URL в кэше и интерпретирует историческую навигацию (например, «Назад»). Если файл присутствует в кэше, он извлекается из диспетчера кэширования и передается диспетчеру представлений для отображения пользовательским интерфейсом или внешней программой просмотра. В случае отсутствия файла в кэше диспетчер протоколов определяет тип запроса и запускает для его обслуживания соответствующий стек протоколов. С помощью последнего клиентский диспетчер протоколов передает запрос на сервер. Получив от сервера ответ, выраженный в форме документа, диспетчер потоков передает его диспетчеру представлений, который, в свою очередь, обеспечивает его отображение. При попытке установления соответствия типа документа внешним программам просмотра диспетчер представлений обращается за помощью к конфигурационному файлу управления статическим представлением (mimerc, mailcap и т. д.). В обязанности HTTP-сервера входит обеспечение прозрачного доступа к файловой системе — благо именно она является источником документов, которые передаются в WWW. HTTP-сервер управляет доступом либо напрямую (для известных типов ресурсов), либо через посредника, называемого общим шлюзовым интерфейсом (common gateway interface, CGI). CGI обрабатывает те типы ресурсов, с которыми не может справиться сервер, а также рассматриваемые ниже расширения функциональности сервера. До появления этих расширений в WWW- серверах реализовывалось подмножество определенных HTTP-запросов, которые предусматривали поиск документов и связанной с ними метаинформации, а также исполнение программ, размещенных на стороне сервера, средствами CGI. Получив запрос, диспетчер потоков на стороне сервера определяет его тип и при помощи распознавателя путей устанавливает путь к указанному URL. Для проверки полномочий доступа, которыми обладает запрашивающий клиент, IITTP- сервер обращается к таблице доступа. Если речь идет об обращении к защищенным данным, сервер может запустить сеанс парольной аутентификации клиента. Затем, приняв допущение об аутентификации, сервер обращается к файловой системе (расположенной за его границами) и записывает запрошенную информацию в выходной поток. Для исполнения программы средствами CGI ей предоставляется процесс (новый или освобожденный в результате опроса), после чего выходные данные исполняемой программы фиксируются диспетчером потоков сервера, и он, в свою очередь, передает их клиенту. Как бы то ни было, CGI — это одно из основных средств, обеспечивающих расширяемость сервера; иначе говоря, оно удовлетворяет важнейшему требованию, определяющему развитие веб-приложений. Важность CGI как аспекта вебприложений позволяет нам остановиться на этой теме чуть подробнее. Общий шлюзовой интерфейс (CGI) Информация, которую сервер возвращает клиенту, по большей части является статической; изменениям она подвержена только в рамках собственной файловой системы. Сценарии CGI, напротив, подразумевают возможность возврата динамической, индивидуальной для каждого запроса информации. Исторически сложившаяся роль CGI заключается в расширении функциональности сервера по части ввода информации, поиска и щелчков на изображениях. Впрочем, чаще всего CGI используется для создания виртуальных документов (virtual documents) — документов, которые синтезируются динамически в ответ на запросы пользователей. К примеру, если пользователь ищет в Интернете конкретную информацию, поисковая система генерирует ответ па каждый поисковый запрос; сценарий CGI создает из ответа новый HTML-документ и возвращает сто пользователю. Сценарии CGI сохранили гибкость, характерную для ранних, основанных на библиотеке libWWW вариантов архитектуры. На рис. 13.5 CGI изображен как внешний по отношению к HTTP-серверу элемент. Сценарии C.GI пишутся на разных языках — как компилируемых (С. C++, Fortran), так и интерпретируемых (Perl, Visual Basic. AppleScript и т. д.). Сценарии CGI позволяют разработчикам произвольным образом расширять функциональность сервера — в частности, производить информацию, возвращаемую сервером пользователю. С другой стороны, поскольку в сценариях CGI может содержаться любая функциональность С, Perl и других языков, в системе защиты машины, на которой они устанавливаются, образуется серьезная брешь. К примеру, с помощью сценария (исполняемого как отдельный от сервера процесс) на хосте от имени удаленного пользователя можно запустить любую команду. Эта угроза, которую демонстрируют исполняемые на стороне сервера сценарии (в том числе CGI), заставила выставить к Всемирной паутине новое требование, касающееся повышения безопасности. Механизм реализации этого требования с помощью HTTPS описывается в следующем разделе. Вероятно, наиболее важным результатом введения в архитектуру веб-техно- лопш CGI явилась возможность «размещать» (put) в сети информацию — в дополнение к стандартной для сервера операции ее «получения» (get). Впрочем, это требование, выдвинутое еще к первоначальному проекту WWW, так и не удалось реализовать в полной мере. CGI позволяет пользователям размещать информацию только посредством специализированных механизмов — например, вносить записи в базу данных путем заполнения формы. С помощью технологии CGI — в основном за счет обеспечения возможностей обработки сервером произвольных ресурсов и (ограниченного) размещения пользователями данных — удалось решить множество проблем, присущих первоначальному проекту libWWW. С другой стороны, у CGI есть несколько существенных недостатков. Один из них связан с безопасностью, другой — с переносимостью. Сценарии CGI, написанные на Visual Basic, AppleScript и С Shell, работают в средах Windows, Macintosh и UNIX соответственно. Переносить эти сценарии с одной платформы на другую довольно сложно.
Реализация первоначальных задач по качеству Реализация первоначально сформулированных для Всемирной паутины задач по качеству — удаленному доступу, способности к взаимодействию, расширяемости и масштабируемости — расписана в табл. 13.2. 13.4. Еще одна итерация архитектурноэкономического цикла: эволюция вариантов веб-архитектуры систем электронной коммерции Невероятный успех Всемирной паутины возбудил к ней серьезный интерес со стороны бизнес-сообщества, которое впоследствии через посредство архитектурно-экономического цикла оказало на ее архитектуру беспрецедентное воздействие. Коммерческие требования в архитектуре Всемирной паутины вскоре стали превалирующими. Большинство инновационных разработок в области веб-приложений было выполнено с подачи веб-сайтов В2В и В2С. Согласно первоначальной концепции, Всемирная паутина должна была стать коллекцией документов, основанной на гипертексте. С точки зрения электронной коммерции WWW является коллекцией данных. Эти две концепции отчасти находятся в противоречии друг с другом. К примеру, сложности вызывает задача «проталкивания» информации пользователю. Общеупотребительная методика обновления данных предусматривает их регулярную перезагрузку; однако сами по себе изменения, происходящие с данными, не приводят к обновлению экрана. Другая проблема связана с кнопками «Назад» в различных браузерах — в определенных обстоятельствах их употребление приводит к выводу на экран устаревших данных. Требования, которые в настоящее время выдвигают игроки электронной коммерции, отличаются от приведенных в разделе 13.2 первоначальных требований как по существу, так и по жесткости. ♦ Высокая производительность. Популярные веб-сайты ежедневно фиксируют десятки миллионов обращений, и пользователи рассчитывают на максимально возможное сокращение задержек. Покупатели не намерены терпеть отказы в ответ на свои запросы. ♦ Высокая готовность. Сайты электронной коммерции должны быть работоспособны 24 часа в сутки, 7 дней в неделю. Поскольку они никогда не закрываются, периоды простоя необходимо строго ограничивать — желательно, чтобы они не превышали нескольких минут в год. ♦ Масштабируемость. Вместе с ростом популярности веб-сайтов должна расти и их обрабатывающая способность — без этого невозможна обработка более серьезных объемов данных и поддержание приемлемого уровня обслуживания клиентов. ♦ Безопасность. Пользователи должны быть уверены в том, что секретную информацию, которую они отправляют через Сеть, никто ие перехватит. Операторы веб-сайтов» в свою очередь, должны быть гарантированы от атак на свои системы (конкретнее — от похищения и модификации данных, отправки огромного количества запросов, приводящей к неготовности данных, порче данных и т. д.). ♦ Модифицируемость. Веб-сайты электронной коммерции постоянно (иногда — ежедневно) претерпевают обновления, в связи с чем возникает потребность в удобстве изменения размещаемой на них информации. Архитектурное решение перечисленных требований лежит в плоскости системной, а не просто программной, архитектуры. Дело в том, что подобного рода системы по большей части состоят из коммерческих компонентов. В эту категорию, естественно, входят веб-серверы и веб-клиенты; кроме того, это базы данных, серверы безопасности, серверы приложений, прокси-серверы, серверы транзакций и т. д. Эталонная архитектура современной системы электронной коммерции изображена на рис. 13.6. Функция взаимодействия программы просмотра с пользователем, как правило, осуществляется веб-браузером (кроме того, это может быть киоск, устаревшая система или какое-либо другое устройство с подключением к Сети). Функция бизнес-правил и бизнес-приложений обычно реализуется серверами приложений и транзакций. Уровень служб обработки данных в большинстве случаев воплощается в современной базе данных, хотя не исключаются и другие варианты — соединения с устаревшими системами и подключение к устаревшим базам данных. Изображенную схему часто называют n-звенной архитектурой (причем в данном случае п = 3). Звено (tier) представляет собой элемент функциональности, на который можно отвести отдельную физическую машину.
Типичная реализация архитектуры системы электронной коммерции включает некоторое количество звеньев (каждое из которых представляет собой связную группу программного обеспечения, как правило, состоящую из специализированных коммерческих компонентов), а также аппаратное обеспечение. Подобная конфигурация изображена на рис. 13.7, который, кроме того, иллюстрирует распределение программ между аппаратными блоками.
Надписи на рис. 13.7, повторяющие приведенные на рис. 13.6 функциональные элементы, в очередной раз свидетельствуют о том, что любая отдельная функция эталонной архитектуры может соответствовать нескольким звеньям архитектуры системы электронной коммерции. Веб-браузеры (клиенты) и веб-серверы с рис. 13.5 предстают здесь в виде элементарных компонентов. Таким образом, налицо тенденция перехода к компонентным системам, в которых снижается значимость внутренней компонентной структуры. Изображенные на рис. 13.7 элементы мы намерены обсудить ниже в контексте атрибутов качества, реализации которых они способствуют. Браузеры ради модифицируемости Запросы на получение информации конечные пользователи, как правило, инициируют при помощи веб-браузера. Поддержка модифицируемости пользовательского интерфейса в современных веб-браузерах осуществляется весьма многообразно, причем наиболее очевидный способ не претерпел никаких изменений с момента появления Всемирной паутины, — пользовательский интерфейс, который отображает браузер, не «вшивается», а специфицируется средствами HTML. По крайней мере, так было раньше. Сегодня технологий создания сложных пользовательских интерфейсов стало гораздо больше. XML, Flash, ActiveX, Java- апнлеты — это лишь некоторые средства, расширяющие стандартную палитру неб-инструментов (состоящую из графики и горячих точек) и способствующие отображению средствами браузеров полностью программируемых интерактивных интерфейсов. HTTPS ради безопасности Поданный пользователем запрос необходимо передать па целевой веб-сайт. Передача обычно осуществляется средствами HTTP, однако если речь идет о секретной информации, вроде номеров кредитных карт и идентификационных номеров, применяется протокол HTTPS (HTTP Secure). В HTTPS в качестве нодпротоко- ла HTTP применяется протокол защищенных сокетов (Secure Sockets Layer, SSL) от компании Netscape. Для отправки зашифрованных запросов на службы ТСР/ IP он использует порт 443 (стандартный порт HTTP — 80). Шифрование данных в рамках SSL производится с помощью 128-бптной пары открытого/секретного ключей — этот уровень шифрования при обмене небольшими пакетами коммерческой информации в рамках коротких транзакций считается достаточным. Прокси-серверы ради производительности Иногда запросы от браузеров проходят через прокси-сервер — элемент, ориентированный на повышение производительности веб-системы. Эти серверы кэшируют веб-страницы, к которым пользователи обращаются чаще всего, в результате чего необходимость в обращении к веб-сайту для их получения отпадает. (Кэши реализуют «многоэкземплярную» тактику.) За счет того, что они, как правило, максимально приближены к пользователям и зачастую даже находятся с ними в одной сети, вычислительные и коммуникационные издержки резко снижаются. В некоторых компаниях прокси-серверы ограничивают доступ сотрудников к тем или иным веб-сайтам. В таком случае прокси-сервер функционально сближается с брандмауэром. Маршрутизаторы и брандмауэры ради безопасности Запросы, отправляемые браузером (ив некоторых случаях обрабатываемые прокси-сервером), прибывают на маршрутизатор, расположенный в сети предприятия электронной коммерции. Иногда эта сеть защищается брандмауэром, а в некоторых случаях маршрутизатор перенаправляет HTTP-запросы на автономный брандмауэр. Маршрутизаторы часто проводят трансляцию сетевых адресов (network address translation, NAT) — иначе говоря, преобразуют IP-адреса из внешне видимых во внутренние. IP-адреса для любого возвращаемого с веб-сервера трафика, напротив, транслируются из внутренних во внешне видимые. NAT — это один из инструментов методики выравнивания нагрузки, к рассмотрению которой мы вернемся чуть позже. Брандмауэр предотвращает несанкционированные информационные потоки и попытки доступа извне, осуществляя, таким образом, тактику «ограничения доступа». Брандмауэры подразделяются на несколько типов, из которых наи- большим распространением пользуются фильтры пакетов (packet filters) и прикладные посредники (application proxies). Фильтры пакетов исследуют заголовки всех входящих пакетов TCP и IP, и в случае обнаружения злонамеренного поведения (например, попытки подключения через несанкционированный порт или отправки файлов неразрешенных типов) пакет отклоняется. В контексте передачи данных в WWW фильтры пакетов хороши тем, что исследуют каждый пакет в отдельности и не делают попыток фиксировать историю предыдущих сеансов связи. Брандмауэры типа «прикладной посредник», как и предполагает их название, ориентированы на конкретное применение. Как правило, они интерпретируют прикладные протоколы и поэтому при фильтрации трафика опираются на известные модели поведения. К примеру, прикладной посредник может отказать в приеме HTTP-отклика, если перед этим на соответствующий узел не был отправлен HTTP-запрос. Брандмауэры такого типа работают значительно медленнее фильтров пакетов; связано это с тем, что, во-первых, они сохраняют историческую информацию значительного объема, а во-вторых, механизм обработки в них значительно сложнее. Выравнивание нагрузки ради производительности, масштабируемости и готовности Компоненты, обеспечивающие выравнивание нагрузки, а следовательно, производительность, масштабируемость и готовность, в обязательном порядке присутствуют на всех уважающих себя веб-сайтах электронной коммерции. Функция блока выравнивания нагрузки заключается в распределении «нагрузки» — входящих запросов HTTP и HTTPS — между участниками пула компьютеров с программным обеспечением веб-сервера. (Как мы говорили в главе 5, выравнивание нагрузки соответствует тактике «внедрения физического параллелизма»). Блок выравнивания нагрузки может перенаправить запрос на другой компьютер самостоятельно (и прозрачно) или отослать веб-клиенту ответ с соответствующей инструкцией. Несмотря на то что перенаправление проходит незаметно для конечного пользователя, фактически оно приводит к дополнительному круговому обращению. При выборе компьютера для перенаправления трафика блок выравнивания нагрузки основывается на алгоритме кругового обслуживания или на знании вычислительных и нагрузочных характеристик подключенных компьютеров. Поскольку исполняемая блоком выравнивания нагрузки роль посредника распространяется на пул компьютеров, введение в этот пул дополнительных машин не требует модификации внешних интерфейсов. Таким образом, блок выравнивания нагрузки обеспечивает масштабируемость производительности — точнее говоря, гот тип этой характеристики, который называют горизонтальным масштабированием (он подразумевает введение дополнительных экземпляров данного ресурса). Кроме того, блок выравнивания нагрузки способен отслеживать живучесть подключенных к нему компьютеров. Если один из них выходит из строя, его трафик передается другим участникам пула. Таким способом гарантируется готовность. Веб-серверы ради производительности Наконец, запрос HTTP или HTTPS прибывает иа веб-сервер. Старые веб-серверы (один из таких изображается на рис. 13.5) в основном были однопоточными. Современные версии веб-серверов отличаются многопоточностью и применением пулов потоков, распределяемых для обработки входящих запросов. Располагая пулом с потоками, готовыми для обслуживания новых входящих запросов, многопоточный сервер снижает вероятность образования узких мест (а следовательно, и задержек) при обработке многочисленных «долгоиграющих» запросов HTTP или HTTPS (к таковым относятся операции проверки достоверности данных кредитных карт). Таким образом реализуется тактика «введение параллелизма». Вертикальное масштабирование (введение более мощных экземпляров ресурса) достигается за счет замены существующих серверов более производительными машинами, способными параллельно запускать большее количество потоков. Завершив анализ запроса, веб-сервер отправляет его серверу приложений. Тот обычно отвечает с помощью служб базы данных. В главе 16 мы разберем систему корпоративных JavaBeans (Enterprise Java- Beans) — современную методику реализации веб-серверов. Серверы приложений ради модифицируемости, производительности и масштабируемости От веб-сервера запрос переходит к серверу приложений. «Сервер приложений» — это широкий (и, согласно распространенному мнению, не совсем ясный) термин, который обозначает класс приложений, действующих «посередине» я-звенной архитектуры. Речь идет о бизнес-правилах и бизнес-приложениях. Такие серверы реализуют бизнес-логику и возможность соединения, которые регламентируют взаимодействие серверов с клиентами. Тенденция к введению серверов приложений позволила разгрузить традиционные «жирные» клиенты и передать часть их функциональности среднему звену. Кроме того, они фокусируют базы данных на хранение, поиск и анализ данных, снимая с них обязанность по контролю над дальнейшим использованием этих данных. Простые серверы приложений, как правило, состоят из интегрированной среды разработки (integrated development environment, IDE) и сервера исполнения. Среды IDE поддерживают программные модели наподобие СОМ (а в последнее время —.NET), CORBA или J2EE (последняя рассматривается в главе 16). Помимо этого, многие серверы приложений предусматривают наборы общеупотребительных служб для оперативного создания бизнес-приложений и приложений электронной коммерции — в частности, предназначенных для выписывания счетов, управления запасами, документооборотом и взаимодействием с заказчика- мн. Ila более высоком уровне (в категориях стоимости, сложности и функциональности) стоят приложения обработки и отслеживания транзакций. Блоки отслеживания и процессоры транзакций взаимодействуют с базами данных и координируют такие задачи, как распределенные транзакции (в том числе объединение данных из нескольких источников), организация очередей, поддержание целостности транзакции и выравнивание рабочей нагрузки (в этом они схожи с упомянутыми выше блоками выравнивания нагрузки). Базы данных ради производительности, масштабируемости и готовности В конце концов запрос на обслуживание достигает базы данных, где преобразуется в команду добавления, модификации или поиска информации. Варианты архитектуры современных баз данных во многом повторяют атрибуты качества представленной на рис. 13.7 системы электронной коммерции. Во многих случаях для реализации производительности, масштабируемости и высокой готовности в них вводится внутренняя репликация. Кэширование также способствует повышению производительности. 13.5. Реализация задач по качеству Взятые вместе, вышеописанные элементы позволяют реализовывать в веб-систе- мах электронной коммерции самые жесткие задачи по безопасности, высокой готовности, модифицируемости, масштабируемости и высокой производительности. Как это происходит, показано в табл. 13.3.
13.6. Архитектурно-экономический цикл сегодня Если проанализировать текущее состояние Всемирной паутины по прошествии нескольких итераций архитектурно-экономического цикла, п глаза бросится целый ряд явлений. ♦ Организации, формирующие техническую базу, подразделяются на несколько типов. Согласно наиболее общей классификации, их можно разделить на поставщиков услуг и контент-провайдеров. Поставщики услуг производят программные продукты, обеспечивающие функционирование Всемирной паутины: браузеры, серверы, базы данных, серверы приложений, технологии защиты (в частности, брандмауэры), серверы транзакций, сети и маршрутизаторы. Контент-провайдеры создают информацию, которая размещается в Сети. В обеих областях наблюдается жестокая конкуренция. ♦ Помимо W3C, значительное влияние на эволюцию Всемирной паутины оказывает ряд проектов с открытым кодом — в частности, проект Apache. ♦ CERN никоим образом не участвует в развитии WWW. ♦ Языки с поддержкой веб-технологий (в особенности это касается Java) вносят свои коррективы в способы разработки и доставки функциональности в этой среде. (Пример конструирования веб-приложений с помощью Enterprise JavaBeans описывается в главе 18.) ♦ Превращение Всемирной паутины в распределенную среду разработки привело к появлению ряда новых организаций и продуктов. К примеру, UDDI (Universal Description, Discovery and Integration, универсальная система предметного описания и интеграции) организует распределенные регистры веб-служб. Эти службы используются в качества стандартных блоков распределенных веб-приложений. На рис. 13.8 изображен архитектурно-экономический цикл Всемирной паутины в ее современном виде. В роли заказчиков выступают производители программных серверов и браузеров, а также поставщики услуг и контент-провайдеры. Конечные пользователи — это население планеты. Роль архитектора разделена между W3C и другими консорциумами (в частности, UDDI и Apache), с одной стороны, и несколькими влиятельными компаниями (Sun, Microsoft и AOL/Netscape) — с другой. По всем остальным показателям ABC практически не претерпел изменений — за исключением, пожалуй, того, что техническая база теперь включает саму Всемирную паутину, а следовательно, перечень атрибутов качества дополняется требованием о прямой совместимости. Возвратный цикл ABC мы разобрали в разделе 1.1. Существование системы создает для компании-разработчика и ее заказчиков новые коммерческие возможности. В случае со Всемирной паутиной разработавшая ее компания — CERN — решила дистанцироваться от этого продукта и сосредоточиться на исследованиях в области ядерной физики; из-за этого коммерческими возможностями, созданными возвратным циклом ABC, воспользовались другие организации.
13.7. Заключение Своим успехом Всемирная паутина обязана способу реализации в ее архитектурных структурах желаемых атрибутов качества, а также преобразованиям этих структур в ответ на появление новых требований. Ее лавинообразное развитие свидетельствует о том, что всего за несколько лет архитектурно-экономический цикл был пройден неоднократно, создавая с каждой итерацией новые коммерческие возможности, требования и технические задачи. О ТОМ, КАК ВСЕМИРНАЯ ПАУТИНА ИЗМЕНИЛА ДЕЛОВОЙ МИР:------------------------------------------------------------------------------------------- AMAZON.COM К моменту открытия в 1995 году своего виртуального представительства Amazon.com, продававший более 1 миллиона изданий, по своему масштабу был уже на порядок крупнее среднестатистических книжных магазинов. От традиционных магазинов он отличался и по многим другим показателям. Причиной столь разительных отличий оказалась электронная ориентация Amazon — реализация задач и предложение продуктов через Сеть. Будучи электронным магазином, Amazon изменил мир (по крайней мере, деловой). В частности, не затрачивая средства на издательскую деятельность, он смог себе позволить торговать книгами от независимых авторов и мелких издательств. Он изменил сам механизм покупки книг, чему поспособствовали издававшиеся в Сети отзывы читателей, обзоры, служба личных рекомендаций, доставляемые по электронной почте извещения о выходе новых книг любимых получателями авторов и т. д. Наконец, поскольку Amazon делегировал большинство операций сторонним организациям, а следовательно, избавился от значительной доли издержек, характерных для традиционной розничной книготорговли, магазин смог удержать цены на низком уровне.
Дата добавления: 2015-04-25; Просмотров: 468; Нарушение авторских прав?; Мы поможем в написании вашей работы! Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет |