由于安全方面限制,要求我们不能保存用户的信用卡信息,包括信用卡过期时间.
但是可以通过一个 api, 单次调用获得 一个用户的 信用卡过期时间 .
现在要求 在用户信息用卡过期的前三天,给用户发送邮件通知 .
请问如何避免每天大量全库用户调用 API 来实现这个功能 .
(信用卡过期时间 为 年月 eg: 07/21 2021年07月过期 , 一般认为 当月的最后一天为过期时间)
注意
不能存储用户的任何信用卡信息 . 因为 PCI 标准认为,存储一个信息也是存,只要有存储用户信用卡行为,那么必须保证整个环境(服务器,数据库,防火墙巴拉巴拉的 全部都要符合一定级别的标准) . 但是我们无法保证符合这么多标准.所以 用户信用卡信息, 一律不能存储,只能通过 API调用.
不管啥形式的,不管加密还是什么的,,只要有办法推算出具体的过期时间,就不能存了.
真不是我搞事,是真的就有这么奇葩的限定的条件下需求.
楼主意思应该是阅后即焚,过期时间绝对不能持久化存储,所以楼上提到的存储当月是否过期也是不行的。
我目前的思路是这样,具体时间不能存储,但我们可以存储先后顺序:
1、每月也许还是需要扫描一次全库,把用户信用卡过期时间排序,我们不存储过期时间,只存储先后顺序,比如用户A比用户B先过期,A就排B用户前面。实现方法很多,不再赘述;
2、该发提醒邮件时,按上面的顺序开始读API,只要读到用户过期时间不是本月,就立即中止。
当然还有一些细节问题,比如新用户加入时如何添加到轮询中,但这些都不难处理,不再多说。