随笔 - 108  文章 - 1 评论 - 14 trackbacks - 0

摘要:6.分布式事务解决方案之最大努力通知 6.1. 什么是最大努力通知 最大努力通知也是一种解决分布式事务的方案,下边是一个是充值的例子:交互流程 :1、账户系统调用充值系统接口2、充值系统完成支付处理向账户系统发起充值结果通知若通知失败,则充值系统按策略进行重复通知3、账户系统接收到充值结果通知修改充 阅读全文
posted @ 2019-12-02 22:18 小小一 阅读 (45) 评论 (0) 编辑
摘要:5. 分布式事务解决方案之可靠消息最终一致性 5.1. 什么是可靠消息最终一致性事务 可靠消息最终一致性方案是指当事务发起执行完全本地事务后并发出一条消息,事务参与方(消息消费者)一定能够接收消息并处理事务成功,此方案强调的是只要消息发给事务参与方最终事务要达到一致。此方案是利用消息中间件完成,如下 阅读全文
posted @ 2019-11-28 22:37 小小一 阅读 (58) 评论 (0) 编辑
摘要:4. 分布式事务解决方案之TCC 4.1. 什么是TCC事务 TCC是Try、Confirm、Cancel三个词语的缩写,TCC要求每个分支事务实现三个操作 :预处理Try、确认Confirm、撤销Cancel。Try操作做业务检查及资源预留,Confirm做业务确认操作,Cancel实现一个与Tr 阅读全文
posted @ 2019-11-26 22:10 小小一 阅读 (13) 评论 (0) 编辑
摘要:3. 分布式事务解决方案之2PC(两阶段提交) 针对不同的分布式场景业界常见的解决方案有2PC、TCC、可靠消息最终一致性、最大努力通知这几种。 3.1. 什么是2PC 2PC即两阶段提交协议,是将整个事务流程分为两个阶段,准备阶段(Prepare phase)、提交阶段(commit phase) 阅读全文
posted @ 2019-11-24 20:44 小小一 阅读 (94) 评论 (0) 编辑
摘要:1 基础概念 1.1. 什么是事务 什么是事务?举个生活的例子 :你去小卖部买东西,“一手交钱,一手交货“就是一个事务的例子,交钱和交货必须全部成功,事务才算成功,任一个活动失败,事务将撤销所有已成功的活动。明白上述例子,再来看事务的定义 :事务可以看做是一次大的活动,它由不同的小活动组成,这些活动 阅读全文
posted @ 2019-11-10 13:49 小小一 阅读 (101) 评论 (0) 编辑
摘要:各种排序的稳定性,时间复杂度、空间复杂度、稳定性总结如下图: 阅读全文
posted @ 2019-10-26 13:09 小小一 阅读 (42) 评论 (0) 编辑
摘要://希尔排序,也称递减增量排序算法,是插入排序的一种更高效的改进版本.但希尔排序是非稳定排序算法. 希尔排序是基于插入排序的以下两点性质而提出改进方法的 : 1. 插入排序在对几乎已经排好序的数据操作时,效率高,既可以达到线性排序的效率 2. 但插入排序一般来说是低效的,因为插入排序每次只能将数据移动一位 希尔排序的基本思想是 : 先将... 阅读全文
posted @ 2019-10-26 13:08 小小一 阅读 (29) 评论 (0) 编辑
摘要:排序算法大全 package cn.baidu; import java.util.Arrays; public class SortTest { public static void main(String[] args) { int[] arr = { 2, 5, 3, 1, 4 }; System.out.println("排序前:" + A... 阅读全文
posted @ 2019-10-26 13:07 小小一 阅读 (20) 评论 (0) 编辑
摘要:2.1.开发环境准备 2.1.1.数据库jar包 我们这里可以尝试着从数据库中采集数据,因此需要连接数据库,我们一直用MySQL,所以这里需要MySQL的jar包 2.1.2.MyBatis的jar包(可选) 从数据库采集数据就需要查询数据库,我们可以用jdbc原生的写DAO,还可以使用我们之前学习过的MyBatis动态代理DAO... 阅读全文
posted @ 2019-10-20 17:57 小小一 阅读 (9) 评论 (0) 编辑
摘要:1、SolrCore的配置 a)schma.xml文件 b)配置中文分析器 2、配置业务域和批量索引导入 a)配置业务域 b)批量索引导入 c)Solrj复杂查询(用Query页面复杂查询、用程序实现) 3、京东案例(简单的站内搜索实现) 2.SolrCore的配置(重... 阅读全文
posted @ 2019-10-20 17:57 小小一 阅读 (18) 评论 (0) 编辑