- 博客(212)
- 收藏
- 关注
原创 MySQL - on duplicate key update 问题
其实最好还是用redis来做,比较快,mysql也可以,就是在有数据保存的前提下进行保存咯。
2024-12-27 16:29:58
382
原创 Mongodb - Timeout waiting for a pooled item after 120000 MILLISECONDS
问题的解决其实并不复杂,麻烦的是需要定位到是哪里占用的频繁资源.这就得一步步走了,具体的思路有以下几个方面1: 排查慢日志语句,根据语句做相关的处理2: 查看哪里报的异常,根据异常去进行反向定位处理3: 对业务进行分析查看了,写的时候尽量小范围查询,并且要加索引。
2024-12-26 09:54:41
311
原创 MyBatis-For input string: “oqm“ 异常
问题的本质就是因为少了无参构造器引起的,有参那个第四个参数刚好是数字类型的,openId为第四个肯定是设置不进去的虽然问题并不复杂,但是下次如果看到类型的错误就多了一个思考的方向,也算是一个小经验了。
2024-06-19 10:27:40
1093
原创 Docker引起的漏洞问题
在使用公网服务器时要注意安全问题,以前比较常见的是redis不配置密码也会引起这种挖矿问题,这次是docker没有配置密钥或者暴漏了以前病毒植入,这方面的知识可以研究研究。
2024-06-11 16:50:06
1200
7
原创 游戏研发(策略+sass+回调模式)
其实用了很多设计模式后发现很多时候都跟抽象类、策略、模板等基本模式脱不了关系,个人认为设计模式绝对是有利于编码的,因为在思考的过程中会自然的把一些可以通用的逻辑封装起来,比如getGame(), 以及appKey和rootPath的获取如果有合适的场景,也建议大家可以考虑一下如何进行设计,在以后的开发中会带来比较大的变化,比如在下一个游戏的对接,只需要实现子类即可了。
2024-06-06 14:25:36
798
1
原创 设计模式使用(成本扣除)
订单金额:用户下单时支付的金额,这个最好理解产品分成:也就是跟其他人合做以后我方能分到的金额,举个例子,比如用户订单金额是 100 块,我方的分成是 80%,那么也就是我方能得到 80 块联运商分成:跟产品分成类似,就是说我方还需要分去一部分的前给联运商(比如广告商,巨量,快手等),一般是不高的,也就10%左右综合例子:订单金额 100 块,产品分成 80%,联运商分成10%,那么最终我方得到的金额就是如下的计算公司 100 * (80 -10)% = 70 块。
2024-05-28 14:19:57
1406
1
原创 Java Maven项目实现自动化部署到Docker上
目前项目是采用docker部署的, 由于需要新增一个微服务,最终是实现自动推送到远程的docker上,所以就顺便记录一下操作步骤。
2024-03-20 20:41:58
989
原创 记一次生产jvm oom问题
这里是我模拟的一个情况,可能比较好定位,真实的业务情况可能稍微复杂点,但是业务就是这么个事,延时任务里面对象一瞬间过多导致内存溢出了。
2024-02-24 20:06:47
1279
3
原创 @Autowired与 @Resource注解引起的问题
这个问题目前看起来并不复杂,甚至有人觉得没什么影响,那是因为微服务自调用的博客我还没写,看不出问题的严重性.这个知识点可能很多人知道,但是还是建议大家谨慎对待最后再说下为什么要用 @Resource, 那是因为spring官方已经不建议使用@Autowired,所以我一直用的是@Resource, 有兴趣的可以自行百度,文章较长.
2024-02-20 18:50:56
970
原创 微信虚拟支付(米大师)回调配置
虚拟支付也称为米大师支付,是微信提供的一种虚拟币,用户通过微信支付虚拟币成功后需要回调我们后台的接口处理业务。本篇文章就是在说明怎么配置这个回调的。
2024-01-26 20:48:58
1878
1
原创 中奖记录设计(策略+模板)
主要采用的就是策略模式+模板模式,意义分别体现在模板模式: 把基本的校验信息,比如活动是不是存在,角色是不是存在,角色是不是有参与某个活动逻辑都放在AbstractRebateActivityRecordHandler类中进行处理,这样的好处是其他几种中奖时前置判断条件就被统一了,假设以后要调整可以统一调整即可策略模式: 把每种中奖逻辑单独用类封装起来,自己去实现要过滤的逻辑相互不影响,也更容易找到对应的地方进行修改,后续如果有其他的中奖记录根据这种类型添加实现类即可。
2023-12-21 15:52:28
1175
原创 jackson序列化与反序列化
*** zxc_user* description: 把时间格式转为时间戳返回----以后就尽可能用时间戳吧*/@Overridetry {//时间戳if(value!= null) {继承JsonSerializer覆盖方法进行处理即可,其次就是使用其实并不复杂,主要分为两步1. 继承JsonSerializer处理对应的数据类型2. 在返回类上面指定 @JsonSerialize(using = DateToStampEnumSerializer.class)进行处理。
2023-12-20 16:33:37
596
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人