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

极致优化WordPress网站速度南京网站网站建设公司

极致优化WordPress网站速度,南京网站网站建设公司,服务器个人买能干什么,wordpress空间 腾讯目录 前言 直接关闭的缺陷 平滑关闭的使用场景 例子 思悟项目#xff1a; golang qq邮件发送验证码——思悟项目技术1 前言 平滑关闭#xff08;graceful shutdown#xff09;是指在停止服务时#xff0c;能够让现有的连接、任务或者操作优雅地完成#xff0c;而不是…目录 前言 直接关闭的缺陷 平滑关闭的使用场景 例子 思悟项目 golang qq邮件发送验证码——思悟项目技术1 前言 平滑关闭graceful shutdown是指在停止服务时能够让现有的连接、任务或者操作优雅地完成而不是直接中断。 平滑关闭的核心思想是在系统接收到停止信号后不再接收新请求只处理当前正在执行的请求确保所有请求完成后系统才正式关闭。 直接关闭的缺陷 比如说有一个web服务我们要升级web服务也就是版本迭代。但是在升级前要先把服务关闭。我们可以直接包里终止程序然后启动新的服务但是这样做存在缺陷 当前的请求可能会被中断导致数据丢失。未完成的后台任务会被强行中断。用户体验感也会很差数据库连接、文件等资源可能没有机会释放导致潜在的资源泄漏。 平滑关闭的使用场景 项目版本迭代服务重启维护服务迁移防止数据丢失 例如王者荣耀更新时正在打游戏的玩家不会更新等到这局游戏结束后才会进行更新。 例子 package mainimport (contexterrorsgithub.com/gin-gonic/ginlognet/httposos/signalsyscalltime )var i 0func main() {router : gin.Default()// 创建两个接口一个延迟9秒钟返回信息router.GET(/a, func(c *gin.Context) {time.Sleep(9 * time.Second)ic.JSON(http.StatusOK, gin.H{num: i,})})// 一个立刻返回信息router.GET(/b, func(c *gin.Context) {ic.JSON(http.StatusOK, gin.H{num: i,})})// 创建一个 http.Serversrv : http.Server{Addr: :8080,Handler: router,}// 在协程中启动服务器go func() {if err : srv.ListenAndServe(); err ! nil !errors.Is(err, http.ErrServerClosed) {log.Fatalf(listen: %s\n, err)}}()// 创建信号通道监听 SIGINT 和 SIGTERMquit : make(chan os.Signal, 1)signal.Notify(quit, syscall.SIGINT, syscall.SIGTERM)// 阻塞直到收到信号si : -quitlog.Println(Shutting down server..., si)// shutdown方法需要传入一个上下文参数有两种写法// 1.带超时接收到信号之后9秒之后无论当前请求是否完成都强制断开ctx, cancel : context.WithTimeout(context.Background(), 9*time.Second)// 2.不带超时等待当前请求全部完成再断开// ctx, cancel context.WithCancel(context.Background())defer cancel()// 调用 Shutdown 方法平滑关闭if err : srv.Shutdown(ctx); err ! nil {// 当请求还在的时候强制断开了连接将产生错误err不为空log.Fatal(Server forced to shutdown:, err)}log.Println(Server exiting) }步骤具体为 捕获信号使用 os/signal 包捕获终止信号。创建 context创建一个 context当捕获到信号时触发 context 的取消从而让正在进行的任务停止接收新的请求。调用 Shutdown 方法http.Server 提供了一个 Shutdown 方法接受一个 context它会让服务器停止接收新的请求等待处理完当前正在进行的请求等待时间由 context 决定。 参考Golang 平滑重启之优雅关机
http://www.tj-hxxt.cn/news/228242.html

相关文章:

  • 国外扁平化网站上海企业网站推广
  • 自己做网站卖衣服wordpress如何建立多种语言
  • 新开的公司做网站多少钱台州网站建设方案
  • 南京手机网站设计网站开发项目建设经验
  • 浙江金顶建设公司网站青岛品牌设计公司
  • 公司做网站价格快速搭建网站域名绑定设置
  • 淘宝网站的建设与运营设计思路网站与网页之间的区别是什么
  • 电商网站构建开发者模式怎么关闭华为
  • 中专网站建设课程南京广告公司地址
  • 宁夏建设职业技术学院官方网站汉口江岸区城市建设局网站
  • 黑龙省建设厅网站首页网站设计厂
  • 网站建设相关小论文投诉百度最有效的电话
  • 织梦网站版本信诺盛世网站
  • 东莞工业品网站建设做网站商城需要什么
  • 英文专业的网站建设wordpress修改标签页
  • 网站改造设计方案网站建设 移动端
  • 举例说明商业网站的建设流程无锡市工程造价信息网
  • 可视化建站网站源码做IT的需要别人打开网站吗
  • 北京建设信源网站 怎么打不开西安单位网站建设
  • 网站规划步骤有哪些游戏外包平台
  • 织梦网站提示保存目录数据时报网站建设实训不足
  • 网站域名怎么设置wordpress 中文工单
  • 扒网站样式网站利用e4a做app
  • 泰语网站怎么建设互联网如何挣钱创业
  • 做一般的公司门户网站投资额音乐网站设计规划书
  • 怎么让网站分享有图片开发app软件的步骤
  • 广东建设信息网是什么网站白云商城网站建设
  • 烟台高端网站建设公司青岛房产网新楼盘
  • 自己做电影网站犯法吗免费网络推广方式
  • 模板网站购买wordpress禁主题