随笔分类 - java&jvm&scala&python
摘要:在java动态表达式、原生调用、反射性能对比这一篇的基础上,本文我们将比较原生调用和直接通过Unsafe指针操作java对象的性能。 package com.hundsun.jrescloud; import sun.misc.Unsafe; import java.lang.reflect.Fie
阅读全文
摘要:当经常有发生连接池满获取不到连接时,可以开启druid监控,在连接都正常关闭的应用中,不应该出现下列警告,如下: 10:53:39.927 [Druid-ConnectionPool-Destroy--877824563] ERROR com.alibaba.druid.pool.DruidData
阅读全文
摘要:经查,仅2.5.3有这个bug,且我们在用的分支且确实是2.5.3,因为一些原因无法升级。 https://github.com/apache/dubbo/pull/928 https://github.com/apache/dubbo/commit/d98d9977039d45b4ed39d795
阅读全文
摘要:注:在java中当我们讨论NIO/IO的时候,通常指的是网络I/O,不过本文我们主要讨论文件I/O,他们本质上没有太大差别,对于Java NIO的讨论,可以参见java nio深入理解之MMAP与ByteBuffer、DirectBuffer。 在实际工作中,绝大多数业务开发是不需要太多关心I/O机
阅读全文
摘要:同https://www.hellojava.com/a/46883.html解释是驱动jar偶尔错乱的问题,有时候在IDEA下来回在oracle/mysql间切换出现该问题。
阅读全文
摘要:除了https://www.cnblogs.com/zs-notes/p/9456234.html说的外,我们并没有调用clear()操作,调用response.reset();即解决了。
阅读全文
摘要:首先参考nginx配置https并强制http自动跳转到https配置nginx的https证书。 然后在application.properties中加上属性如下: 其他就无需特殊处理可以了,websocket也无须特殊处理。
阅读全文
摘要:log4j:WARN No appenders could be found for logger (freemarker.cache). log4j:WARN Please initialize the log4j system properly.log4j:WARN See http://log
阅读全文
摘要:上面是最简单的打印SQL语句的插件。更详细的插件开发参见https://www.cnblogs.com/zhjh256/p/11516878.html,理解它能够事半功倍。
阅读全文
摘要:先上结论。 功能上:druid sql parser(支持分区、WITH、DUAL等。使用mysql语法解析时,已知oracle的一些操作符会被转为mysql,如|| 转为OR。使用oracle解析器时,union all里面的括号会被移到外面,从而导致可能执行出错) > jsqlparser(不支
阅读全文
摘要:一般来说,gc的停顿时间和活跃对象的堆大小成比例,视gc线程的数量,每1GB可能会停顿1-3秒,且cpu数量通常和gc呈现阿姆达尔定律(Amdahl’s Law),而非我们直观计算的线性变化。如下: 体现在gc中的时候,不同cpu数量下的gc成本如下: 使用不同类型的gc将会在停顿和吞吐量之间发生很
阅读全文
摘要:sharding jdbc 2.x系列详解参见https://www.cnblogs.com/zhjh256/p/9221634.html。 最近将sharding jdbc的配置从xml切换到了spring boot。首先引入依赖: <dependency> <groupId>io.shardin
阅读全文
摘要:如果mybatis中包含了两个相同定义的mapper,启动时出现下列异常: Caused by: java.lang.IllegalArgumentException: Result Maps collection already contains value for com.xxx.BaseRes
阅读全文
摘要:1.String类型“==”比较样例代码如下:package com.luna.test;public class StringTest { public static void main(String[] args) { String str1 = "todo"; String str2 = "t
阅读全文
摘要:java.lang.ClassCastException: com.alibaba.druid.pool.DruidPooledConnection cannot be cast to oracle.jdbc.OracleConnection at oracle.sql.ArrayDescripto
阅读全文
摘要:服务器或服务端进程负载太高都有可能发生上述异常。 ClosedChannelException 一般是由 Netty 主动抛出的,有可能是服务器端主动关闭,也可能是客户端关闭,都会导致写失败。参考:Netty 中 IOException: Connection reset by peer 与 jav
阅读全文
摘要:潜在原因1:服务器sshd限制,可通过如下解决: 潜在原因2:服务器负载过高,超时。在连接处增加超时时间session.setTimeout(60000);默认情况下,socket的超时时间大约为21秒。为了确保尽可能成功,可增加重试机制。
阅读全文
摘要:355: Text Blocks (Preview) JDK 13的特性。简化了大段文本的换行,例如sql或xml段。 Shenandoah GC。 jdk 12作为实验特性引入。 JEP330-启动单文件代码程序 JEP330-启动单文件代码程序(Launch Single-File Source
阅读全文
摘要:最近,为了解耦,把一逻辑从interceptor抽出来,放在aop中处理,需要得到RequestBody。如下:
阅读全文
摘要:对于大部分系统来说,mapdb(而且新版本还依赖于kotlin,增加了不少额外的jar)并无太大价值,而且增加了成本。但是如果一级缓存巨大例如数以十GB级别,或占据了整个JVM的1/2以上,mapdb的价值就会体现出来。正如其官网介绍: MapDB provides Java Maps, Sets,
阅读全文