(レポート)[JAWS Festa 2016] 韓国 SW Developerの AWS使用方法 #jawsug #jawsfesta

はじめに

本レポートは2016年10月22日(土)に開催されたJAWS Festa 2016のセッション「韓国 SW Developerの AWS使用方法」のレポートです。

本セッションのスピーカーはAWSKRUGのHyunmin Kimさん。

DSCN0499

レポート

はじめに

・韓国の開発者がAWSをどう使っているか、を話す。

自己紹介

 ・キム・ヒョンミンさん。4CSoft(ポシソフト)勤務。iOS開発者。

DSCN0500

 ・4CSoftはオンライン教育システムを作る会社。
 ・ユーザーは会社、大学、政府機関など。
 ・JavaとSpring Frameworkを使っている。韓国はこの組み合わせが多い。
 ・韓国はまだまだオンプレミスが中心で、AWSはテスト段階。

なぜiOS開発者がAWSを使い始めたか。

・2014年冬に、あるモバイルアプリケーションのプロトタイピングを行った。
 ・チャットやリアルタイムポーリングなど、新しい機能を作りたかった。
 ・サーバエンジニアのサポートがなかった。
・最初からAWSを使おうとしていたわけではなく、Parseを使い始めようとしていた。
 ・ParseはREST APIでとても簡単に使えた。
 ・日本だったらKintoneを使っていたと思う。
・調べていたら、Firebaseにたどり着いた。
 ・Firebaseならチャットサービスを簡単に作れる。
・デモ画面。私はiOS開発者と自己紹介したけど、これはAndroidアプリ。
・お客様はプロトタイプをとても気に入ってくれた。
 ・しかし、バックエンドはParseやFirebaseではなく、お客様が持っているオンプレミスを使って欲しいと言われた。
 ・そこで、ParseはJava+Springに、FirebaseはNode.jsに切り替えた。
 ・韓国はMicrosoft製品を使っている人が多く、DBはMS-SQL Serverにした。
・2015年夏、アプリの大きなアップグレードがあった。
 ・あるカンファレンスのために必要だった。
 ・重要な要件として、700人以上が同時に使えるキャパシティを持つ必要があった。
 ・それをオンプレミスで実現させないといけなかった。
 ・しかしそれは難しく、AWSの東京リージョンを使い始めた。
・構成はシングルサーバ。
 ・最初はたった1つのEC2インスタンスから始めた。
 ・WindowsとスタンダードSQL Serverが使える最低のインスタンスタイプであるm4.largeを使用。
・その後マルチAZ構成に変更。
 ・ELB、Webサーバx2台、DB(MS-SQL Server)。
 ・WebサーバはEC2、DBもEC2、合計でEC2が3台。
・AWSを使ったのは開発環境のみ。
 ・本番はオンプレミス。
 ・ソウルリージョンが無かったため。企業側が東京リージョンの利用を嫌がった。
・アプリを使って、カンファレンスでリアルタイム投票を実施。
・コストを抑えるための構成変更。
 ・テスト環境はSQL ServerをStandardからExpressに。
・最新の状態。
 ・サーバをWindowsからLinuxに変更。
 ・インスタンスタイプをt2.mediumに。
 ・DBはMariaDBにマイグレーション。
 ・コストが大幅に下がった。

その後のAWSの利用

・開発したアプリケーションを他のお客様にも提供。
 ・AMIを他のAWSアカウントにコピーするだけで納品ができた。
・政府関連の仕事でAWSを利用予定。
 ・スポットインスタンスを利用。
 ・オンプミレスで動かす前に開発環境としてAWSを活用。
・会社で使っていた古いDNSサーバをRoute53に移行。
 ・コストが大幅に削減できた。

結論

・AWSを使うことで早く開発ができるようになった。
・AWSはデベロッパーにとってパワフルなツール。
・しかし、韓国ではまだまだオンプレミス志向が強い。
・ソウルリージョンが出来てから少しずつクラウド移行を考えるお客様が出てきた。
・他の開発者とコミュニケーションが取れるようになったのが非常に楽しい経験になった。

質問

・Q:ソウルリージョンとその他のリージョンの使い分けは?
 ・A:特に要望が無い限りはソウルリージョンを使っている。理由はネットワークレイテンシ。ただ、グローバル展開サービスの場合は海外リージョンも使っている。

さいごに

韓国の開発者の状況を知ることが出来て面白かったです。