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

做网站数据库多少钱百度知道入口

做网站数据库多少钱,百度知道入口,重庆最著名的十大景点,炫酷的电商网站设计前言 很多时候后台需要做定时任务的需求,笔者的项目采用go-zero框架微服务框架,需要做定时任务,于是做了如下方法调研,共有大概三种主要选择 方案 难度总体由容易到复杂 go的timer库 通过Go的标准库time中的Ticker和Tick功能…

前言

很多时候后台需要做定时任务的需求,笔者的项目采用go-zero框架微服务框架,需要做定时任务,于是做了如下方法调研,共有大概三种主要选择

方案

难度总体由容易到复杂

go的timer库

通过Go的标准库time中的TickerTick功能来设置和管理定时任务,可以直接集成在服务启动逻辑中,不需要额外的文件或复杂的配置

func startTicker() {ticker := time.NewTicker(1 * time.Hour) // 每小时执行一次defer ticker.Stop()for {select {case <-ticker.C:// 执行定时任务fmt.Println("执行定时任务...")// 这里可以放置你的业务逻辑}}
}

cron库

使用robfig/cron这个Go库,作为大型复杂项目的定时任务,cron非常常见也非常强大

大概要在go-zero的服务启动文件里添加如下代码

    // 初始化Cron调度器cronScheduler := cron.New(cron.WithSeconds()) // 使用WithSeconds选项支持秒级调度// 添加定时任务_, err := cronScheduler.AddFunc("0 */1 * * * *", func() { // 每分钟执行一次// 定时任务的逻辑})if err != nil {logx.Errorf("添加定时任务失败: %v", err)return}// 启动Cron调度器cronScheduler.Start()// 停止Cron调度器defer cronScheduler.Stop()

go-queue

这是一种官方更加推荐的方法,不过需要配置消息队列集群,大概代码如下

package mainimport ("fmt""strconv""time""github.com/zeromicro/go-queue/dq"
)func main() {producer := dq.NewProducer([]dq.Beanstalk{{Endpoint: "localhost:11300",Tube:     "tube",},{Endpoint: "localhost:11301",Tube:     "tube",},})// 延迟 5s 后处理_, err := producer.Delay([]byte("hello"), time.Second*5)if err != nil {fmt.Println(err)}// 在指定时间点处理_, err = producer.At([]byte("hello"), time.Now().Add(time.Second*10))if err != nil {fmt.Println(err)}
}

总结

go-queue的方案直接被笔者排除了,不再额外配置消息队列集群,

其他两个方法比较也很明显


使用Cron库,可以在同一个调度器中管理多个任务,每个任务都有自己的Cron表达式

使用timer,如果有很多不同的任务,需要不同的时间间隔,管理这些会很麻烦


使用timer不需要引入依赖,使用cron需要引入依赖


http://www.wangmingla.cn/news/79913.html

相关文章:

  • 个人网站注册流程seo排名推广工具
  • 网站地图可以自己做么厦门人才网最新招聘信息
  • 怎么查看自己网站有没有被百度收录查询网 网站查询
  • 简述网站建设的基本过程365优化大师软件下载
  • 网络求职做阿姨哪个网站好免费一键搭建网站
  • 优秀作文网站推荐免费发布推广的网站有哪些
  • 网站诊断分析报告模板及优化执行方案.doc新手怎么做销售
  • 微信公众号开发平台登录北京seo优化
  • 威海做网站的哪家好全国疫情最新消息今天实时
  • 商标注册申请入口seo这个行业怎么样
  • java在线编程网站小程序开发一个多少钱啊
  • 网站大全免费电影深圳百度推广电话
  • thinkphp做网站有什么好处免费发布推广的网站有哪些
  • h5手机网站怎么做优化网络推广外包
  • 横泉水库建设管理局网站深圳的seo网站排名优化
  • 自己做网站 发布视频下载优化大师并安装
  • sea wordpress 搭建seo上海培训
  • 陇南做网站5月疫情第二波爆发
  • 做vi 设计国外网站什么网站做推广比较好
  • 网站做的简单是什么意思百度关键词规划师入口
  • 苏州做网站哪家专业搜索引擎营销推广
  • 建筑网格组织seo服务 文库
  • 一个简单的网站怎么做软件外包公司有哪些
  • 自制头像生成器网站快速整站排名seo教程
  • 优秀网站设计效果图百度的广告怎么免费发布
  • 河南网站建设公司 政府东莞网站建设优化排名
  • 福建建设委网站培训机构推荐
  • 变更网站怎么做网站收录排名
  • 日照 网站建设小程序开发流程详细
  • 手机wap网站制作需要多少钱怎样做产品推广