Open karszawa opened 6 years ago
書き込みだけしか行わないエンドポイントではその部分をJobとして非同期実行する
大量に書き込んで一度だけ読み込むような問題設定の場合、劇的な効用が見込める。 問題がそのようなシナリオであれば手をつける価値があると思う。 アクセスログの分析でそれらしいとわかることもあるが、リクエストのタイミングに依存するので難しい。
goをつければ良いらしい。
func f(i int) { // fucking process } func main() { go func(0) }
ラムダ式を使うともっと簡単
func oldFunction(...) { // insert query } func newFunction(...) { go func(...) { // insert query }(...) }
ちょっとほれた。
なにをやるか
書き込みだけしか行わないエンドポイントではその部分をJobとして非同期実行する
なぜやるか
大量に書き込んで一度だけ読み込むような問題設定の場合、劇的な効用が見込める。 問題がそのようなシナリオであれば手をつける価値があると思う。 アクセスログの分析でそれらしいとわかることもあるが、リクエストのタイミングに依存するので難しい。
どうやるか
goをつければ良いらしい。
ラムダ式を使うともっと簡単
ちょっとほれた。