context最佳实践
Do not store Contexts inside a struct type; instead, pass a Context explicitly to each function that needs it. The Context should be the first parameter, typically named ctx;
不要把Context存在一个结构体当中,显式地传入函数。Context变量需要作为第一个参数使用,一般命名为ctx;
Do not pass a nil Context, even if a function permits it. Pass context.TODO if you are unsure about which Context to u