週刊アスキー

  • Facebookアイコン
  • Twitterアイコン
  • RSSフィード

用途にあわせてサービスをつなげる「ハイブリッド接続」のメリット

豪雨レーダーのヘビーな処理を支えるさくらの専用サーバ

2018年05月29日 07時00分更新

文● 大谷イビサ/TECH.ASCII.jp
提供: さくらインターネット

専用サーバは時代ごとにアドバンテージがあった

 続いてハイブリッド接続のユーザー事例が披露。登壇したのは、「未来の予定を晴れにする」を社是にする天気情報専門メディア「tenki.jp」を運営しているALiNKインターネットCTOの松本修士氏だ。

ALiNKインターネットCTO 松本修士氏

 松本氏は2003年に「Yahoo!天気」を立ち上げて以来、ずっと天気・防災情報の提供に関わってきたといういわば「気象エンジニア」。松本氏は、「世の中、RubyやPython流行だが、ほぼほぼPerlで書いてきた。OSに関してはFreeBSDでハウツーを学んできたが、時代の流れで最近はCentOSを使うようになっている」と技術的なバックグラウンドを説明した。

 そんな松本氏は、tenki.jp以前から個人でさくらのサービスを利用してきたという。2001年当時は「さくらのレンタルサーバ+専用サーバ」だったが、現在も「さくらのクラウド+専用サーバ」という状態で、専用サーバとのつきあいは、すでに18年に及んでいるという。「2001年当時でもレンタルサーバーの業者はあったが、ベンチマークをとると、明らかにコスト対比がいい。競合はあったが、その時代ごとにアドバンテージがあったさくらさんを選び続けている」(松本氏)。

時代にあわせてさまざまなサービスを使ってきた松本さん

 専用サーバにとどまらず、松本氏もさまざまなさくらのサービスを利用してきた。「月5000円でグローバルアドレスが持てる」というSempronの専用サーバーを皮切りに、データセンター(ハウジング)、VPS、メールボックス、ドメイン取得などさまざまなサービスを利用した経験があるという。

tenki.jpが語るクラウドと専用サーバの賢い使い分け

 tenki.jpでもさくらのサービスはフル活用している。専用サーバ、さくらのクラウド、ウェブアクセラレーター、コンテンツ配信サーバを使っている。具体的には東京リージョンではクラウドでWebサーバーやAPIサーバーを運用、石狩リージョンではクラウドでバックエンドのCMSサーバー、専用サーバーでバッチ処理・DBを運営。東京と石狩の両リージョンをハイブリッド接続で連携させているという。「確かに東京と石狩間では遅延はあるが、同一リージョンであれば遅延はない。CMSに登録したデータはほぼ遅延なく、同じ石狩のDBに登録することができる」(松本氏)。

石狩と東京で異なるサービスを運用し、ハイブリッド接続している

 また、バッチ処理を専用サーバーで行なっている理由は、CPUやディスクI/Oの要求がかなり高性能だったからだ。松本氏は、「100枚~1000枚レベルで天気図を縮小処理させるベンチマークで試したところ、専用サーバの方が2倍くらい高速だった。自分たちの実行環境では、VPSのベアメタルサーバーよりも高い。コストパフォーマンスから考えたら、どう考えても専用サーバの方がよい」と語る。また、気象情報の取得など1日でバッチを動かすルーティンワークがはっきりしており、トラフィックも乱高下しないのでクラウドである必要がなかったという。

 一方、Webサーバーでクラウドを採用している背景は、台風や大雨時のトラフィック増に備えて、リソースが増やしやすいということ。「さくらのクラウドの場合、稼働中のサーバーをコピーする機能があり、仮想マシンのスナップショットを用意しておく必要がない。他社クラウドに比べてもアドバンテージがある」(松本氏)。また、料金がWebサイトで公開されていて、明朗会計だったのも選定の理由。「よく見てみると、8コアのマシンなど、東京リージョンのコスパがいい。

マルチコアのサーバーで800万枚の画像処理、トラフィック増に耐える

 松本氏は、専用サーバに特化した使い方としてtenki.jpの「豪雨レーダー」を紹介した。豪雨レーダーは地図に降雨の範囲をリアルタイムにマッピングするサービス。具体的にはシベリアからグアム周辺まで含めた広大な地図に250m範囲のグリッドを敷き詰め、これを5分に1回の頻度で更新しているという。更新時に出力される地図のレイヤーパーツはなんと800万枚以上で、台風の接近でトラフィックも一気に1000倍に跳ね上がるという。

250m範囲のグリッドを敷き詰め、降雨の様子をマッピングする「豪雨レーダー」

 こうした高負荷な処理を実現するため、まずはさくらの専用サーバで28コア、56スレッドというハイスペックのサーバーを用意した。また、C言語+OpenMPのライブラリを使うことで、プログラムの並列処理化を実現。さらに膨大な数の画像をシェアードメモリに書き出し、I/Oの高速化が可能になった。そして、トラフィックに関しては、さくらのウェブアクセラレーターを採用。「去年は台風も大きかったので、トラフィックも瞬間的には8000倍くらいまで行ったんですが、さくらのウェブアクセラレーターでなんとかしのぐことができた」と松本氏は語る。

 なお、ALiNKインターネットでは日本気象協会から提供されるバイナリデータを解析するシステム、コンテンツジェネレーター、画像描画システム、APIやCMSサーバーもすべてPerlで記述しており、Plack/PSGIなどのフレームワークを組み合わせているという。「東日本大震災のあった2011年以降、高まる気象情報や防災のニーズに対応すべく、35歳以上のプログラマーが日々ガリガリコードを書いています。ToDo山盛りなので、ぜひお越しください!」とコメントして、講演を締めた。はてなの事例やエンジニア座談会が行なわれた後半もレポートする。

(提供:さくらインターネット)

この記事をシェアしよう

週刊アスキーの最新情報を購読しよう