![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
算法
Fanzongshen
只要学不死,就往死里学!
展开
-
支付系统流程以及防止订单重复提交
支付的话,一般是走支付中心,然后支付中心与第三方支付渠道(微信、支付宝、银联)交互,支付成功以后,异步通知支付中心,支付中心更新自身支付订单状态,再通知业务应用,各业务再更新各自订单状态。创建订单的时候,用订单信息设置redis的key值,判断redis中是否有key,有则不允许重复提交,没有则生成一个新key,放到redis中设置个过期时间,然后创建订单。1、支付订单增加一个中间状态"支付中",当同一个订单去支付的时候,先检查有没有状态为"支付中"的支付流水,当然支付的时候要加个锁。原创 2022-10-03 01:38:10 · 482 阅读 · 0 评论 -
stream流根据时间筛选list最新数据
stream流根据时间筛选list最新数据原创 2022-07-11 22:14:41 · 5396 阅读 · 0 评论 -
java读取Excel内容添加到list集合里面去
java读取Excel内容添加到list集合里面去package com.changan.contract.newsign.utils;import com.changan.contract.xqht.entity.ProcessAudit;import com.google.common.collect.Lists;import lombok.extern.slf4j.Slf4j;import org.apache.poi.hssf.usermodel.HSSFDateUtil;import原创 2022-04-08 14:11:49 · 1760 阅读 · 0 评论 -
银行家算法
银行家算法银行家算法(Banker's Algorithm)是一个避免死锁(Deadlock)的著名算法,是由艾兹格·迪杰斯特拉在1965年为T.H.E系统设计的一种避免死锁产生的算法。它以银行借贷系统的分配策略为基础,判断并保证系统的安全运行。算法原理我们可以把操作系统看作是银行家,操作系统管理的资源相当于银行家管理的资金,进程向操作系统请求分配资源相当于用户向银行家贷款。为保证资金的安全,银行家规定:(1) 当一个顾客对资金的最大需求量不超过银行家现有的资金时就可接纳该顾客;(2) 顾原创 2022-02-21 16:07:29 · 481 阅读 · 0 评论