
开发笔记
文章平均质量分 68
MLi_hb
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
python批量修改centos账户密码
python批量修改服务器密码原创 2024-02-28 12:02:10 · 288 阅读 · 1 评论 -
windows环境搭建ELK
(由于elasticsearch开启了身份验证,所以连接时需要提供用户名、密码或者token,上面提到过elasticsearch默认用户是elastic,但是elastic是超级管理员,不允许直接连接,所以这里可以新建一个用户供kibana使用或者使用token的方式)执行成功后,可以在系统服务中查看到相应的服务,直接【启动】服务即可(可以根据需要设置自启)执行成功后,可以在系统服务中查看到相应的服务,直接【启动】服务即可(可以根据需要设置自启)跳转到bin目录,执行下面的代码将es注册为系统服务。原创 2023-08-30 17:11:22 · 1573 阅读 · 0 评论 -
数值与字符串转换算法
数值、字符串、转换、随机原创 2022-08-25 14:42:11 · 828 阅读 · 1 评论 -
spring-boot jar包瘦身(fat-jar到thin-jar)
目前我司采用内网自建GitLab平台托管代码,fat-jar方式打包,每个应用jar包达到百兆。为了规避云服务带宽不足导致上次jar包缓慢的问题,我们在云服务器上安装了GitLab Runner(:依赖jar可以分离出来,从而保证我们打包出来的应用jar包很小(可能只有几兆甚至更小),而依赖jar在大部分情况下是不会改变的,所以每次发布的时候只需要把应用jar包上传即可。:所有的依赖都打到一个jar里面,导致jar包非常大(一个jar包上百兆),不利用网络传输(特别是云服务器来说带宽资源比较贵);...原创 2022-08-05 09:14:21 · 1093 阅读 · 0 评论 -
spring-session-data-redis session更新失效问题解决
本文目录结构:一、问题复现二、问题排查三、问题解决一、问题复现现在的项目都由原先的单体架构向分布式架构演变,在这个过程中就会存在session共享的问题。单体架构只有一个JVM,所以内存中的数据可以共享,session直接保存在内存中,重启服务会导致session丢失,用户登录失效。分布式架构下基本都存在多个微服务,或者微服务集群,且版本迭代速度快,这些服务有各自的JVM,因此无法实现内存共享,这时就需要借助第三方存储空间()来实现内存共享,并且重启服务不会丢失session,能够保持用户登录态。将s原创 2022-06-16 15:19:13 · 3678 阅读 · 0 评论 -
自定义HttpMessageConverter实现参数加解密
如果对于不理解,可以先看下【HttpMessageConverter逻辑梳理】这篇文章。本文要实现以下三种格式解密:以下一种格式解密:下面对以上四种情况分别展开本文目录结构:一、自定义注解二、封装类型接收参数三、自定义实体类接收参数四、json转实体类五、响应报文转json六、配置自定义converter七、使用一、自定义注解在理解的前提下,实现参数加解密应该是相对容易的事情。有两种加密解密方式:1.针对请求报文进行加密解密;2.针对请求报文中的属性字段进行加密解密。这里我们选择第2中实现方案。下原创 2022-06-15 17:30:27 · 1489 阅读 · 0 评论 -
HttpMessageConverter逻辑梳理
本文目录结构:一、快速了解的机制二、结合解读解析请求报文机制三、结合解读解析响应报文机制四、创建自定义HttpMessageConverter实现参数加解密一、快速了解的机制快速过一遍相关代码(这里只摘取核心的代码,并注释方法作用,其余代码使用【…】省略,感兴趣的话可以自行查看源码)其实核心流程就是根据parameter去匹配resolver,然后将具体的参数解析工作交给匹配到的resolver,resolver再将解析工作委托给converter二、结合解读解析请求报文机制根据paramet原创 2022-06-15 17:27:54 · 1253 阅读 · 0 评论 -
net.sf.json踩坑( net.sf.json.JSONNull cannot be cast to java.lang.String)
最近运营反馈偶尔有一两笔订单出现卡单,无法充值的问题。正好今天不是很忙就和同事一起定位问题。因为是一个比较老的项目,可能当时开发人员没有开发规范,所以对于异常日志仅仅是在控制台打印并没有记录到异常日志,因此现在去定位问题只能通过业务日志和代码入手,这种方法最好的就是采用排查法了,通过排查最终将问题锁定在一段json解析的代码上。由于隐私的问题我这里就自己写段代码复现吧。import net.sf.json.JSONObject;public class JsonTest { public s原创 2020-12-11 14:13:37 · 4921 阅读 · 2 评论 -
spring cloud集成sentinel实现服务限流
Hystrix/sentinel是什么?为什么从Hystrix迁移到sentinel?原创 2020-05-09 18:18:13 · 536 阅读 · 0 评论 -
map空指针排查
前几天线上异常监控检测到一个NullPointerException,于是根据异常栈提示定位到具体发生异常的代码,这里记录下出现异常的原因。先来一段简单的代码来复习问题。public class TestObject{ private Integer status; public TestObject(Integer status){ this.status = status; } public static void main(String[] args){ Map<Tes原创 2020-12-08 14:56:20 · 1394 阅读 · 0 评论