古道长亭

Contact me with ixiaoqiang0011@gmail.com


  • 首页

  • 归档

  • 分类

  • 关于

  • Book

  • 搜索

分布式调度问题

时间: 2022-07-05   |   分类: 集群场景化方案   | 字数: 1834 字 | 阅读约: 4分钟

分布式调度问题

演示代码

调度—>定时任务,分布式调度—>在分布式集群环境下定时任务

Elastic-job(当当⽹开源的分布式调度框架)

一、定时任务场景

  • 订单审核、出库
  • 订单超时⾃动取消、⽀付退款
  • 礼券同步、⽣成、发放作业
  • 物流信息推送、抓取作业、退换货处理作业数据积压监控、⽇志监控、服务可⽤性探测作业定时备份数据
  • ⾦融系统每天的定时结算
  • 数据归档、清理作业
  • 报表、离线数据分析作业
  • ……

二、分布式调度含义

  • 运⾏在分布式集群环境下的调度任务(同⼀个定时任务程序部署多份,只应该有⼀个定时任务在执⾏)
  • 分布式调度—>定时任务的分布式—>定时任务的拆分(即为把⼀个⼤的作业任务拆分为多个⼩的作业任务,同时执⾏)

三、定时任务与消息队列的区别

  • 共同点
    • 异步处理 ⽐如注册、下单事件
    • 应⽤解耦 不管定时任务作业还是MQ都可以作为两个应⽤之间的⻮轮实现应⽤解耦,这个⻮轮可以中转数据,当然单体服务不需要考虑这些,服务拆分的时候往往都会考虑
    • 流量削峰 双⼗⼀的时候,任务作业和MQ都可以⽤来扛流量,后端系统根据服务能⼒定时处理订单或者从MQ抓取订单抓取到⼀个订单到来事件的话触发处理,对于前端⽤户来说看到的结果是已经下单成功了,下单是不受任何影响的
  • 本质不同 定时任务作业是时间驱动,⽽MQ是事件驱动; 时间驱动是不可代替的,⽐如⾦融系统每⽇的利息结算,不是说利息来⼀条(利息到来事件)就算⼀下,⽽往往是通过定时任务批量计算; 所以,定时任务作业更倾向于批处理,MQ倾向于逐条处理;

四、实现方式

  • 任务调度框架Quartz

阅读全文 »

分布式id解决方案

时间: 2022-07-04   |   分类: 集群场景化方案   | 字数: 664 字 | 阅读约: 2分钟

分布式id解决方案

演示代码

例:分表之后,不用主键自增,采用分布式id方案

  • UUID

    UUID 是指Universally Unique Identifier,翻译为中⽂是通⽤唯⼀识别码

    产⽣重复 UUID 并造成错误的情况⾮常低,是故⼤可不必考虑此问题。

阅读全文 »

集群时钟同步问题

时间: 2022-07-03   |   分类: 集群场景化方案   | 字数: 438 字 | 阅读约: 1分钟

集群时钟同步问题

演示代码

一、时钟不同步导致的问题

举⼀个例⼦,电商⽹站业务中,新增⼀条订单,那么势必会在订单表中增加了⼀条记录,该条记录中应该会有“下单时间”这样的字段,往往我们会在程序中获取当前系统时间插⼊到数据库或者直接从数据库服务器获取时间。那我们的订单⼦系统是集群化部署,或者我们的数据库也是分库分表的集群化部署,然⽽他们的系统时钟缺不⼀致,⽐如有⼀台服务器的时间是昨天,那么这个时候下单时间就成了昨天,那我们的数据将会混乱

阅读全文 »

一致性Hash算法

时间: 2022-07-02   |   分类: 集群场景化方案   | 字数: 2241 字 | 阅读约: 5分钟

一致性Hash算法

演示代码

分布式和集群

分布式和集群是不⼀样的,分布式⼀定是集群,但是集群不⼀定是分布式(因为集群就是多个实例⼀起⼯作,分布式将⼀个系统拆分之后那就是多个实例;集群并不⼀定是分布式,因为复制型的集群不是拆分⽽是复制)

阅读全文 »

Nginx 教程

时间: 2022-07-01   |   分类: Nginx   | 字数: 2243 字 | 阅读约: 5分钟

Nginx 教程

一、基础回顾

Nginx 是⼀个⾼性能的HTTP和反向代理web服务器,核⼼特点是占有内存少,并发能⼒强

应用场景:

  • http服务器

    性能非常高,支持50000个并发连接数,cpu和内存占用也非常的低,10000个没有活动的连接占用2.5M内存

阅读全文 »
38 39 40 41 42 43 44 45 46
古道长亭

古道长亭

Always remember that your present situation is not your final destination. The best is yet to come.

226 日志
57 分类
104 标签
GitHub Gitee
友情链接
  • 古道长亭的BOOK
  • JAVA学习
标签云
  • Mysql
  • 搜索引擎
  • Mybatis
  • 容器
  • 架构
  • 消息队列
  • Flink
  • Sharding sphere
  • 流处理
  • 缓存
© 2019 - 2024 京ICP备19012088号-1
0%