先週の改札機トラブル
http://www.asahi.com/national/update/1012/TKY200710120001.html
僕が出社する時間帯にはほぼ騒ぎは収まっていたわけだけど、朝一は相当に混乱していた模様。
で、原因は改札機への不正データの定期配信のプログラムの潜在バグだったと。
改札機で電源が入らなかった話 - O-Lab +Ossan Laboratory+
すでに先週の時点でかなり詳細な原因分析が行われていた模様。
集中センターからの電源断とか、いろんな憶測が飛び交ったけど、正確には電源が入らなかったわけじゃなくて
- 改札機は起動プロセスの中でセンターからの情報を受信している
- 正常に受信完了したら改札機は「利用可能」状態となる
というシーケンスの途中で配信データをうまく扱えない状態となって「利用可能」状態に移行できなかった、ということらしい。
で、暫定対応としてデータ受信プロセスをすっとばして起動させるモードを使って復旧させた、という感じか。
驚いたというか、いまさらながら認識したこと。
- 今時分の改札機はできることが増えているけど、基本はシンプルな構造だったということ
確かに改札機の機能と言うのは見る見る肥大化している。
定期券の有効性チェックとかプリペイドのSuicaやPasmoだけであれば、カードデータ読み込み⇒有効性(日付など)チェック⇒運賃引落という流れで、日付情報や運賃表とかのマスタさえ持っていれば判断可能な割とシンプルなロジックだと思う。
が、最近のオートチャージ機能とかは、改札機が与信していることになる。クレジットカードの使用と同じことが改札機で行われている。
通常のクレジットカード使用の際は、必ずそのカード保有者に新規の与信をしても良いか、というオーソリの判断が入る。なので、カードで支払いをするときは店頭で1分くらいの時間を要したりもする。
カード会社にとって、このオーソリ機能というのは大変な負荷がかかっていて、大手カード会社とかは、この処理を迅速化させるために膨大な投資をして巨大なシステムを用意してしようとしていたりする。
改札でのオートチャージがこのオーソリ部分をどう裁いているのか長らく疑問だった。人が改札を通る1,2秒の間にオーソリセンターに問合せているとは思えなかったし、とはいえ審査不要で与信しているとも思えない。
が、今回のトラブルを見ていてなんとなくわかったが、オンラインでの照会ではなく、準オンライン的に処理しているのかもしれない。これは断片的な情報から想像した単なる仮説なんだけど、
- 毎朝センターから改札機にカード延滞などのブラックデータを受信
- 日中に追加された部分は差分のみ随時配信
というしくみ。
オンラインで照会するほどのリアルタイム性はないけど、数分とか数時間のうちにデータの同期は取れる。オートチャージの与信は小額のみなので、それでもよし、と割り切ったということだろうか。
これであれば、定期券の有効性判断と同じようなロジックでオートチャージの可否を判断できるわけで改札機のロジック自体はそれほど肥大しないでも対応できそう。
ニュースを見ると、このデータ配信というのは、定期券情報の配信機能としてずっと前からやっていたものらしいので、最近の電子マネーのオートチャージにも活用されているのかどうかは不明なので何ともいえないけど、もしそうなのであれば、かなりうまい仕組みだと思う。
オーソリ機能を数秒で完結させるために大手カード会社が数百億かけて何年もかけて新システムを作ってる傍らで、ちょっと要件を緩めることで、手軽に新サービス開始できてるんだとしたら非常に興味深い。