![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
项目总结
wzz没bug
Hello World! Hello java!
展开
-
项目刚启动,cpu占用率高但是又执行缓慢的问题
项目刚启动时,发现代码执行的巨慢,通过查看线程发现:有一个C2 compileThread0的线程占用了很大的cpu。进一步查询发现了一个jvm的特性,C2 Compiler 是JVM在server模式下字节码编译器,JVM启动的时候所有代码都处于解释执行模式,当某些代码被执行到一定阈值次数,这些代码(称为热点代码)就会被 C2 Compiler编译成机器码,编译成机器码后执行效率会得到大幅提升。原创 2023-03-23 09:46:24 · 965 阅读 · 1 评论 -
关于项目里分布式锁的坑
分布式锁原创 2022-10-10 15:13:38 · 185 阅读 · 0 评论 -
关于技术遇到的各种坑
1. Timestamp从程序转到数据中sql报错原因是程序中将Timestamp写成了TimeStamp,导致倒错包了,结果转不过去2. 程序md5加密,在eclipse的tomcat环境和tomcat的环境中结果不一致原因是md5程序没有设置编码,导致两个环境运行不一致,如下图所示:原创 2017-05-23 17:12:55 · 312 阅读 · 0 评论 -
关于项目优化
项目优化毫无止境,但是常用的一些,可以有很多出众的效果。首先是功能服务模块化,独立部署。微服务带来的便利很多很多。具体的优化可以分块说明。借助网上的一些优秀文章,以及项目经历过的坑,简单总结下。分离技术1. 模块分离监控服务,日志服务,消息服务等。业务分开开发和部署。2. 数据库读写分离对于大部分业务,都是读多写少,可以充分利用分库的资源。3. 数据库按照业务细分按照主要业务拆分不同的数据库,结合...原创 2018-06-27 16:16:03 · 342 阅读 · 0 评论 -
关于项目总结
关于常量在代码中出现数字或者具体的字符串,绝对是一件不好的事情。但是如果业务复杂,常量很多,那么怎么组织常量又是一个问题。其中有两个问题要考虑,第一个是命名。如果模块很多,那么为了区分模块中某个业务下的某个常量,常量名称会边的巨长,显得很臃肿。第二个是常量的聚合。如果常量很多,可能会有很多常量是按需才写的,导致表达同一意义的常量分布在很多地方,如果之后阅读代码,就完全搞不清楚某处的数据(比如状态)...原创 2018-06-27 16:17:05 · 286 阅读 · 0 评论 -
关于雪花算法全是偶数的问题处理
1. 问题描述生成的id全是偶数的2. 问题发现由于跨毫秒后,最后的sequence累加就会清零,导入末位为偶数。如果id生成不频繁,则生成的就是全是偶数3. 解决主要的根本就在跨毫秒清零,如果在跨毫秒时候sequence不清零,实际上每次生成id时,时间毫秒在增加,sequence也在增加,也是不会重复的。所以,索性去掉这一块同时由于sequence = (sequenc...原创 2018-12-10 11:17:26 · 4602 阅读 · 8 评论 -
面试题整理
数据库 四大特性: Atomicity原子性 Consistency一致性 Isolation隔离性 Durability持久性 事物的并发问题 脏读:事物A读取了事物B更新的数据,然后B回滚才做,那么A读到的是脏数据 不可重复读:事物A多次读取同一数据,事物B再事物A多次读取过程中,对数据更新并提交,导致事物A多次读取到的结果不一致。 ...原创 2019-02-15 16:26:59 · 243 阅读 · 0 评论