golang oss libraries

33
オープンソースライブラリ研究会 #3 Takuma Morikawa / eureka, inc. Copyright © 2009-2015 eureka, inc. All rights reserved.

Upload: takuma-morikawa

Post on 22-Jan-2018

1.184 views

Category:

Technology


0 download

TRANSCRIPT

Page 1: Golang oss libraries

オープンソースライブラリ研究会 #3

Takuma Morikawa / eureka, inc.

Copyright © 2009-2015 eureka, inc. All rights reserved.

Page 2: Golang oss libraries

じこしょうかい

About me

Page 3: Golang oss libraries

Copyright © 2009-2015 eureka, inc. All rights reserved.

なまえ Takuma Morikawa

しょぞく

たんとう (Go, JS, たまにインフラ)

じこしょうかい

Page 4: Golang oss libraries

エウレカについて

About eureka

Page 5: Golang oss libraries

株式会社エウレカ

専門分野以外の領域

でも活躍できる

エンジニア

45人

Sales・CS・BO

32人

事業内容自社サービスの企画・開発・運営・オンライン・デーティング・サービス「pairs」

・カップル専用アプリ「Couples」

海外拠点・唯麗家股份有限公司(台湾)・ EUREKA SG Pte. Ltd.(シンガポール)

社員数: 97名インターン・業務委託含む

D/P

12人

デザイナー

8人

Page 6: Golang oss libraries
Page 7: Golang oss libraries

オンライン・デーティング・サービス「pa i rs」

12年9月 13年3月 13年9月 14年3月 14年9月 15年3月

225万

。゚+\\330万会員突破//+.゚

リリース 2012年 10月

会員数 330万人

プラットフォーム PC/SP/iOS/Android

135万

45万

90万

190万3年で

300万人

Page 8: Golang oss libraries
Page 9: Golang oss libraries

カップル専用アプリ「Coup les」

。゚+\\320万DL突破//+.゚

リリース 2014年 5月

DL数 320万DL

プラットフォーム iOS/Android

14年5月 14年10月 15年3月

215万

170万

130万

85万

45万

国内No.1

Page 10: Golang oss libraries

Today's Talk

Page 11: Golang oss libraries

Golang oss libraries

Page 12: Golang oss libraries

今日お話すること

・有名なライブラリの紹介

Page 13: Golang oss libraries

今日お話すること

・有名なライブラリの紹介

・最近Go製のやつめっちゃある

=> 最近触ったライブラリの紹介

Page 14: Golang oss libraries

go-xorm/xorm

Page 15: Golang oss libraries

・ORM

- 主要なRDBMSに対応してる

- 早いらしい

- レポジトリが複数に分かれてて辛い

- コードは重複っぽいのが多い

=> 次はリファクタ

- lunny

go-xorm/xorm

Page 16: Golang oss libraries

evalphobia/wizard

Page 17: Golang oss libraries

・シャーディングライブラリ

- core部分は振り分けのみ

- 水平&垂直分割OK

- ↑をしつつxormをラップしてる

- 全DBへのトランザクション対応

- (同一セッション管理辛い…)

evalphobia/wizard

Page 18: Golang oss libraries

daikikohara/enotify-slack

Page 19: Golang oss libraries

・新着のイベント情報をSlackへ通知!

- atnd, connpass, doorkeeper等に対応

- 検索クエリ・NGワードの指定可能

- boltdb/bolt を使用してる

- 実は僕のローカルマシンで動かしてます

(帰宅時・オフライン時には通知飛ばず…)

da ik ikohara /eno t i f y -s lack

Page 20: Golang oss libraries

デモ?

da ik ikohara /eno t i f y -s lack

Page 21: Golang oss libraries

lytics/estail

Page 22: Golang oss libraries

・Elasticsearchをtailするやつ

- and条件、not条件に対応

- 表示したいフィールドを指定可能

l y t i cs /es ta i l

Page 23: Golang oss libraries

デモ?

l y t i cs /es ta i l

Page 24: Golang oss libraries

josephlewis42/multicache

Page 25: Golang oss libraries

・メモリキャッシュ

- 複数のアルゴリズムを指定可能

- LRU、ラウンドロビン、

有効期限、セカンドチャンス

- フォールバックの関数指定可能

- hashicorp/golang-lru より早いらしい

- 有効期限がバグってた

j oseph lewis42 / mu l t i cache

Page 26: Golang oss libraries

sourcegraph/appdash

Page 27: Golang oss libraries

・トレースシステム

- 設定不要で立ち上げ可能

- (一応)言語に依存せずトレース可能

- SQLやユーザーIDとかも取れる

- フロントはd3.js

- 大量のデータがあると辛い

- (最初はzipkin使ってました)

sourcegraph /appdash

Page 28: Golang oss libraries

まとめ

Page 29: Golang oss libraries

まとめ

・CLIからWebまで、Goで作られたライブラ

リはいっぱいある

=> importに追加するだけで使えて簡単

・歴史が浅いため、未熟な部分も多々あり

=> コード整形があるので、PRのしきいは低い

Page 30: Golang oss libraries

まとめ

_人人人人人人人人人人人人人_

> Goで作りましょう!! <

 ̄Y^Y^Y^Y^Y^Y^Y^Y^Y^Y^Y^Y ̄

Page 31: Golang oss libraries

おわり。

fin.

Page 32: Golang oss libraries

「世界で愛されるサービス」を一緒に作りませんか?

セグメントNo1 サービス

グローバルビジネス

Business

pairs Goフルスクラッチ

Engineering

マッチングアルゴリズム

Big Data

ハイブリッドエンジニア

大規模行動データ解析

Page 33: Golang oss libraries

CONFIDENTIAL

Thank you :)

Thank you :)