V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  importmeta  ›  全部回复第 6 页 / 共 10 页
回复总数  194
1  2  3  4  5  6  7  8  9  10  
49 天前
回复了 NerdHND 创建的主题 React Zustand 的文件组织?
英语好就 Udemy
52 天前
回复了 hoodzwh 创建的主题 程序员 如何学习一门新技术
自学学的很浅, 个人经验, 还得是找真实项目干, 干完自己或者让测试跑起来找 bug, 然后再慢慢解决, 做个一两个项目进步飞快.
@tsanie 我没有把 “阀值” 当成 “阈值”. 阀值是错的, 缺省也不是人话.
@ShundL 课本里教的...
@cmdOptionKana 哈哈, 咱俩同频
我这审美只喜欢两个牌子, 三星, 魅族.
62 天前
回复了 Michae1Jacks0n 创建的主题 Android 安卓怎么彻底删除 app
确实, 手机文件管理器里删掉没用, 我上次忘了删 QQ 的什么了, 用 SD 女仆 之类的进去手机什么区, 不用 Root 就能看到其他的 QQ 存在手机里的文件了.
只用数据库计算
我单独加了一块 SSD 按了 Linux Mint, 只有主硬盘安装 Linux Mint 开机的时候自动才出现让你选哪个系统进入. 现在笔记本按了三块硬盘,1 个 Win, 一个 Linux, 一个当存储.
68 天前
回复了 importmeta 创建的主题 程序员 事关破产, 求助如何写用户扣费逻辑
@8355 好的老哥, 这个错误倒是没写全, 我自己找第三方 API 的文档错误码,自己维护了一个 Map,这个报错里面也有一些判断逻辑, 哪些可以直接返回给用户,哪些不返回. 我发帖时用的 MongoDB 所以写了个 if 0 这种判断, 现在准备切换成 postgres 了,为了钱操作和事务....
68 天前
回复了 importmeta 创建的主题 程序员 事关破产, 求助如何写用户扣费逻辑
@8355 老哥,我改了改,这样是不是好些了...
1.先扣费,扣费的时候
1.1 开启事务
1.2 积分表加行级锁
1.3 扣费记录加一条
1.4 改余额成 扣了之后的
1.5 此条数据状态: 已扣费

1 如果错误就抛给用户

2.入队列, if 状态 = 已扣费 and 不在队列里 and 没有 jobId, 入队列后 此条数据 加上 jobId,

2 如果错误就抛给用户

4.队列里面

4.1 开启事务
try
4.2 查询这条数据 where status = 已扣费
4.3 状态改为成功
4.4 此条数据状态 改成成功
4.4 调用第三方 API
4.5 提交事务
4.6 记录日志
catch
4.7 终止事务
4.8 把此条数据的状态改为失败(在事务外) 记录第三方 API 抛出的错误


5.队列里面设置重试次数重试 重试次数到了 job 的状态是 job 错误

6 在外面轮询这个 jobId 判断这个 job 的状态成功还是错误

6.1 如果错误
6.2 开启事务
6.3 如果错误了 积分表加行级锁 返积分 where 扣费记录 是否返了积分 = 否
6.4 扣费记录 是否返了积分 设为 是
6.5 提交事务
68 天前
回复了 importmeta 创建的主题 程序员 事关破产, 求助如何写用户扣费逻辑
@z1829909 是有这个问题, 不过这都是以后的事情了, 万一哪天人多了会有, 要么给第三方 API 加钱扩大吞吐量, 要么别的方法
68 天前
回复了 importmeta 创建的主题 程序员 事关破产, 求助如何写用户扣费逻辑
@z1829909 我想让用户不知道第三方接口爆了,就用队列限速用户的请求,队列每秒只能处理几个
69 天前
回复了 importmeta 创建的主题 程序员 事关破产, 求助如何写用户扣费逻辑
@8355 老哥,我在队列里扣费行吗
1  2  3  4  5  6  7  8  9  10  
关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1098 人在线   最高记录 6679   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 26ms · UTC 19:09 · PVG 03:09 · LAX 11:09 · JFK 14:09
Developed with CodeLauncher
♥ Do have faith in what you're doing.