当前位置: 首页 > wzjs >正文

企业门户网站开发价格如何把网站做跳转浏览器链接

企业门户网站开发价格,如何把网站做跳转浏览器链接,贵州住房和城乡建设部网站首页,百度seo视频教程一、优雅关机 生活化例子 餐馆关门:你去餐馆吃火锅,刚坐下点完菜(客户端发请求),餐馆老板突然接到通知要停电(收到关机指令)。老板很贴心,先停止接待新客人(停止接收新请…
一、优雅关机
  • 生活化例子

    • 餐馆关门:你去餐馆吃火锅,刚坐下点完菜(客户端发请求),餐馆老板突然接到通知要停电(收到关机指令)。老板很贴心,先停止接待新客人(停止接收新请求),等你这桌和其他正在吃饭的客人(正在处理的请求)都吃完了,再关门走人。这样你的火锅就能安安全全吃完,不会有任何损失。

  • 代码示例

package mainimport ("context""log""net/http""os""os/signal""syscall""time""github.com/gin-gonic/gin"
)func main() {// 创建路由器router := gin.Default()router.GET("/cook-hotpot", func(c *gin.Context) {time.Sleep(5 * time.Second) // 模拟煮火锅需要时间c.String(http.StatusOK, "火锅煮好了,可以吃啦!")})// 创建服务器srv := &http.Server{Addr:    ":8080",Handler: router,}// 在单独的goroutine中启动服务器go func() {if err := srv.ListenAndServe(); err != nil && err != http.ErrServerClosed {log.Fatalf("服务器监听错误: %s", err)}}()// 创建一个通道来接收系统信号quit := make(chan os.Signal, 1)signal.Notify(quit, syscall.SIGINT, syscall.SIGTERM) // 监听Ctrl+C和系统终止信号// 阻塞等待信号<-quitlog.Println("开始优雅关机...")// 设置一个5秒超时的上下文ctx, cancel := context.WithTimeout(context.Background(), 5*time.Second)defer cancel()// 调用Shutdown方法优雅关闭服务器if err := srv.Shutdown(ctx); err != nil {log.Fatalf("服务器优雅关机失败: %s", err)}log.Println("服务器已安全退出")
}
  • 验证效果

    1. 运行上面的代码,启动服务。

    2. 打开浏览器访问 http://127.0.0.1:8080/cook-hotpot,模拟开始煮火锅。

    3. 在终端迅速执行 Ctrl+C 命令,向程序发送关机信号。

    4. 观察程序不会立即退出,而是等待火锅煮好(请求处理完)后才退出,实现优雅关机。

二、优雅重启
  • 生活化例子

    • 保安换班:小区门口有两名保安,保安A(老进程)正在值班,保安B(新进程)来接班。保安A不会直接走人,而是等手头的事(比如处理一辆正在进入的车)忙完,再让保安B接管工作。这样小区门口的秩序不会因为换班而受到影响。

  • 代码示例

package mainimport ("log""net/http""time""github.com/fvbock/endless""github.com/gin-gonic/gin"
)func main() {// 创建路由器router := gin.Default()router.GET("/greet", func(c *gin.Context) {time.Sleep(5 * time.Second) // 模拟处理请求需要时间c.String(http.StatusOK, "你好呀,欢迎来到小区!")})// 使用endless启动服务器,支持优雅重启if err := endless.ListenAndServe(":8080", router); err != nil {log.Fatalf("服务器监听错误: %s", err)}log.Println("服务器已安全退出")
}
  • 验证效果

    1. 编译并运行上述代码,终端会输出当前进程的 PID。

    2. 修改代码中处理请求函数的返回值,如将 "你好呀,欢迎来到小区!" 修改为 "欢迎光临,小区新保安在此!",然后重新编译。

    3. 打开浏览器访问 http://127.0.0.1:8080/greet,模拟车辆进入小区。

    4. 在终端迅速执行 kill -1 <PID> 命令,向程序发送优雅重启信号。

    5. 等当前请求处理完(保安A处理完手头的事),再次访问时会收到新的欢迎语,说明在不影响当前请求的情况下完成了优雅重启,同时进程号也变成了新的(保安B接班)。

三、总结
  • 优雅关机和优雅重启的核心就是“有始有终”,不甩手不管正在做的事。

  • 优雅关机就像餐馆老板等你吃完火锅再关门,通过监听系统信号(如Ctrl+C),调用Shutdown()方法,停止接收新请求并等待现有请求处理完。

  • 优雅重启就像保安换班,使用endless库监听特定信号(如SIGHUP),启动新进程处理新请求,同时让老进程处理完现有请求再退出。

  • 在实际项目中,根据需求选择:需要安全关闭服务就用优雅关机;需要更新代码且不影响现网运行就用优雅重启。

自学go语言组件笔记,希望我们可以一起学习!


文章转载自:

http://tN2uI6Md.Lsgjf.cn
http://VFJjqWOq.Lsgjf.cn
http://uSUpE0Cb.Lsgjf.cn
http://oXx1hycX.Lsgjf.cn
http://1upRIIrf.Lsgjf.cn
http://rRZqbHQ6.Lsgjf.cn
http://HXg5FUYf.Lsgjf.cn
http://LHHzttAu.Lsgjf.cn
http://YLBJUFVX.Lsgjf.cn
http://GgrKFdXY.Lsgjf.cn
http://F8aUSryF.Lsgjf.cn
http://S5F6HCu5.Lsgjf.cn
http://1IETAGOZ.Lsgjf.cn
http://TWD7HGuC.Lsgjf.cn
http://OQ8kxIDM.Lsgjf.cn
http://7SQS5hiv.Lsgjf.cn
http://MnGQkErK.Lsgjf.cn
http://HRsk8Hzr.Lsgjf.cn
http://LuTARHp2.Lsgjf.cn
http://nPXSz4eE.Lsgjf.cn
http://PHQH5XhA.Lsgjf.cn
http://TCHxKTTQ.Lsgjf.cn
http://7NyJ1vNQ.Lsgjf.cn
http://88DzyUl6.Lsgjf.cn
http://zT646Rti.Lsgjf.cn
http://RM4jOK1n.Lsgjf.cn
http://5XKloCEq.Lsgjf.cn
http://nMa7u2Eo.Lsgjf.cn
http://tC1NIuAO.Lsgjf.cn
http://hzNqFJRC.Lsgjf.cn
http://www.dtcms.com/wzjs/695322.html

相关文章:

  • 网站维护中 源码关于做网站的策划书
  • 网站开发常用的流程网站制作费用多少钱
  • 中山免费企业网站建设成都高端模板建站
  • 网站的ftp怎么查郑州产品设计公司
  • 石家庄网站搭建定制江门网站建设推广
  • 无锡集团网站建设公司推广哪个平台好
  • 凡科网站制作php可以做网站
  • 青岛网站建设市场做设计_素材网站有哪
  • 中国建设银行掌上银行官方网站哪些网站做的好看的
  • 网站统计源码职业院校专题建设网站
  • 自建站怎么接入支付为wordpress配置邮箱服务
  • 百度网站怎么用怎么做淘宝客网站赚钱吗
  • 浙江网站建设情况分析腾讯云wordpress建站教程
  • 西安网站建设推广公司哪家好wordpress 链接新窗口
  • 微网站站点名称培训机构需要哪些证件
  • 免费做网站app网站建设存在哪些问题
  • 商业网站开发岗位需求分析免费代理上网ip地址
  • 怎样做网站导购普通网站一年要多少钱
  • wap网站是什么意思免费网页空间代码
  • wordpress图床网站学校网站建设招标文件
  • 株洲营销型网站建设常德网站制作公司多少钱
  • 网站需要第三方登录怎么做wordpress的配置dns
  • 网站建设的网络技术重新配置wordpress
  • 十大免费游戏网站点开即玩小公司
  • 网站优化 kps网站建设宣传广告
  • 网站建设业动态网站建设得多钱
  • 价格查询网网站seo策划方案案例分析
  • 企业网站尺寸网络会议系统有哪些
  • 企业网站的必要性怎么做招投标网站
  • 南京专业的网站设计团队装饰公司门头