|
|
Опубликовано 25.12.2014 16:18:52
|
|
|
|

Предыстория и потребности
Веб-сайт Центра обслуживания клиентов Китайской железной дороги (www.1230**) — одна из крупнейших в мире систем торговли в реальном времени, сопоставимая с Amazon.com, и сайт испытывает большое давление в праздничные дни, особенно во время Весеннего фестиваля. Согласно статистике, во время пика Весеннего фестиваля в начале 2012 года ежедневно сайт посещали 20 миллионов человек, максимум — 1,4 миллиарда ежедневных посещений. Большое количество одновременных доступов к сети привело к почти параличу 12306. Институт электронных вычислительных технологий Китайской академии железнодорожных наук, как подрядчик системы интернет-билетов 12306, срочно нуждается в решении этой проблемы.
Успешное разрешение: более чем в 75 раз быстрее
С марта 2012 года Железнодорожная корпорация (ранее Министерство железных дорог) начала расследование и реконструкцию 12306. В июне 2012 года была выбрана распределённая встроенная вычислительная платформа Pivotal GemFire (распределённые вычисления в памяти) для преобразования 12306, которую предоставили Ван Минчжэ, руководитель проектной группы Академии железных наук, и компания IISI Information Technology Co., Ltd. под руководством Чжу Цзяньшэна, директора Академии железнодорожных наук.Первый этап сначала преобразит основное узкое место 12306 — оставшуюся систему запросов к билетам。 В сентябре трансформация кода была завершена, и система была запущена. В Национальный день 2012 года, в пиковый период онлайн-бронирования, можно войти в номер 12306, хотя бронировать билеты всё ещё сложно, но остальные билеты продаются очень быстро. В октябре 2012 года,Второй этап — трансформация системы запроса заказов с помощью GemFire (клиенты сами запрашивают свои записи заказов)。 Во время Весеннего фестиваля 2013 года это пик онлайн-бронирования, и вы заметите, что можете войти в 12306, хотя билеты всё ещё сложно, но запрос оставшихся билетов очень быстрый, а запрос по вашему собственному бронированию и заказу тоже очень быстрый.
Согласно записи данных о работе системы, после технической трансформации,Используя всего 10 серверов X86, оставшиеся возможности расчета и запросов десятков малых компьютеров были реализованы, а максимальное время одного запроса сократилось с примерно 15 секунд до менее чем 0,2 секунды, что было сокращено более чем на 75 раз。 В случае чрезвычайно высокой совместности движения во время Весеннего фестиваля 2012 года система была практически парализована. После трансформации,Он поддерживает десятки тысяч одновременных запросов в секунду, достигая пропускной способности 26 000 запросов в секунду в периоды пик, эффективность всей системы значительно повышается. Как показано на изображении выше.
В режиме работы системы до трансформации система запросов порядка может поддерживать пропускную способность только 300–400 запросов в секунду, а одновременные запросы с высоким трафиком реализуются только через разделение базы данных. После преобразования пропускная способность может достигать десятков тысяч запросов в секунду, а скорость запроса гарантированно составляет около 20 миллисекунд.
Новая технологическая архитектура может:Динамическое масштабирование эластичности по требованиюКогда количество параллелизма увеличивается, вы также можете динамически увеличивать X86-сервер, чтобы поддерживать время отклика в миллисекунду.
В поисках во сне: технологическая революция охватывает три поколения в одном шаге
12306 способен добиваться таких потрясающих эффектов, что невозможно полагаться на мелкие технические ремонты, и должна появиться новая идея, которая поможет повысить эффективность. 12306 обнаружил, что распределённая платформа данных GemFire — одна из таких технологий.
Техническое обоснование распределённой платформы данных GemFire в памятиКак показано на рисунке выше: благодаря технологии виртуализации облачной платформы память нескольких серверов X86 централизована для формирования пула ресурсов памяти до десятков терабайт, и все данные загружаются в память для внутреннего вычисления. Сам процесс вычислений не требует чтения и записи на диск, а лишь периодически записывает данные на диск синхронно или асинхронно. GemFire хранит несколько копий данных в распределённом кластере, и если какая-либо машина выходит из строя, резервные копии есть на других, так что обычно нет необходимости беспокоиться о потере данных, и данные с диска используются как резервные копии. GemFire поддерживает сохранение данных в памяти в различных традиционных реляционных базах данных, библиотеках Hadoop и других файловых системах.
Как всем известно, узким местом современной вычислительной архитектуры является хранение данных, скорость процессора удваивается согласно закону Мура, а скорость хранения на диске растёт очень медленно, что приводит к огромному разрыву до 100 000 раз (как показано на рисунке выше). Это облегчает понимание, почему GemFire может значительно повысить производительность системы.
В соответствии с взаимосвязью между вычислениями и хранением данных, архитектуру вычислений можно разделить на четыре поколения:
Первое поколение — система на основе одного диска: Данные нужно читать с диска во время вычислений. Малые компьютеры и мэйнфреймы — лидеры, обеспечивая максимальную производительность одной системы.
Второе поколение — распределённая кластерная система на основе дисков: В процессе расчёта данные должны читаться с диска, но данные распределяются между разными серверными дисками через систему распределения для повышения вычислительной мощности всей системы. В настоящее время многие крупные интернет- и компании электронной коммерции используют распределённые кластерные системы на базе серверов X86, полагаясь на массовое развертывание серверов X86 для решения проблемы высокой параллельности трафика.
Третье поколение — система на основе одной памяти: Помещает всю базу данных в память, и процесс расчёта не требует чтения данных с диска. Производительность всей системы зависит от производительности одной системы. Традиционные базы данных в памяти — это такие системы, которые могут хорошо решить проблему скорости доступа для корпоративных приложений, но не могут решить проблему масштабируемости огромных данных или массового одновременного доступа.
Четвёртое поколение — это распределённая кластерная система на основе памяти: GemFire — это такая система, параллельные вычисления — одна из ключевых технологий, поэтому она может линейно масштабировать производительность на основе вычислений в памяти, увеличивая масштаб развертывания серверов.
12306 ранее использовал архитектуру миникомпьютеров Unix и использовал технологию GemFire для преобразования в архитектуру серверного кластера Linux/X86, что означает, что она охватывает три поколения. От небольших компьютеров до кластеров серверов X86 с большой памятью — производительность не только значительно повышает производительность, но и стоит значительно ниже.
GemFire является частью корпоративной платформы PaaS для больших данных от Pivotal. Корпоративная платформа PaaS для больших данных от Pivotal имеет три основных уровня: облачная ткань, слой инфраструктуры больших данных и прикладная структура. GemFire относится к уровню инфраструктуры больших данных, а база данных Greenplum также относится к этому уровню; Технология слоя облачной инфраструктуры — Cloud Foundry; Технологии для уровня инфраструктуры разработки приложений включают Spring Framework и RabbitMQ, а также другие.
По вопросам трансформации внедрения технологии GemFire заместитель директора Института электронных вычислительных технологий Китайской академии железнодорожных наук Чжу Цзяньшэн сказал: «Благодаря технологической трансформации мы решили проблему высокого совместимости трафика, которая давно нас мучила, чтобы население всей страны больше не жаловалось по техническим причинам, и мы наконец почувствовали облегчение.» Технология распределённых кластеров в памяти GemFire сыграла ключевую роль во всей трансформации технологий. В то же время, благодаря усилиям Pivotal и её проектной команды по обеспечению бесперебойной работы старой системы и плавного перехода от старой системы к новой в процессе технической разработки и трансформации, новая система была быстро запущена. ”
|
Предыдущий:12306 Было утекло большое количество паролей пользователей, а адрес для загрузки базы данных 12306 был утеченСледующий:Большое количество пользовательских данных 12306 стало вирусным в Интернете, включая номера аккаунтов, открытые пароли, удостоверения личности, электронную почту и т.д.
|