예제 #1
0
파일: server.go 프로젝트: knico/fileserver
//主函数,应用程序入口点
func main() {
	//从 -s 指定的配置文件中加载配置信息
	setting := flag.String("s", defaultSetting, sHelp)
	flag.Parse()
	fmt.Printf("使用配置文件 %v 启动Server...\n", *setting)

	//从配置文件中读取一个配置map
	//cfg map[string]string
	cfg, err := config.LoadProperties(*setting)
	if err != nil && err != io.EOF {
		fmt.Printf("加载配置文件出错,%v \n", err)
		return
	}

	//检查配置文件必备字段
	_, err = checkCfg(cfg)
	if err != nil {
		fmt.Printf("检查配置文件出错,%v \n", err)

	}

	//启动http服务

	http.HandleFunc("/", errorHandler(handler.HandleRoot, cfg))
	//http.HandleFunc("/", handler.HandleRoot)
	listen, _ := cfg["listen"]
	fmt.Println("server started and liten " + listen)
	handler.Init(cfg)
	http.ListenAndServe(listen, nil)

}
예제 #2
0
파일: main.go 프로젝트: pooya/craft
func main() {
	hostId, port := handleCommandLine()
	node.Init()
	config.Init(fmt.Sprintf("%d_%d", hostId, port))
	node.CheckSelf()
	logger.Init()
	state.Init()
	handler.Init(port)
}