随笔分类 -  业务逻辑

1 2 3 4 下一页
mongodb数据库被攻击后分析排查,恢复数据操作
摘要:mongodb数据库被攻击后恢复操作 1.排查定位问题:mongodb linux连接,查询数据真实情况mongodb linux连接,查询数据真实情况,数据记录数及排查mongodb日志关键字https://www.cnblogs.com/oktokeep/p/19647943 mongodb.l 阅读全文
posted @ 2026-02-27 17:30 oktokeep 阅读(1) 评论(0) 推荐(0)
数据安全业务操作基本原则,Broken pipe,伪代码,生成xls下载文件响应返回
摘要:数据安全业务操作基本原则,Broken pipe,伪代码,生成xls下载文件响应返回 1.查询数据的原则,不要跨度时间太长。 比如尝试获取1年的数据,业务报表等不支持,测试的步骤:1. curl客户端导出xlsx失败 --connect-timeout 30 --max-time 300 测试发现这 阅读全文
posted @ 2025-11-26 15:58 oktokeep 阅读(25) 评论(0) 推荐(0)
Java实现业务数据报表的邮件定时发送功能
摘要:Java实现业务数据报表的邮件定时发送功能 1.定义apollo的邮件收件人的邮箱地址apollo: @Value("${scooterDataReportEmailAddress}") private String scooterDataReportEmailAddress; 2.定义定时任务的执 阅读全文
posted @ 2025-11-26 11:56 oktokeep 阅读(5) 评论(0) 推荐(0)
静态方法 静态logger log备份不覆盖的思维方式
摘要:静态方法 静态logger 1.静态对象打印日志,接口入参重要性,日志,文件,上传图片等资源文件名不同,形成历史记录,排查问题。而不是覆盖原始文件。 2.静态对象private static Logger logger = LoggerFactory.getLogger(PdfToImage.cla 阅读全文
posted @ 2025-10-14 14:13 oktokeep 阅读(9) 评论(0) 推荐(0)
Java实现业务数据报表的邮件定时发送功能
摘要:Java实现业务数据报表的邮件定时发送功能 1.定义apollo的邮件收件人的邮箱地址apollo: @Value("${scooterDataReportEmailAddress}") private String scooterDataReportEmailAddress; 2.定义定时任务的执 阅读全文
posted @ 2025-10-13 18:32 oktokeep 阅读(14) 评论(0) 推荐(0)
Apollo的env端点暴露导致安全扫码漏洞修复处理
摘要:Apollo的env端点暴露导致安全扫码漏洞修复处理 1.背景 检测分析发现,目标系统存在远程代码执行漏洞。 漏洞链接地址: http://apollo.mytest.xxx:8080/env (外网IP为了配置域名,内网IP域名解析不了,如果是ip访问。没走nginx,如果走域名访问,可以在ngi 阅读全文
posted @ 2025-05-28 11:32 oktokeep 阅读(212) 评论(0) 推荐(0)
equals字符串比较失效-推测是服务器字符不一致等原因导致比较失败
摘要:equals字符串比较失效-推测是服务器字符不一致等原因导致比较失败 分析:有一半一半的可能性,推测估计是字符的比较在某个服务上面有问题。最下面一个else才是充值,逻辑上在第二个else if 里面是根据字符“PLUS会员” 来判断的。进入这个才对,从线上是日志分析就没有进入。解决方案:简化独立写 阅读全文
posted @ 2025-03-04 18:40 oktokeep 阅读(37) 评论(0) 推荐(0)
通过模拟发送mq消息来测试实现-依据支付凭证不能重复入账
摘要:通过模拟发送mq消息来测试实现-依据支付凭证不能重复入账 1.依据MQ消息的json串转换为md5记录,作为收银台表的唯一约束。如果支付状态发生变化,则payMd5会跟随着变化。 2.消息流程客户支付成功 > 微信支付微服务接收到微信支付的异步通知回调通知 > 发送给支付网关微服务(发送mq消息在本 阅读全文
posted @ 2024-12-12 19:29 oktokeep 阅读(56) 评论(1) 推荐(0)
Apollo配置中心及配置接口的统一化
摘要:Apollo配置中心及配置接口的统一化 1.配置中心的原则:集中在一个微服务中配置,避免在多个微服务中配置,否则会出现混乱。或者配置发生变更,引起修改配置很容易遗漏,修改不全等。 2.订单的价格配置单价,折扣等配置数据,需要提供给其他的微服务来使用,是通过提供配置接口来提供,是出口数据规范化,从统一 阅读全文
posted @ 2024-12-09 18:46 oktokeep 阅读(55) 评论(0) 推荐(0)
模板化-上线文件更新
摘要:考虑上线前后存在时间差,配置和代码的时间差。 【关键】1.先执行dms,sql 然后刷新上线配置服务。可以确保老的配置不影响。同时新的服务一旦上线,就可以使用新的配置了。2.apollo的两个binlog配置已经加上过滤。 线上执行数据库表的更新binlog,需要屏蔽掉,线上数据的大批量同时触发,会 阅读全文
posted @ 2024-11-28 18:48 oktokeep 阅读(23) 评论(1) 推荐(0)
总费用分摊思路或收款补付的总金额分摊补付记录的支付状态思路
摘要:总费用分摊思路或收款补付的总金额分摊补付记录的支付状态思路 1.考虑到多次修改多次需要补付的情况,需要根据总金额来判断,记录数倒序排序,根据金额来截取。最后一条的结果为0,如果金额不为0,则不返回该清单列表。2.修改订单操作,先报价,提示报价信息,然后修改。如果直接修改,则跳过了报价接口的调用。但是 阅读全文
posted @ 2024-11-28 18:45 oktokeep 阅读(38) 评论(1) 推荐(0)
接口推送方案及接口超时问题解决
摘要:接口推送方案及接口超时问题解决 报错信息:I/O error on POST request for "http://IP:端口/api接口名称": Read timed out; nested exception is java.net.SocketTimeoutException: Read t 阅读全文
posted @ 2024-11-28 18:44 oktokeep 阅读(334) 评论(0) 推荐(0)
服务重启了,如何保证线程池中的数据不丢失方案 - 提前做持久化
摘要:服务重启了,如何保证线程池中的数据不丢失方案 方案:提前做持久化 1.用户请求过来之后,先处理业务逻辑1,紧接着向DB中写入一条任务数据,状态是:待执行。2.然后将查出的任务提交到线程池中,由它处理业务逻辑2。3.处理成功之后,修改任务的待执行状态为:已执行。 需要注意的是:业务逻辑2的处理过程,要 阅读全文
posted @ 2024-11-28 18:39 oktokeep 阅读(85) 评论(0) 推荐(0)
模板化-上线文件的流程步骤
摘要:1.服务和分支,避免上线服务遗漏,及定义上线的优先级先后顺序。 2.apollo配置,检查上线的pro环境的apollo配置,否则项目启动因为缺少配置会启动报错。 3.SQL DMS,上线之前先执行脚本,否则会因为缺少字段而导致系统报错。flow系统加上客户和商户的会员号字段需求,上线之前忘记了。 阅读全文
posted @ 2024-09-07 15:45 oktokeep 阅读(38) 评论(2) 推荐(0)
外部请求,中断测试,结算费用,带出logs参数,else条件避坑,微信小程序测试环境体验版本
摘要:1.合同到期,数据也落库,存入到无效数据表中。正常的业务场景。 但是如果考虑到合同过期后,没有按时的续签,那么这段时间段内的数据,实际上是需要恢复的。 原则:外部第三方请求参数,返回获取的数据,都需要保持入库,有的数据需要考虑恢复和排查问题。 2.计算费用接口/方法体,考虑有值的情况(已结算) 正常 阅读全文
posted @ 2024-09-07 15:27 oktokeep 阅读(23) 评论(0) 推荐(0)
api接口数据安全格式转换-DES,AES,SM2
摘要:api接口数据安全格式转换-DES,AES,SM2 1.数据格式{"orderNo":"",//其他的业务数据} 返回{"sign":"","params":"","timestamp":""} 实现接口的加密传输,数据安全规范。 返回DEMOsign=8E4D93D831652C94473994D 阅读全文
posted @ 2024-08-11 11:37 oktokeep 阅读(212) 评论(1) 推荐(0)
feign jar 提供的接口不要随便删除了,对调用方有影响
摘要:feign jar 提供的接口不要随便删除了,对调用方有影响 1.底层的feign提供方提供的方法,尽量新增,不做删除操作,考虑到调用方会收到影响。 2.提供的测试方法,仅仅在测试阶段使用,不要带入到线上环境。 另外测试的方法名称可以在方法上带上明确的标识,比如:test结尾的后缀等。 demo: 阅读全文
posted @ 2024-08-09 07:30 oktokeep 阅读(20) 评论(0) 推荐(0)
中台接口的讨论 比如买菜和做饭的逻辑
摘要:中台接口的讨论 比如买菜和做饭的逻辑 1.中台接口提供的是一个能力,而不是一个具体的业务逻辑。具体的业务逻辑交给调用方来处理。2.中台提供的是原材料,而不是成品,成品由调用方来组织处理。3.中台接口更多的是大而全的,不针对某一特定的业务。需要考虑该接口能力的扩展性。4.如果中台过多的考虑到具体的业务 阅读全文
posted @ 2024-08-09 07:20 oktokeep 阅读(30) 评论(0) 推荐(0)
restful接口Map接收参数的两种方式(x-www-form-urlencoded方式和JSON)
摘要:restful接口Map接收参数的两种方式(x-www-form-urlencoded方式和JSON) JSON数据格式,但是是用Map来接收的,同对象来接收是一样的。Map接收参数灵活性,特别是针对需要验签的接口。DEMO: @PostMapping("/package/req") public 阅读全文
posted @ 2024-07-30 08:01 oktokeep 阅读(141) 评论(0) 推荐(0)
项目中的公共方法调用原则及调用的前置条件判断
摘要:项目中的公共方法调用原则及调用的前置条件判断 1.商品单价,结算前更新商品单价,可能商品的单价是随着会变化的。比如:油价和电价单价。在更新商品单价之前,需要判断该订单是否已经结算。 原则上:订单一旦结算后,则不允许做更新单价的操作。且对外展示结算后的总价,单价等信息,在结算前不展示,而是以结算后的最 阅读全文
posted @ 2024-07-30 07:52 oktokeep 阅读(29) 评论(0) 推荐(0)

1 2 3 4 下一页