https://golangtokyo.connpass.com/event/87064/
聞いてきた話のメモ書き
Effective Streaming in Golang
- io packageの便利interfaceもっと使っていきましょうという話
- メモらずに話を聞いていたけど資料がよくまとまっていて神感あった
- メモリアロケートしなくて良いところは気をつけていきたい
次世代のコンテナランタイム!?gVisorのコードを読みながら理解してみる
- ホストカーネルとの分離が主目的
- ユーザ空間でゲストカーネルとして動作する
- システムコールを直接操作できない
- VMMと同様
- システムコールの処理
- アプリケーションからのシステムコールをインターセプト(ptrace)
- システムコールをフィルタ(seccomp)
- システムコールを置換(gVisor)
- コンポーネント
- Sentry
- アプリケーションからのシステムコールをproxyする
- システムコールをgoでまるっと置き換えてる
- Gofer
- ホストのファイル開いたりする
- Sentry <> Gofer間をP9 protocolで通信する
- アプリケーションからは必ずSentry通るようになる
- Sentry
- オーバヘッド
- 現時点ではptraceがボトルネックになってる
- システムコール発行しまくるとパフォーマンス低下が懸念される
- 読むと良さそうなコード