首页 > 其他分享 >互联网对账结账问题预热

互联网对账结账问题预热

时间:2022-10-09 19:31:41浏览次数:57  
标签:预热 架构 有太多 对账 问题 级别 结账 学问


   我觉得这是一件很有学问的事,然而这个学问我并没有。不过我们可以一起学习,这篇文章我将会以 分享我淘到的帖子的方式和大家一起学习。另外我会提出我遇到的问题,我都列出来,我们一起寻找解决方案。如果项目能够上线,我也愿意分享我最终的解决方案。

# # 展望

  为什么说这是一件有学问的事。对一个公司来说,账不平,都是自己承担的,百花花的银子,能没有学问吗?

  不想卖高价的猪就不是一个好猪。我们在设计系统的时候,永远要站在架构的角度,拿着望远镜看的眼光才行。比方说我在做的对账系统,虽然是在初期,不太会有太多的用户进来,不太会有太多的订单量,明明连上完的订单量都没有,但是我们却要考虑千万级别的设计。需求往往就是这样,不然做技术的哪儿来的好玩。

 

# # 问题清单

  1. 千万级别,我们应该选用哪些技术,用什么技术架构号一点。

  2. 读数据分页的问题。别说千万级别了,就是十万级别的数据,都是一个问题。

  3. 处理数据 OOM 的问题。

  4. 对账流程应该怎么写?如何保证一个全覆盖的对账。

 

# # 我自己的不现实的想法

 1. 情况是这样的,我的需求只有对两张表的的某个字段,就是订单号。 A表出现了,看B表出现没,如果没出现就记异常,反之亦然。如果没有都出现了,则需要对比出现的次数。看出现的次数时候一致。因为只有一个字段,varchar 10 ,我想的是,都查出来以后放在 set 中去。具体想法我贴一个手写的图:

互联网对账结账问题预热_字段

互联网对账结账问题预热_字段_02

   为什么说不现实呢,从数据库一下子取这么多数据,不合适。 都放在内存中不合适。

   目前的业务量没有那么大,我把从A表B 表取出来的一个字段分别放在 两个 HashMap 中去,我计算的占用的内存,大概占用了1.5 个G。 这让我觉得一下子去处理可行,因为减少了很多的麻烦。

  推荐的处理方案是分页去处理。这里我今天先不写。最终敲定再说。

# # 我的感悟

  站在架构的角度上,从数据库的设计上就应该去考虑这件事。

  另外,对账不是一件小事,我觉得应该专门的去设计一下,架构一下,去应对各个维度的对账。

 

 

标签:预热,架构,有太多,对账,问题,级别,结账,学问
From: https://blog.51cto.com/u_15812686/5741213

相关文章

  • mysql 查询生成对账单 当前数据为上条数据累计
    需求思路:期初数据做个对账开始时间之前的数据,查询时以时间为排序条件查询分别做出收款核销期初等基础数据SELECT billdate,CASE WHENtradetypecode='D2'......
  • 对账业务系统实践
     在做对账系统的业务,虽然我只是一个CRUD工程师,但是还是希望能有自己的想法,在摸着石头过河的过程中,自己也是谷歌了对账的方案。 对于对账系统的完整设计方案,其实谷歌出来......
  • Redis-缓存穿透 缓存击穿 缓存雪崩 缓存预热 缓存更新 缓存降级
    在实际生产环境中,缓存的使用规范一直备受重视的,如果使用的不好,很容易遇到缓存穿透、缓存击穿、雪崩等严重异常情景,从而给系统带来难以预料的灾害。为了避免缓存使用不当带......
  • 对账了解
    转自:https://zq99299.github.io/note-book/back-end-storage/01/04.html#为什么总是对不上账1.对账介绍对不上账「是通俗的说法」,它的本质问题是,冗余数据的一致性问题。......
  • 银行对账单PDF一页拆分多页
    一个页拆分多个页,按照流水Stringbank="{\n"+"\t\"bank\":[\n"+"\t\t{\n"+"\t\t\t\"name\":\"中国农业......