Skip to content

面试速答(先看这里)

**一句话结论:**3年经验,985本,2份工作(0.5+2.5),电商财务系统,财报相关,账户管理,银企直联,介绍下这个项目的主要流程?

60秒标准回答:

3年经验,985本,2份工作(0.5+2.5),电商财务系统,财报相关,账户管理,银企直联,介绍下这个项目的主要流程?直接接的银行?大额支付

银行的对接怎么做的?网关、前置机(盾、证书),如何能高效的对接银行?网关,模板 + 策略

和银行的接口如何保证安全?单号幂等、异常 case ,核对

**答题顺序:**结论 → 原理/机制 → 关键流程 → 场景与取舍 → 易错点

回答主线:

  • **要点1:**银行的对接怎么做的?
  • **要点2:**和银行的接口如何保证安全?
  • **要点3:**定时任务框架,多久调度一次?
  • **要点4:**如果后面表中数据变大,扫表慢,如何优化?
  • **要点5:**项目中什么地方做了限流?

**记忆锚点:**redis+aop → finally → code → OOM → QPS → 一个接口什么情况用漏桶做限流什么情况用令牌桶

易错提醒:

  • code , bizno , id ,时间,账号,银行,日期,状态( INIT 、审批、支付中、支付成功、支付失败),有用状态机么?

加分表达:

  • 如果数据量更大的话,这个方案会有什么问题么?
  • 如果后面表中数据变大,扫表慢,如何优化?
  • 没有 如果 finally 还没来得及执行,机器就挂了。

追问准备:

  • 3年经验,985本,2份工作(0.5+2.5),电商财务系统,财报相关,账户管理,银企直联,介绍下这个项目的主要流程?
  • 银行的对接怎么做的?
  • 网关、前置机(盾、证书),如何能高效的对接银行?
  • 网关,模板 + 策略, 和银行的接口如何保证安全?

面试者背景 ​

> 3年经验,985本,2份工作(0.5+2.5),电商财务系统,财报相关,账户管理,银企直联,介绍下这个项目的主要流程?直接接的银行?大额支付。 > > 银行的对接怎么做的?网关、前置机(盾、证书),如何能高效的对接银行?网关,模板**+策略, > > **和银行的接口如何保证安全?单号幂等、异常case**,核对。** > > 银行的大额通道下班了怎么办?定时任务查询,对接时有遇到过一些问题么? > > 定时任务框架,多久调度一次?5分钟,支付单表多少数据?百万级。如果数据量更大的话,这个方案会有什么问题么?这张表是怎么建的索引?状态**+发起支付时间,为什么要按照银行扫? > > 如果后面表中数据变大,扫表慢,如何优化?分片扫、归档、分表, > > 知道分片任务的原理?如何实现多线程同时扫表?按照银行, > > 项目中什么地方做了限流?哪个接口做了限流?咋实现的限流?redis+aop,有时间窗口吗?没有 > > **如果finally还没来得及执行,机器就挂了。** > > 为啥不用成熟的限流算法?漏桶、令牌桶区别?突发流量、令牌桶可以处理突发流量的原因是啥? > > 一个接口,什么情况用漏桶做限流、什么情况用令牌桶? > > **限流的数字是怎么定的?日常QPS**?** > > 你们和银行是怎么对账的?定时任务扫银行拉流水???支付单**&银行流水、支付单&上游, > > 如果你没有支付单,但是银行有流水呢?银行账单,落库吗?然后如何核对的? > > 日切时间点,对账不一致怎么办?没有日切问题。如果有这种问题,怎么办呢? > > 对账这部分,你有什么最佳实践么?多方核对、及时告警、人工处理、 > > 做过实时核对吗?代码中反查? > > 支付单是你设计的吗?有哪些设计的好,哪些有优化空间。支付单怎么设计的?code,bizno,id,时间,账号,银行,日期,状态(INIT、审批、支付中、支付成功、支付失败),有用状态机么? > > **支付单表和哪些表有关联关系?银行流水表(银行流水号、账号、银行code**、时间、借贷方向、)。为什么不直接冗余到支付单上,要创建一张表?附言、** > > 财务业务项关的做过哪些?关帐系统、发票系统, > > **介绍下什么是借贷记账法。**ABS > > 工作中遇到过哪些线上问题么?消息堆积如何处理? > > 一个JAVA进程突然挂了,可能什么原因?OOM?OOM了进程一定会挂么?

题目解析 ​

> 银行的对接怎么做的?网关、前置机(盾、证书),如何能高效的对接银行? > > 和银行的接口如何保证安全?

📄 ✅和其他公司做数据交互时,有什么需要注意的?

打开文档:✅和其他公司做数据交互时,有什么需要注意的?

> 定时任务框架,多久调度一次?5分钟,支付单表多少数据?百万级。如果数据量更大的话,这个方案会有什么问题么?这张表是怎么建的索引?状态**+**发起支付时间,为什么要按照银行扫? > > 如果后面表中数据变大,扫表慢,如何优化?分片扫、归档、分表, > > 知道分片任务的原理?如何实现多线程同时扫表?按照银行,

📄 ✅定时任务扫表的缺点有什么?

打开文档:✅定时任务扫表的缺点有什么?

📄 ✅xxl-job 支持分片任务吗?实现原理是什么?

打开文档:✅xxl-job 支持分片任务吗?实现原理是什么?

> 项目中什么地方做了限流?哪个接口做了限流?咋实现的限流?redis+aop,有时间窗口吗?没有 > > 如果finally还没来得及执行,机器就挂了。 > > 为啥不用成熟的限流算法?漏桶、令牌桶区别?突发流量、令牌桶可以处理突发流量的原因是啥? > > 一个接口,什么情况用漏桶做限流、什么情况用令牌桶? > > 限流的数字是怎么定的?日常QPS?

📄 ✅什么是限流?常见的限流算法有哪些?

打开文档:✅什么是限流?常见的限流算法有哪些?

📄 ✅什么是滑动窗口限流?

打开文档:✅什么是滑动窗口限流?

📄 ✅漏桶和令牌桶有啥区别?

打开文档:✅漏桶和令牌桶有啥区别?

📄 ✅什么是压测,怎么做压测?

打开文档:✅什么是压测,怎么做压测?

📄 ✅finally中代码一定会执行吗?

打开文档:✅finally中代码一定会执行吗?

> 你们和银行是怎么对账的?定时任务扫银行拉流水???支付单**&银行流水、支付单&**上游, > > 如果你没有支付单,但是银行有流水呢?银行账单,落库吗?然后如何核对的? > > 日切时间点,对账不一致怎么办?没有日切问题。如果有这种问题,怎么办呢? > > 对账这部分,你有什么最佳实践么?多方核对、及时告警、人工处理、 > > 做过实时核对吗?代码中反查?

📄 ✅怎么做数据对账?

打开文档:✅怎么做数据对账?

> 工作中遇到过哪些线上问题么?消息堆积如何处理? > > 一个JAVA进程突然挂了,可能什么原因?OOM?OOM了进程一定会挂么?

📄 ✅RocketMQ消息堆积了怎么解决?

打开文档:✅RocketMQ消息堆积了怎么解决?

📄 ✅Java进程突然挂了,可能是什么原因?

打开文档:✅Java进程突然挂了,可能是什么原因?

📄 ✅Java发生了OOM一定会导致JVM 退出吗?

打开文档:✅Java发生了OOM一定会导致JVM 退出吗?