Spring源码分析-SpringAop什么时候调用jdk动态代理?什么时候调用cglib SPRING AOP中JDK和CGLIB动态代理哪个更快? ...
分类:
其他好文 时间:
2020-05-27 22:02:29
阅读次数:
75
Semaphore介绍 Semaphore(信号量)是用来控制同时访问特定资源的线程数量,他通过协调各个线程,以保证合理的使用公共资源。 Semaphore的简单示例 使用Semaphore来简单模拟数据库连接池 public class Pool { //可同时访问资源的最大线程数 private ...
分类:
其他好文 时间:
2020-05-27 18:47:23
阅读次数:
58
总结一句话:系统调用的本质,通过sc指令触发异常,完成用户态到内核的转换。 展开一些:应用程序调用fork(),fork()是一个glibc函数,该函数的最底层调用sc指令,触发cpu异常,从而完成从用户态到内核态的切换, 内核:在异常处理中完成fork()的内核态处理,然后通过rfi指令返回到用户 ...
分类:
其他好文 时间:
2020-05-27 01:21:00
阅读次数:
91
线程池,既然是个池子里面肯定就装很多线程。 如果并发的请求数量非常多,但每个线程执行的时间很短,这样就会频繁的创建和销毁 线程,如此一来会大大降低系统的效率。可能出现服务器在为每个请求创建新线程和销毁线 程上花费的时间和消耗的系统资源要比处理实际的用户请求的时间和资源更多。因此Java中提供线程池对 ...
分类:
编程语言 时间:
2020-05-24 19:32:47
阅读次数:
63
简介 Spark有3种集群管理器: Standalone Hadoop YARN 又分为yarn client与yarn cluser Apache Mesos 生产环境中一般使用yarn cluser模式 个人理解 yarn主要有两个作用. 一个是创建container以此来分配计算资源 另外一个 ...
分类:
其他好文 时间:
2020-05-24 11:33:26
阅读次数:
64
顶部注释告诉我们的信息 + 一个无界的队列 + 基于优先级堆(Java中的PQ相当于最小堆) + priority queue中的元素的顺序基于Comparable原始的顺序或者由构造时提供的Comparator提供 + priority queue中不能有null元素,有null元素还怎么比大小。 ...
分类:
其他好文 时间:
2020-05-23 20:24:28
阅读次数:
55
java并发包里面的类一直是学习和面试的重点,这篇文章主要是对java并发包的其中一个类AtomicInteger的讲解。从为什么要出现AtomicInteger再到其底层原理来一个分析。 一、从a++说起为什么使用AtomicInteger 我们知道java并发机制中主要有三个特性需要我们去考虑, ...
分类:
编程语言 时间:
2020-05-23 00:29:22
阅读次数:
51
1、SpringMVC拦截器的使用流程 1)、在spring-servlet.xml中配置拦截器信息。 <!-- 调试拦截器--> <mvc:interceptors> <!-- 配置某个拦截器,默认拦截所有请求 --> <!-- <bean class="com.lxy.controller.Fi ...
分类:
编程语言 时间:
2020-05-22 13:07:20
阅读次数:
63
body 的组成结构 body 部分包含了 HEADER、CONTAINER、FOOTER,其中 CONTAINER 部分又包含了 SIDEBAR、CONTENT、QUICK SIDEBAR 几个部分。body部分源码折叠后截图如下: Header 页面顶部 Header contains of l ...
分类:
其他好文 时间:
2020-05-21 19:34:43
阅读次数:
60
顶部注释告诉我们的信息 + ArrayList是实现了List接口的可变长数组(ArrayList的底层是基于数组实现的) + ArrayList允许内部存在null元素 + ArrayList除了不是线程安全的之外,和Vector基本差不多。(如果想使用线程安全的ArrayList:List li ...
分类:
其他好文 时间:
2020-05-20 20:13:49
阅读次数:
54