ガジェット通信 GetNews

見たことのないものを見に行こう
  • 北原里英が映画主演で後輩に見せる“道”「AKB48が夢の通過点では無くゴールになっているからこそ」
  • 野沢雅子×堀川りょう「ベジータがいるから悟空の存在がある」「ブルマとの馴れ初めの話が欲しい!」 映画『ドラゴンボール超 ブロリー』インタビュー
  • 北野武からの出演オファーに「役者やってて良かった」 『アウトレイジ 最終章』池内博之インタビュー
  • 『レディ・プレイヤー1』キャストインタビューで判明!「実際にこの映画をテーマにしたゲームが発売予定だよ」
  • 『斉木楠雄のΨ難』インタビュー 佐藤二朗「橋本環奈が高校にいたら可愛すぎて男子は正気を保てないでしょ」
  • CMのオファーが欲しい!本郷奏多の中のエンヴィー<嫉妬>炸裂!? 映画『鋼の錬金術師』撮り下ろしインタビュー
  • 『スター・ウォーズ/最後のジェダイ』でカイロ・レンはどうなっちゃうの? アダム・ドライヴァーを直撃!
  • 『ファンタビ』大切にしたのはティナがあの場面で「嫉妬心を出さないこと」キャサリン・ウォーターストン インタビュー
  • 仲良し全開のフラッシュ&サイボーグを直撃! 自分がバットマンだったらスカウトしたいキャラは?
  • 『ハン・ソロ/スター・ウォーズ・ストーリー』で大大活躍中! チューバッカさん直撃インタビュー:動画  
  • コムアイ(水曜日のカンパネラ)インタビュー「お風呂に入った猫がシュッと細くなってしまうところが情けなくて愛しい」
  • 『ブレードランナー 2049』ハリソン・フォードインタビュー「仕事は好きなんだ。役に立ちたい。チャレンジが好き」
  • 不潔で下劣な男に挑んだ阿部サダヲ「珍しく自分の写真を撮ったほど、別人になりきれた」
  • 戸次重幸が「理解出来ないほどの悪い役」に挑む実話をベースにした物語『神と人との間』
  • 『パシフィック・リム:アップライジング』監督&ジョン・ボイエガに「ぼくのかんがえたさいきょうのかいじゅう」を見てもらった!
  • 『ジュマンジ』でタフな美女戦士を熱演! カレン・ギランの好きなゲームは「メガドライブ『ソニック・ザ・ヘッジホッグ3』」

体験を伝える―『ガジェット通信』の考え方

面白いものを探しにいこう 本物を体験し体感しよう 会いたい人に会いに行こう 見たことのないものを見に行こう そしてそれをやわらかくみんなに伝えよう [→ガジェ通についてもっと詳しく] [→ガジェット通信フロアについて]
ガジェ通制作ライブ
→ガジェ通制作生放送一覧

「地味だけど、面白い!」―LINE・NTTエンジニアが語る、日本を支える大規模JVM運用の舞台裏

一般的な社内向けシステムだと、業務アプリケーションの特性上アクセスが一気に増えるとか変わるとかいうことはあまりないので、メンテナンス期間を設けて1ヶ月に1回落とすような方法も取ったりしていました。いろいろな方法がありますが、LINEさんはどういうやり方なんですか?

鶴原:メインのアプリケーションサーバはTomcatで動いていて、デプロイのためにほぼ毎日再起動はしています。過去にGCが問題になったときはタイミングを見計らってリスタートといったことも、したような記憶があります。HBaseの場合はデータストアなので難しいところはあるんですけど……。

久保田:データベースの仕組みのなかには落とせない部分がありますもんね。

鶴原:Elasticsearchとかもそうだと思うんですけど、データベースをJavaで書くっていうとやっぱりGC問題が最後に立ちはだかるんですよね。

久保田:HBaseのトラブルはどんなものがありました?

鶴原:CMS GCの頃なんですけど、HBaseが内部的にすごく大きいオブジェクトを繰り返しつくってしまって、Full GCが走って止まってしまうってことがありました。

そのときはHBaseのパラメータを調整して解決しましたが、アプリケーション側でHBaseが得意ではない形のデータを作ってしまっているなど、そもそもの原因がアプリケーション側にあるということも多かったですね。

久保田:運用を重ねていくと、どういうオブジェクトが苦手だとか傾向がだんだんわかってきますよね。アプリケーション側の開発者とのノウハウの共有はどうやっていますか?

鶴原:私たちはHBaseを運用するチームがHBaseを使うアプリケーション側の開発も担当しているので、実は同じ人が書いているんです。なのでお互いコードレビューベースで「この形は危なそう」と共有する形ですね。

久保田:それはいいですね。

社内を横断する技術共有の仕組み

久保田:メトリクス(※)の監視なんかはどういう方法でやっていますか?

※メトリクス…データを収集して管理に使えるよう計算や分析を加えた評価指標

鶴原:アプリケーションサーバ内で発生するいろいろなメトリクスは、内製のモニタリングツールを使って監視しています。例えば「毎秒このくらいメッセージが送られている」とか「このAPIが何回コールされている」とかは、ライブラリを組み込んでAPIを呼んでおけば勝手にカウントしてサーバで呼んでグラフで見れる、という風になっています。

HBaseプロセスそのものの監視もいろいろやっていて、プロセスメモリの使用量、書き込みリクエストの秒間量などの監視にPrometheusを使っています。HBase自体がJMX(Java Management Extensions)でメトリクスをエクスポートしているので、PrometheusでJMXを読みにいって集めて、Grafanaで表示するようになっています。

久保田:Prometheusといえば、LINEエンジニアの湯川さんがブログで紹介したりPrometheus Casual Talksというイベントを開催したりしていますよね。

鶴原:そうなんです。実は湯川さんにPrometheusを紹介したのは僕なんですよ(笑)社内Wikiに書いたら湯川さんが興味を持って、あっという間に広めていてすごいなーと。

久保田:インフラのプロセス監視は全てPrometheusで統一しているんですか?

鶴原:全然、全社的な統一ではないです。LINEゲームアプリのバックエンドチームや統計解析専用のチームなど、他のHBaseを使っているチームでもそれぞれ違うモニタリングシステムを持っている状態です。

久保田:HBaseを担当しているチームがいくつかあるんですね。サービス、製品ごとにチームが分かれていて、それぞれにたまたまHBaseを選択したということですか?

鶴原:そうですね。ただ現状だと共有できていなくて無駄な部分もあるので、横断的に使えるように社内クラウドのようなものを整備しています。まだ完成していないんですが、いつかみんな共通の使い方でHBase対応にしたいなーという夢を抱いてます。

チャレンジを続けるための課題

久保田:社内でHBaseを広めていく過程で、現状課題だと思っているのはどんなことですか?

鶴原:大きくいうと2つあって、1つはやはり人手が足りないという問題と、もう1つはHBaseのバージョン問題ですね。2017年のLINE DEVELOPER DAYでも発表したんですけど、まだHBaseの古いバージョンを使っている部分があって、これまでのノウハウはそちらに偏ってしまっているんですよ。

前のページ 1 2 3次のページ
CodeIQ MAGAZINEの記事一覧をみる
  • 誤字を発見した方はこちらからご連絡ください。
  • ガジェット通信編集部への情報提供はこちらから
  • 記事内の筆者見解は明示のない限りガジェット通信を代表するものではありません。
スマホゲーム タラコたたき