开发方案和经验技巧
文章平均质量分 92
Java开发者经常会在开发过程中遇到一些小问题,这些问题是很多人经常会犯的错误。给大家总结Java开发中常见的技巧,帮助大家更好的学习和使用java。
BUG指挥官
天下一亩三
展开
-
Hutool实现数据脱敏
数据脱敏是一种通过去除或替换敏感数据中的部分信息,以保护数据隐私和安全的技术。其主要目的是确保数据仍然可以在各种场景中使用,同时保护敏感信息,防止数据泄露和滥用。数据脱敏通常用于处理包含个人身份信息和其他敏感信息的数据集,如手机号、姓名、地址、银行卡、身份证号、车牌号等等。在数据脱敏过程中,通常会采用不同的算法和技术,以根据不同的需求和场景对数据进行处理。例如,对于身份证号码,可以使用掩码算法(masking)将前几位数字保留,其他位用“X”或"*"代替;原创 2023-07-20 17:34:18 · 5958 阅读 · 1 评论 -
CPU飙升处理方案
在架构设计中,可以说缓存无处不在。如果你没有实际解决过类似问题,则可以说一下自己的思路,只要大体思路和方向是对的,那么在遇到类似问题的时候,可以利用网络上的资料去逐步尝试解决。jstack有3个参数,第1个参数是前面记下的 PID,之后加上 grep,紧跟着是转成十六进制数的TID,最后加上 –A和一个数字,这个数字表示输出日志的行数,至此就可以直接打印出具体的异常信息了。CPU利用率过高,说明当前服务器要处理的指令比较多,当CPU忙不过来的时候,指令的运行效率自然就会下降,用户的感受就是程序响应变慢了。原创 2023-07-13 14:53:20 · 325 阅读 · 0 评论 -
用Arthas快速定位线上JVM问题!
对于FullGC那一定不会陌生,一般来说会采用横切FullGC前置拦截(-XX:+HeapDumpBeforeFullGC)和后置拦截(-XX:+HeapDumpAfterFullGC),导出FullGC发生前后的heap dump文件,以便于我们进行FullGC原因的分析和定位。原创 2023-07-13 14:40:55 · 2938 阅读 · 0 评论 -
Redis的4种分布式限流算法
对四种限流算法进行了分布式实现,采用了非常好用的Redission客户端,当然我们也有不完善的地方:并发处理采用了分布式锁,高并发情况下,对性能有一定损耗,逻辑最好还是直接采用Lua脚本实现,来提高性能可以提供更加优雅的调用方式,比如利用aop实现注解式调用,代码设计也可以更加优雅,继承体系可以完善一下没有实现限流的拒绝策略,比如抛异常、缓存、丢进MQ打散……限流是一种方法,最终的目的还是尽可能保证系统平稳。原创 2023-07-13 14:23:59 · 2846 阅读 · 0 评论