Wesley13 Wesley13
4年前
java并发相关(四)——关于synchronized的可重入性,线程切换实现原理与是否公平锁
一、可重入性  关于synchronized的可重入性的证明,我们可以通过A类内写两个同步方法syncA(),syncB()。然后syncA内调用syncB,调用syncA发现代码可正常执行,来证明这一点。  当处于无锁阶段时,划掉,都重入了不可能处于无锁。  当处于偏向锁阶段时,由之前对偏向锁的解释可知,偏向当前线程id是,当前线程可直
Wesley13 Wesley13
4年前
jdbc学习笔记
这里说的是如何正确使用jdbc编程接口,以获得更好的性能.jdbc主要优化有:1.选择正确的jdbc驱动程序2.Connention的优化使用连接池来管理Connection对象3.Statement的优化使用批量更新等4.Result的优化正确的从数据库中get数据等(1)选择正确的jdbc驱动程序:1jdbc
Easter79 Easter79
4年前
springboot2.x配置druid sql监控
  后端接口响应慢,通常我们就需要优化代码和sql,如果项目中使用druid连接池,那么我们可以利用其提供的sql监控功能,来帮助我们快速定位慢sql已经sql执行次数等问题,springboot2之后,durid监控配置变的更简单了,不需要额外的代码,只需要添加配置即可。整个项目配置如下:  依赖<dependency
Wesley13 Wesley13
4年前
IO模型(BIO,NIO,AIO)及其区别
BIO:同步阻塞IONIO:同步非阻塞IOAIO:异步非阻塞IO先弄清楚同步、异步,阻塞、非阻塞概念。io操作分为两部分,发起io请求,和io数据读写。阻塞、非阻塞主要是针对线程发起io请求后,是否立即返回来定义的,立即返回称为非阻塞io,否则称为阻塞io。同步、异步主要针对io数据读写来定义的,读写数据过程中不阻塞线程称为异步io
Stella981 Stella981
4年前
Kafka如何通过精妙的架构设计优化JVM GC问题
目录1、Kafka的客户端缓冲机制2、内存缓冲造成的频繁GC问题3、Kafka设计者实现的缓冲池机制4、总结一下“这篇文章,同样给大家聊一个硬核的技术知识,我们通过Kafka内核源码中的一些设计思想,来看你设计Kafka架构的技术大牛,是怎么优化JVM的GC问题的?1、Kafk
Stella981 Stella981
4年前
DHCP snooping(DHCP监听)
DHCP监听可以防范利用DHCP发起的多种攻击行为,如DHCP中间人攻击,伪造多台设备耗尽地址池DHCP监听允许可信端口上的所有DHCP消息,但是却过滤非可信端口上的DHCP消息,DHCP监听还会在非可信端口上检查DHCP客户端消息ip dhcp snooping vlan 为一个或多个vlan启用DHCP监听ip dhcp snooping 
Stella981 Stella981
4年前
Scala之美
1\.介绍      Scala语言拥有很强的表达能力,语法简洁,很接近人类的思考方式。利用map、flatMap方法做数据转换时,层层递进的演算方式,很像是在画流程图,中间没有停顿,思绪很流畅,不会被无关的变量声明、初始化等琐事打断。Scala中的Future可以让你非常灵活的使用线程,而不需要关注底层的线程管理问题,Scala已经为你处
Stella981 Stella981
4年前
Noark入门之协议映射
0x00消息控制器消息控制器,主要作用就是为每个模块提供消息处理的入口.这里的消息不仅仅是协议,还有内部指令,事件等等逻辑入口,这也是为了响应线程模型作出的一种支撑,只要入口在此消息控制器内,那必然走期望的线程调度。@Controller用于标识一个类为当前模块的消息控制器入口.@Controller(threadGroup
SpringBoot2.0笔记四
当搞全局捕获异常时可以使用到AOP技术,采用异常通知,也可以用AOP搞日志记录在类上面加上@EnableAsyns注解开启异步调用@Asyns,在方法上加上此注解,可以实现异步调用,底层是多线程技术,相当于加上这个注解的方法重新开启了一个单独的线程正常情况下,当A方法调用B方法时,是需要B方法执行完成,有返回结果时等待返回。这是顺序的方式从上到下执行程序,当使用@Asyns注解时,A方法调用B方法,不用等待B方法执行完成,可以直接向下执行,B方法单独开启一个线程,两个方法同时运行。@Va
弹性数据库连接池探活策略调研(一)——HikariCP | 京东云技术团队
调研背景:数据库连接建立是比较昂贵的操作(至少对于OLTP),不仅要建立TCP连接外还需要进行连接鉴权操作,所以客户端通常会把数据库连接保存到连接池中进行复用。连接池维护到弹性数据库(JED)的长连接,弹性数据库默认不会主动关闭客户端连接(除非报错),但一