用HUP信号使Nginx加载新的配置文件 当Nginx接收到HUP信号的时候,它会尝试着去解析并应用这个配置文件,如果没有问题,那么它会创建新的worker进程,并发送信号给旧的 worker进程,让其优雅的退出。 接收到信号的旧的worker进程会关闭监听socket,但是还会处理当前的请求,处理完请求之后,旧的 worker进程退出。 当你想升级Nginx到一个新的版本,增加或减少module的时候 发送USR2信号给master进程。master进程会把自己的.pid文件重命名为.oldbin(例 如,/usr/local/nginx/logs/nginx.pid.oldbin),然后执行新的二进制文件,从而启动一个新的master进程和新的worker进程.
var val interface{} = (interface{})(nil) val的类型是interface{},值是nil var val interface{} = nil val的类型和值都是nil ackage main
用(*interface{})(nil)传递参数类型
type injector struct {
values map[reflect.Type]reflect.Value
parent Injector
}
https://github.com/codegangsta/inject 依赖注入是一个业界标准技术,用于解决复杂应用状态下模块之间依赖的问题。有了依赖注入,不需要再写很多按照依赖顺序而编写的初始化代码。在没有使用依赖注入的前提下,在升级重构一个模块的时候是相当痛苦的,因为这意味着需要在项目依赖图里面把所有该模块涉及的一整套依赖关系重新构建。简而言之,依赖注入主要目的只有一个:旨在简化初始化代码的管理。