2024-10-06
한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina
文/observer.com コラムニスト fu jiewen 高速 emu 運用保守エンジニア
国慶節の休暇中に、12306 のチケットを手に入れましたか?
「高速鉄道の切符を買うのはとても難しい」「切符が発券されるのになぜ待たなければならないのか」などの苦情は休暇中によく聞かれるが、中国鉄道顧客サービスセンター12306のホームはそれ以来、いつの間にか消えている。 2011 年 6 月 12 日にオンラインになりました。13 年が経ち、高速鉄道を利用するほとんどの乗客にとって、チケット購入プラットフォームとして好まれています。
12306 の開発の歴史を振り返ると、それはチケット獲得ソフトウェアとの知恵と勇気の戦いを伴う「大作」であると言えます。
2024 年の建国記念日、鉄道は乗客数のピークを迎える icphoto
すべては12306が設立されたときから始まらなければなりません。 2011 年 6 月 12 日に最初の北京-天津間の都市間鉄道 e チケットが販売され、中国は鉄道ネットワークでのチケット販売を正式に開始しました。わずか数か月で、オンライン チケット販売の範囲は北京まで急速に拡大しました。上海、武漢、広州、鄭西などの高速鉄道。 9 月 30 日の時点で、全国の高速鉄道の切符 (先頭に g と d が付く) は 12306 で購入できます。 2011 年末までに、全国の鉄道チケット (先頭に z、t、k が付く) が 12306 で購入できるようになります。わずか半年で、中国の鉄道網でのチケット購入は「ゼロから」から「全面的な普及」へと飛躍しました!
しかし、鉄道網でチケットを購入するという斬新さは色あせておらず、2012年の春節交通は静かに到来しており、世界でも珍しい大規模な移民イベントである春節交通は、毎年中国の交通業界に前例のない圧力をもたらしている。運送業界における“大きな試練”ともいえる。そして、12306 年の最初のシステムクラッシュは誰もが予想を超えたものでした。
12306 の web サイトは、2012 年 1 月 5 日から 5 日連続で 10 億アクセスを超え、1 月 9 日にはアクセス数が 14 億を超えました。 1 - 2011 年末時点で、中国のインターネット ユーザーはわずか 5 億人だったことをご存知でしょう。
このようなアクセス圧力は、プラットフォームの建設当初には考慮されていませんでした。 12306 システムの構築の開始時に、開発者は、旅客チケットのコア システム アーキテクチャとインターネット アプリケーションの特性に基づいて、キャッシング サービス、ユーザー管理、チケット クエリ、システム用の比較的独立したシステムをいくつか設計しました。注文および電子チケット処理のビジネス パーティション、および 3 つのレベルのネットワーク セキュリティ ドメイン、つまり外部ネットワーク、内部ネットワーク、発券ネットワークです。オンライン化前のストレステストでは、ユーザーのログイン、チケットの照会、注文と支払いなどの業務が行われます。システムの最大トランザクション処理能力は、チケット販売のピーク時間である 10 時間に基づいて計算されます。デザイン能力は 120 万チケットに達する可能性があります。
しかし、ストレステストでは、チケット取得ソフトウェアである「招かれざる客」を見逃した。チケット取得ソフトウェアは、マシンの迅速な応答を利用して、ユーザーがページを継続的にクエリして更新するアクションを完了できるようにするブラウザ ベースのプラグインです。これは、列車の残りのチケットを高頻度でクエリし、個人情報を自動的に入力します。複数のアカウントを同時に操作し、手動でチケットを購入するユーザーよりも早くチケット購入プロセスを完了します。
プラットフォーム上で「チケットがない」という事態に苦しむ乗客は、すべての安全を確保するために、お金を出してチケット取得ソフトウェアに助けを求めるしかありません。
チケット取得ソフトウェアによって引き起こされる膨大なトラフィックを十分に見積もっていなかったために、12306 は多数のチケット取得ソフトウェアに対して脆弱でした。12306 の web サイトは麻痺し、多数のユーザーがログインできなくなり、ページの更新時間が 30 分もかかりました。チケットの代金を支払いましたが、チケットを購入できませんでした。多くのチケット購入者は、12306 ウェブサイトを「名ばかり」となす術なく非難した。
しかし、後戻りはできず、12306 チケット発行チームは戦うしかありませんでした。帯域幅不足の問題に対応して、12306 チケット発行チームは即座に決断し、すぐに帯域幅を 600m ビットから 1000m ビット、さらに 1500m ビットに増加しました。データを監視および分析した結果、非常に少数のユーザーがオンラインで大量のチケットを購入し、1 日に購入されたチケットの総数が 100 枚を超えていることが判明しました。公平なチケット購入を保証するために、12306 チケット発行チームは 1 月 5 日から、ユーザーが正常にチケットを購入した後、システムによってユーザーが強制的にログアウトされ、再度ログインする必要があるように変更しました。チケットを再度購入するとき。
旧鉄道省も「海外援助」の誘致を考えていたが、当時のウェブサイトの中で「短期間にアクセス数が大幅に増えても崩壊しなかった」経験が豊富だったのは天猫と淘宝(タオバオ)だけだった。 「ダブルイレブン」の時期に全盛でした。そのため、アリババ グループは 17 人の技術エリートを派遣してプロジェクト チームを結成し、12306 ウェブサイトの最適化と改善を支援しました。 2 つのチームは協力して、12306 web サイトのユーザー エクスペリエンスを大幅に向上させました。このシステムの一日あたりのチケット販売数は、1月初旬の65万枚から100万枚以上に増加し、1月20日には一日あたりのチケット販売数119万2000枚という記録を樹立した。
天猫淘宝モールの「ダブル 11 グローバル ショッピング カーニバル」広告が上海徐家匯駅を独占し、ユーザーの人気と交通量を競う ic 写真
春節旅行の「極端なテスト」が開始されてから1年も経たないうちに、12306のアーキテクチャに関する議論や論争がインターネット上にも現れ、当時の鉄道省はすべての関係者の意見に注意深く耳を傾けました。問題の原因を慎重に整理し、要点をまとめました。これは、チケット照会および注文/電子チケット業務パーティションの処理能力が不十分であり、ピーク時に同時にアクセス要求が集中した場合に応答時間が長くなることが原因です。各ビジネス パーティションが十分に分離されていないため、システムの内部から外部への「雪崩」効果が発生し、web サイトの混雑が発生し、ユーザーのチケット購入エクスペリエンスに影響を及ぼします。
上記の問題と理由に対応して、開発者は、チケット照会とトランザクション処理の応答速度の向上、バックエンド システムのスケーラビリティの向上、オンライン キューイング方法の変更、および発生する帯域幅の圧迫を軽減するためのアーキテクチャの最適化と再構築のアイデアに焦点を当てました。ピーク時間帯の集中チケットリリースによる。同時に、ビジネスリンク間の強い相関関係を減らすために、コアビジネスをできる限り分離します。具体的な内容は次のとおりです。
まず、同時クエリ機能を大幅に向上させる必要があります。12306 では、従来のデータベースの代わりにインメモリ コンピューティング データベースを使用し、チケット クエリの応答速度を 1,000 回/秒未満から 20,000 回/秒以上に向上させます。応答時間が当初の 1 秒から 10 ミリ秒に短縮され、ユーザーは列車番号や残りのチケットをすぐに取得できるようになります。
次に、ユーザーが混雑することなくキューに並んで注文できるようにするために、12306 は 100,000 注文/秒を超えるトランザクション処理キュー システムを構築し、ユーザーは迅速に注文を完了できます。チケット販売のピーク時は、システムが順番に処理するのを待ちます。待機処理中に、キューの状況(処理の待ち時間)を確認できます。インメモリ コンピューティング データベースは、キュー システムでも使用されます。
第三に、注文/電子チケットはノード、データベース、テーブルに変換され、元の 1 つのノード、1 つのデータベース、1 つのテーブルが 3 つのノード、30 のデータベース、30 のテーブルに分割されました。オンライン関連の操作はさまざまなノードに分散されます。データベース テーブルを使用すると、web サイトでのユーザーのチケット予約リクエストに迅速に応答して処理できるようになります。
最後に、チケット予約とチケット収集の業務分離が実行され、異なるビジネス ノード (チケット販売ノードとチケット収集ノード) がオンライン チケット販売とオフライン チケット収集サービスを実行します。注文/電子チケットの読み取りと書き込みの分離が行われます。チケットの生成とクエリは、インメモリ コンピューティング データベースを使用して注文/電子チケットを一元的に保存することで実行され、注文クエリの応答速度が約 200 回/秒から 5,000 回/秒以上に向上し、大幅に向上しました。注文/電子チケットのクエリ効率。
オンライン化前のストレステストでは、アーキテクチャを最適化した後のシステムは、1日あたり500万枚のチケット販売量のビジネスニーズに対応できる最大トランザクション容量300チケット/秒を達成した。 2013 年の春節期間中、最適化された 12306 ウェブサイトの 1 日あたりの最高チケット販売数は 364 万枚に達し、チケット総販売数の 40% を占めました。チケット販売数は 2012 年の春節のピーク (119 万枚) の 3 倍以上でした。 )。
2013年2月14日、安徽省の淮北駅で帰りを待つ親子たち。 ic写真
ただし、12306 プラットフォームの需要は依然として急速に増大しており、当初の改良はすぐに限界に達しつつあります。 2013 年の国慶節のゴールデン ウィークには、12,306 枚のインターネット チケット販売が 460 万枚に達しましたが、これは 3g ネットワークの制限により、再びシステム処理の上限に近づきました (4g ネットワークは初年度でしたが、まだ普及していませんでした)。インターネット ユーザー数の急速な増加により、ピーク時に外部ネットワークの入り口がブロックされ、帯域幅が不足し、インターネット チケット販売のさらなる増加のニーズを満たすことができなくなりました。さらに、鉄道切符販売の主要チャネルであるインターネット発券システムの単一センター運用モデルでは、ビジネスのセキュリティと信頼性のニーズを満たすことができなくなりました。
この目的を達成するために、2013 年末から 12306 web サイトの構造最適化の第 2 ラウンドが開始されました。
ユーザーログインや頻繁に使用する連絡先問い合わせなどのサービスをメモリデータベースに移行し、関連サービスの処理性能と信頼性を向上します。
鉄道科学アカデミーの第 2 生産センターは、中国国鉄グループ有限公司の既存の第 1 生産センターとの「ダブルアクティブ」を実現し、ウェブサイトのセキュリティと信頼性を向上させ、web サイトの処理能力を統合するために建設されました。注文/電子チケットクラスターが1倍に増加しました。注文/電子チケット クラスターは、10 グループのノード、100 のライブラリ、および 100 のテーブルに拡張されました。
チケット照会サービスをパブリック クラウドに展開すると、チケット照会トラフィックをいつでもパブリック クラウドに転送して、チケット販売のピーク時の web サイトの処理リソースと帯域幅への負担を軽減できます。
オンライン化前のストレス テストでは、システムが 1 日あたり 1,000 万枚の設計されたチケット販売能力を満たせることが確認されました。2015 年の春節旅行のピーク時には、実際のチケット販売速度は 1 秒あたり 1,000 枚 (約 360 万枚) を超えました。 1時間あたり)。 2015 年の春節期間中、パブリック クラウドはクエリ リクエストの最大 75% を迂回させ、web サイトの外部チケット クエリ サービスの容量は 3 倍に増加しました。 12306 web サイトは、2015 年の春節旅行のピーク時期に 180 億件以上のチケット照会サービスを処理し、平均応答速度は 30 万回/秒以上でした。
12306 の春節旅行の「極度のプレッシャー」に対する耐荷重が 2 倍になったため、かつては設計チームと運用チームの頭痛の種であった「切符を掴むプラグイン」が、不安定性の最大の要因となっています。 12306 チームは、チケット購入時にチケット取得ソフトウェアを使用することに繰り返し抗議してきましたが、インターネット上には依然としてチケット情報を自動かつ頻繁に更新し、チケットを取得するためのレポートを自動的に入力する小さなソフトウェアが無数に存在します。このタイプのソフトウェアは、チケット情報を迅速に更新することでチケット取得の成功率を向上させ、ユーザーができるだけ早くチケットを取得できるようにすることを目的としています。これは市場の需要を満たしていますが、手動でチケットを購入する一般の人々の妨げにもなり、チケット購入の公平性に影響を及ぼします。また、成功率を高めるために、ユーザーは事前に乗客の個人情報をシステムに入力する必要があることがよくあります。 「チケットを掴む」不安の中、自ら個人情報を漏らしてしまった。
このような背景から、12306 チームは的を絞った変更も行う必要があります。システムのピーク処理能力を継続的に最適化することに加えて、実名システム、複雑な認証コード、携帯電話認証コード、その他の機能も導入しましたが、依然としてチケットの発生を抑制することはできません。ソフトウェアの入手が横行しているため、春節と国慶節のゴールデンウイーク期間中にネットワークチケットの購入がうまくいかないという現象が発生しています。
2019年の春節まで、12306は順番待ちチケット購入サービス機能を試験的に運用した。この機能は、手動のユーザー注文とチケット取得ソフトウェアのユーザー注文を同じ「賞金プール」に入れて、誰もが公平に競争できるようにするもので、システムは次のチケット購入プロセスを完了する「勝者」をランダムに選択します。このように、画面がどんなに速く更新されても、チケット取得ソフトウェアには何のメリットもありません。これにより、チケット取得ソフトウェアの人気は徐々に抑制されていきます。
格言にあるように、「魔法は道よりも高い。」スタンバイ チケット モデルは、チケット取得ソフトウェアに対して大きな打撃となります。しかし、チケット取得ソフトウェアは間違いなく不当な行為を続けるでしょう。待機中のチケット賞金プールでのチケット取得ソフトウェア注文の「当選確率」を高めるなど、このモデルを再度ターゲットにします。私たちの 12306 チームは困難を乗り越え、世界最大の訪問数と取引数を誇る発券システムを維持できると信じています。両者の知恵と勇気の戦いは、発展を続ける中国の鉄道網と住民のニーズとともに、今も進化しています。旅行のニーズ。