Fumiのブログ

「DeNA.go #1」に参加してきた!

はじめに

今回は、「DeNA.go #1」に参加してきました♪

dena.connpass.com

Youtube Liveでもライブ中継するらしい。

ハッシュタグ

#DeNAgo

twitter.com

タイムテーブル

時間 内容
19:00 - 開場
19:25 - 19:30 会場説明 @imoty
19:30 - 19:50 20分枠(1) @subc / 次世代タクシー配車サービス「MOV」における RailsからGo移行対応、ポーリングWebAPIのgRPC対応
19:50 - 20:10 20分枠(2) yu.kawaura / BAYSTARS におけるGoを用いたシステムリプレイス事例の紹介
20:10 - 20:30 20分枠(3) @dice_zu / Goを使いこなせる組織作りの取り組み
20:30 - 21:30 懇親会
21:30 - 完全撤収

始まる前に...

昨日の夜、PCを充電せずに寝てしまってバッテリが30%しかないという危機的状況だったので、
渋谷ヒカリエのB1Fにあるスタバでコーヒーを買って充電しました。
立ちテーブルだけど、まず充電できてよかった(TT)

f:id:fantm21:20190524185225p:plain

DeNaさんからお弁当が!!

DeNaでのGo活用実績

セッション

次世代タクシー配車サービス「MOV」における RailsからGo移行対応、ポーリングWebAPIのgRPC対応

登壇者

subcさんのプロフィール(主催イベント一覧) - connpass

twitter.com

github.com

スライド

speakerdeck.com

内容

登壇者について

登壇者はスクリプト言語をメインに使っていた人。Go歴は1年。

Goの利用

MOVはもともとRubyで開発していたが、Goに移行した。
Goに移行して良かったところは次の通り。

  • 圧倒的なサーバスピンアップ速度
  • メモリ効率の良さ

『どうやってRubyからGoに移行したか』は下記のtech blogに記載している

engineer.dena.jp

社内向け管理画面

以下の構成

Vue.js + Express(GAE/SE Node.js) + GAE/SE Go

テスト

テーブルテストドリブンで、 GAEのテスト高速化には以下のパッケージを使った。

github.com

APIドキュメント作成

APIドキュメントは以下のツールを使った。

github.com

結合テスト

Slackから結合テストは行った。

負荷・障害に強いシステム現実に向けてしたこと

  • exponential backoff
  • 負荷検証の敷居を低く
  • fallback実装

Go Con Fukuokaで話すぜ!

fukuoka.gocon.jp

BAYSTARS におけるGoを用いたシステムリプレイス事例の紹介

登壇者

imotyさんのプロフィール(発表イベント一覧) - connpass

twitter.com

スライド

speakerdeck.com

内容

Goを使いこなせる組織作りの取り組み

登壇者

dice_zuさんのプロフィール(発表イベント一覧) - connpass

twitter.com

スライド

speakerdeck.com

内容

swet.dena.com

dave.cheney.net