码迷,mamicode.com
首页 > 其他好文 > 详细

golang 服务器优雅的停机

时间:2015-03-27 23:30:21      阅读:377      评论:0      收藏:0      [点我收藏+]

标签:

这次用中文写,表达得清晰些。

最近 看了几个程序,结合自己的思考,给出golang 服务其 优雅停机的处理方式。这里以http服务器为对象描述。

技术分享

这里的"优雅",表示服务器有计划,按部就班的退出。具体表现在,友好地终止与客户端的连接;关闭其他活动的进程,线程,协成;完成资源的释放;完整的log。

1. 分类

服务器停机可以分两类:服务器主动停机 和 服务器被动停机。

1)服务器主动停机,即在没有外界影响(客户端调用)的情况下,服务器自发的停止。定时停机,以及Idle超时停机是常见的情形。下面 我主要描述Idle超时停机来描述。

2)服务器被动停机,即在外界条件影响下(外界命令控制,外界函数调用),服务器停止。 在这里讨论两张情况:client request 和 函数调用。

 

2. 下面以golang socket 服务器为例子描述两种停机情形。

1)服务器主动停机-Idle超时

 

2) 服务器被动停机

 2.1) client sending requet

 技术分享

 

 

 

2.2) Stop()函数显式调用

 

golang 服务器优雅的停机

标签:

原文地址:http://www.cnblogs.com/harrysun/p/4372944.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!