随笔分类 - 2-原理篇
摘要:锁 据jvm内存模型,线程共享主存,各变量同步不及时,造成线程不安全,为此java提供了锁来解决线程不安全。 乐观锁 从理论上讲,乐观锁假设各线程不同时修改变量,仅仅通过版本号,时间戳去保证线程安全。java提供的CAS(aompareAndSwap)也是乐观锁的一一种实现 CAS:比较与交换,有3
阅读全文
摘要:多线程 线程实现方式 继承thread类 实现runnable接口 通过线程池实现资源合理利用-核心类 ThreadPoolExecutor 常见线程池 Executors.newCachedThreadPool(); 缓存线程池,无限大,new ThreadPoolExecutor(0, Inte
阅读全文
摘要:jvm 内存管理 方法区(线程共享) 存放常量、元数据信息、class文件信息 堆(线程共享) java中内存最大的一块区域, 存放对象实例,对象实例主要分对象头、实例数据,对象头包括自身运行时的数据(锁状态标记,gc分代年龄,hash码)与元数据指针,实例数据包括自定义字段、父类继承的字段 虚拟机
阅读全文
摘要:Map HashMap jdk1.8 数组+链表+红黑树(Node<K,V>[] table;TreeNode),增删查的效率高;无序的,不可重复的,线程不安全的散列表 源码分析:(默认容量16,平衡因子0.75,阈值12=容量*平衡因子,所以平衡因子越大,扩容次数少,越小,越易扩容) 在插入时进行
阅读全文
摘要:Collection java集合都继承了Collection接口,实现常用的方法 List 有序、可重复的列表,常用有ArrayList、LinkedList ArrayList 底层数组,查询快O(1),增删慢,因为需要移动数据,且线程不安全的;源码的结构是 Object[] elementDa
阅读全文
摘要:nginx 一个高性能http web服务器,具有反向代理、负载均衡的功能 功能 wab服务器 当作前端服务器,如vue打包的dist静态文件,启动之后如本地启动的前端项目 一个简单的项目架构 nginx+tomcat+mysql 即可 反向代理 代理后端服务器,拦截指定url 负载均衡 轮询:按请
阅读全文

浙公网安备 33010602011771号