一. 服务端-添加启动参数,开启远程jmx服务java允许在启动时添加参数指定jvisual的启动监听配置java -Djava.rmi.server.hostname=47.xx.xx.xx -Dcom.sun.management.jmxremote -Dcom.sun.management.j
当并发请求过多,或者后台任务占用堆外内存过多, 超出了系统内存的容量, linux就会对当前最占用资源的进程进行kill,以保证系统的运行.
1. ThreadLocal原因及优化引用链 : currentThread ++> threadLocalMap <Key,Value> --> ThreadLocal一旦 ThreadLocal 不被强引用,就会被清除;相应的 Key也无法命中 (因为key是ThreadLocal的实例) ,导致 value无法清除;优化 : 将ThreadLocal作为static常量,这时候 所有线程共享同一个Key引用链 : main Thread (应用主进程) ++> ThreadLocal currentThread (web 请求进程) ++> threadLocalMap <Key,Value> --> ThreadLocalKey永远不会被清除,想删就能删value.java 四种引用直接引用 User user = new User(); softRefer (软引用): User softUser = user; user = null; System.gc(); // 可能根据不同gc策略决定 softUser 是否为null;weakRefer(弱引用) : WeakReference<People> reference = new WeakReference<People>(
在动态响应已经实现的情况下, 人们迫切的想要将多个动态响应请求组合起来,并且以人或者会话的机制来区分不同的请求者,已达到多人伺服的效果,所以,它来了