ガジェット通信 GetNews

見たことのないものを見に行こう

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

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

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

過去1年くらいを通してHBaseのアップグレードをやってきて、ようやくこれから社内に広められるかなというところです。ただHBaseはやはりMySQLほど広く使われている技術ではないので、未踏のバグもまだ結構あるんですよね。

⇒ 参考:HBASE AT LINE 2017 – LINE DEVELOPER DAY

久保田:我々も過去にはJVMのバグを結構踏みましたね。バグを修正してOSSに貢献してという。

鶴原:そうですね、基本的に見つけたバグは貢献しています。ただ私のチームは5、6人で2000台くらいのサーバを見ているので、トラブルが起きるとそれを調べるだけでかなり時間を使ってしまうんですよね。クリティカルなバグが生じることもあるので、アップグレードもバックグラウンドでロードだけかけるようなことを半年間やったりして……慎重に進めてます。

久保田:うーん、それは人が足りないなあ(笑)我々の部隊も特殊な分野なので、なかなか難しいです。JVMではあるんですけど、コアまで見ているので実はJavaはほとんど書かなくて、メインはCやC++です。そもそもやりたいという人を見つけるのが難しい分野ですね。

最近はGoogleが提唱した「SRE(Site Reliability Engineering)」という表現がすごくいいなと思っていて、内容についてもそうですがなにより一見地味だけどすごいことやってるぞ、というのがもっと伝わればいいなと思っています。

鶴原:SRE、かっこいいですよね。久保田さんは社外での発表を積極的にされていますが、やはり魅力を伝えたいというモチベーションが大きかったんでしょうか。

久保田:最初に始めたときは、知識を全社的に底上げしたいという目的でした。サンフランシスコのJavaOne 2014での発表も、HeapStatsを開発したタイミングで「せっかくだからCFP(Call For Paper)出してみよう」と出したら思いがけず通って、結構バタバタしていました。継続的にやると名前を覚えてもらって結果的に、ということはあるかもしれません。

鶴原:私たちの仕事も基本オンプレなのでホットなクラウドの話題とは少し離れてしまうところがあるんですが、ならではの面白さをもっとアピールしたいと思ってます。

久保田:オンプレならサービスに合わせてマシンをカリカリにチューニングしていくのがかなり面白そうだなと思っています。

JVMの中に手を入れて、サービスをより効率良くぶん回して、性能良くして、1つ1つのプロセスの負荷をすごく低くしてという感じで……。私もサービス運用したいなって少し思います(笑)。

鶴原:実際にちょっとした最適化でマシンが半分で済んだり、全然ある話ですよね。チャレンジできる戦場があるのは嬉しいことです。

進化を続けるJavaへの期待

鶴原:我々は一昨年くらいにJava6からJava8へ移行したんですけど、すごくいいなと思っています。私はもともとPerlのようなLL言語でサクサク作るようなタイプだったので最初にJavaを触った時は結構モッサリしているイメージを持っていたんですけど、Java8ではLambdaがエラスティックにいろんな問題を解決しつつ、Lombokとか使って堅いJavaからは脱却したのかなと。

Java10のProposalを見ても、最近のKotlinやScalaのいいところがまたJavaにも入ってきて、Javaそのものが堅牢で実用的な言語になっていくんだろうというイメージを持っています。

久保田:言語としての使いやすさはかなり良くなっていますよね。私自身はいろんな機能や便利な部分をどんどん取り込んでリリースサイクルが早くなることは歓迎です。

ただJavaを使う多くの人が求めているだろうことは「非互換性が極力ないこと」で、「変わらないこと」がいいところでもあったんですよね。NTT含め多くのSIerでは、開発より運用の期間がずっと長くなる。非互換性がないことでソースコードがそのまま使えると。

Java8や9の非互換性を調査しているんですけど、細かいところは結構変わっています。良くも悪くも、運用のコストが高くなるのは確かだと思います。基本はLTS(Long Term Support)なので、開発者としてはJavaの進化は素晴らしいと感じていますけどね。

鶴原:最近Javaそのものが良くなってきていて、Java回帰のような流れがあるのかなと思っています。コミュニティやユーザの成熟度も群を抜いて高いので、Javaが良くなってくれることは嬉しいですね。

久保田:言語としての進化が早くなりましたよね。最近はGCの種類が増えてきたので調査をしているんですけど、JVMは新しいGCが導入されるのが早い印象ですね。今後3つほど新しいGCが入ってくる予定ですし、その一つのZGCはOracleラボで研究されたいろいろな調整が取り込まれそうだなと。

HBaseも、新しいGCになったらどうなるか調査をして、GC戦略をいろいろと考えてと、面白くなりそうですね。

鶴原:そうですね。私も期待しています。

【対談者プロフィール】

LINE株式会社 LINE開発1室 鶴原 翔夢(つるはら・とむ)氏
2013年にLINEに入社後、メッセージングサービスのサーバーサイド開発者として、主にHBaseと関連するプロジェクトに多く携わる。


日本電信電話株式会社 OSSセンタ 久保田 祐史(くぼた・ゆうじ)氏
Javaの調査検証やコア解析からシステムパフォーマンスチューニングまでこなすテクニカルサポートエンジニア。OpenJDKへの貢献(OpenJDK Author, icedtea Committer)やDuke’s Choice Award 2016を獲得したJavaトラブル支援ツールHeapStats の開発にも携わっている。

●著者プロフィール

dotstudio ちゃんとく
大学までは文系で法学を学んでいたが「モノを作れる人」に憧れて知識ゼロからエンジニアに転身。本業ではPHPでWebサーバサイド開発を担う傍ら、テクニカルライターとしてdotstudioに参加している。Node.jsユーザグループ内の女性コミュニティ「Node Girls」を主催。趣味の電子工作では日本最大のIoTコミュニティ「IoTLT」で体当たり電子工作を発表中。
Twitter: @tokutoku393 / dotstudio, inc.

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