Mon Mar 16
关于类加载器-你应该知道的事类加载器是java语言的核心,容器,OSGI,一些web框架以及一些其他的工具如HotSwap都对类加载器重度依赖。这篇文章将对类加载器使用过程中的常见问题做一个分析。类加载过程每个编写的”.java”拓展名类文件都存储着需要执行的程序逻辑,这些”.java”文件经过Ja
阅读更多
Mon Mar 16
关于类加载-你可能不知道的事当JVM要加载某个类时,使用的是哪个ClassLoader?这里先给出结论:当JVM要加载某个类时,是用加载当前类的ClassLoader加载的用代码阐述就是:newClassA()等价于this.getClass().getClassLoader.loadClass(&
阅读更多

从dubbo启动过程讲起<自定义命名空间>

从dubbo启动过程讲起<自定义命名空间>作为一个优秀的服务治理框架,dubbo确实有很多值得学习的地方,从今天开始我们就一起来抠一抠dubbo里面的诸多细节。因为dubbo整个框架涉及的知识点很广,这里先不全局得去将dubbo。如果你还没接触过dubbo,相对dubbo先有个初步的认识

关于Redis分布式锁对思考

关于Redis分布式锁对思考分布式锁是在分布式环境下对共享资源保护对一种手段,通过redis,我们可以实现分布式锁,但是其中挺多细节需要我们关注。如果要实现分布式锁,最简单对思路是我们通过setgetdel指令:if(getlock==nil){#1setlockfoobar#2...dosomet

一种多版本测试解决方案及实现过程

一种多版本测试解决方案及实现过程背景测试人员不太懂技术,测试时nginx配置容易出错。开发人员在同个项目开发不同分支,每个人开发进度不一致,测试时每次只能测一个小功能点。每次测完之后的版本需要保留,出了问题能够定位到是哪个版本开始出现的。开发人员需要一个工具,能够自动化部署测试应用。功能支持前端项目

从backlog参数到TCP状态

从backlog参数到TCP状态JavaSocket的api可能很多人会用,但是JavaSocket的参数可能很多人都不知道用来干嘛的,甚至都不知道有这些参数。吃饭的路上听到别人聊到backlog参数,于是查了下:backlog用于ServerSocket,配置ServerSocket的最大客户端等

分布式全局不重复ID生成算法

分布式全局不重复ID生成算法在分布式系统中经常会使用到生成全局唯一不重复ID的情况。本篇主要介绍生成的一些方法。常见的一些方式:1、通过DB做全局自增操作优点:简单、高效缺点:大并发、分布式情况下性能比较低有些同学可能会说分库、分表的策略去降低DB的瓶颈,单要做到全局不重复需要提前按照一定的区域进行

ThreadLocal问题记录

ThreadLocal问题记录问题ThreadLocal中set进去的值在线程结束后没有remove掉会造成内存不释放这里说的是指线程结束前不会被gc如果线程执行时间很长或者在线程池中的线程对象验证publicclassThreadLocalDemo{publicstaticvoidmain(Str

List 详解

List详解本文会对List的各种实现基于使用场景,时间复杂度、代码细节、注意事项等维度做分析。Iterator和ListIteratorIterator仅仅定义了三个方法hasNext()next()remove()ListIterator继承自Iterator并新增了hasPrevious()p

jvm内存划分与OOM

jvm内存划分与OOMjvm运行期间起数据区域主要可以分为下面几块:程序计数器,方法区,虚拟机栈,本地方法栈,和堆。而我们平时主要提到的是堆和栈,这里的栈就是指的我们的虚拟机栈。运行过程中,除了程序计数器,其他区域当内存不够用时都可能产生OOM。下面我们将讲一下每种内存区域的作用,并模拟下他们各自产
Your browser is out-of-date!

Update your browser to view this website correctly. Update my browser now

×