分布式锁,分布式事务,分布式job

分布式事务:

弱一致性(基于MQ的最终一致性)

强一致性(基于XA二段提交的强一致性)

分布式JOB(任务调度)

分㐊全局一致性(分布式锁)

分布式场景下的session一致性

CAP:

C:数据一致性(数据从一个事务到另一个事务时一致的)

A:服务可用性,所有读写请求在一定时间内得到相应,可终止,不会一直等待

P:分钱容错性,在网络分区的情况下,被分隔的节点仍能正常对外服务

base理论:基本可用,服务降级

jta,XA接口,2PC

jta:java操作xa接口

jta+automatic

XA接口:全局事务(事务管理器,本地事务)

2PC:二段提交协议(准备和提交)

LCN分布式事务框架官网:http://www.txlcn.org/

1、lcn事务原理:不生产事务,只是事务的搬运工(事务协调者TX,本地事务)

2、发起方:调用其他服务接口

3、参与方:被别人调用我接口

1.创建事务分组(发起方创建事务分组,获取到分组ID,将分组ID发给事务协调者)

2、http协议,通过请求头将事务分组传递给参与方

3、参与方从请求头里面获取到事务分组ID

4、参与方获取到事务分组之后,不会去提交事务

5、lcn假关闭。发起方通知TX,TX通知参与方提交或者回滚事务。

任务调度:定时JOB,在什么时候进行执行代码任务

场景:标的放款与标的还款每5秒跑一次。

java实现定时任务几种方式:

Thread(死循环一直监听),

TimeTask,

线程池定时线程ScheduledExecutorService .scheduleAtFixedRate(new Runnable),1,1,TimeUnit.SECONDS),

quartz,springboot

分布式JOB如何解决幂等性:

1、分布式锁(zk、redis),保证只有一台服务器执行job,zk与redis分布式锁的区别?

2、使用配置文件,配置文件开关,加一个配置文件 start=true、false,true执行job,false不执行job,一个配置文件为true其余全为false

3、使用数据库唯一标识(年月日),成功就执行,失败就不执行,缺点:效率低。

传统任务调度 缺点:

1、执行中出现异常,就停止了,没有补充机制,只有等到下一次才会执行。

2、支持集群?随机出现在某一台机器上面执行(权重)

3、不支持路由策略(负载均衡)

4、统计(几百个服务,那些执行成功了,那些失败了,手动补偿,统一管理)

5、管理平台

6、重试多次失败->报警、状态监控

---分布式任务调度平台(XXLJOB)(elsticjob):解决传统任务调度缺点

希望篇文章可以帮助在这个行业发展的朋友和童鞋们,在论坛博客等地方少花些时间找资料,把有限的时间,真正花在学习上,有需要帮助或资料的朋友可以加Q群:813071032相信对于已经工作和遇到技术瓶颈或者写博客码友,都会有好的帮助。

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 事物概念 事物特性(ACID) 原子性(A) 所谓的原子性就是说,在整个事务中的所有操作,要么全部完成,要么全部不...
    匆匆岁月阅读 49,888评论 2 25
  • 一. 事务 1.1 什么是事务 数据库事务(简称:事务,Transaction)是指数据库执行过程中的一个逻辑单位...
    Java小铺阅读 597评论 0 3
  • 文/仰望心际的猫 床前明月光,疑是地上霜。举头望明月,低头思故乡。 上面这首诗,想必我们耳熟能详,他就是唐代著名大...
    1厘米8光年阅读 647评论 0 0
  • 我喜欢光着脚在地板上走路的感觉 那么那么的踏实 不过去洗手间还是要穿拖鞋的 我理解的幸福就是 即便某一天突然生病只...
    佴茈玖玖阅读 119评论 0 0
  • 第六章林中打斗 刚走出几步,叶清晨便敏锐的捕捉到了空气中一股若隐若现的血腥味,叶清晨急忙叫住了小枝,闭上双眼,细听...
    翦槿阅读 196评论 0 1