不一样的 Go
采用常规方式启动一个 Golang http 服务时,若服务被意外终止或中断,即未等待服务对现有请求连接处理并正常返回且亦未对服务停止前作一些必要的处理工作,这样即会造成服务硬终止。这种方式不是很优雅。
在并发程序中,竞争问题可能是程序面临的最难也是最不容易发现的错误之一。作为Go研发人员,必须要理解竞争的关键特性,例如数据竞争以及竞争条件。
当两个或多个协程同时访问同一个内存地址,并且至少有一个是在写时,就会发生数据竞争。
Go 边学边练
Go微服务实践(rk-boot+grpc+http) (已被开发框架VEGA2-GO采用)
通过
rk-boot
,用户可以通过yaml格式的配置文件启动gRPC、gin、echo、GoFrame、prometheus客户端或自定义入口服务。很容易易编译、运行和调试你的 grpc 服务、grpc 网关、swagger UI 和 rk-tv Web UI。
rk-boot框架我们正在验证中,很有可能会成为我们统一的开发框架,拭目以待......