13. 実行速度&ビルド
実行速度
出典:The Computer Language Benchmarks Game
LL
Go
http://benchmarksgame.alioth.debian.org/u64q/which-programs-are-fastest.php
13
14. 実行速度&ビルド
ビルド
• ビルドファイルを作成する必要がない
• 3rdパーティーパッケージは勝手に取得
ソースコード ビルド
package hoge $ cd $GOPATH
$ go get
import ( $ go build -o main
“github.com/foo/go-spam” $ ./main
“bitbucket.org/gopher/bar”
…
)
func SomeProcess(…) {…}
14
28. 標準パッケージ
便利な標準ツール群
Goでの開発を助ける標準ツール
• go build パッケージをビルド
• go get 必要なパッケージを取得
• go install 必要なパッケージを取得&ビルド
• go run 一時的にビルドし実行
• go test テストとベンチマークを実行
• gofmt フォーマットを直してくれる
• godoc ドキュメントを生成
28
#33:Paxosは、信頼性の低い複数の処理ノードによるネットワークで「コンセンサス」を得るための各種手順Paxos自体は汎用的なアルゴリズムでさまざまな問題に適用できますが、最近のNoSQLの文脈で語られるのは「データストアをマルチマスター構成にしたときに、どうやってデータの整合性を効率的に確保するか」って問題へのPaxos応用です。Paxosは独立した並列なプロセスをメッセージパッシングで行うので、goroutine & channelがはまったwebsocketとか便利だった(いまは準標準パッケージ)無駄な議論をしなくて済むようになったデプロイがすごく楽簡潔に書けてとてもよい