上一页 1 2 3 4 5 6 7 8 9 10 ··· 14 下一页
摘要: 零拷贝机制(Zero-Copy)是在操作数据时不需要将数据从一块内存区域复制到另一块内存区域的技术,这样就避免了内存的拷贝,使得可以提高CPU的。零拷贝机制是一种操作数据的优化方案,通过避免数据在内存中拷贝达到的提高CPU性能的方案。 一、操作系统的零拷贝机制 操作系统的存储空间包含硬盘和内存,而内 阅读全文
posted @ 2020-09-02 21:04 Lucky帅小武 阅读(804) 评论(0) 推荐(0) 编辑
摘要: MINA框架是基于NIO的异步IO框架,上一文已经对MINA的理论及实践做了分析,本文将对于MINA的整体源码实现进行分析。 通过MINA的实际案例可以发现,MINA的IO实现相比于NIO的使用要简单很多,因为不需要关心IO的具体实现,只需要关心具体的IO数据即可。MINA服务端整体步骤一共就四步: 阅读全文
posted @ 2020-08-28 16:39 Lucky帅小武 阅读(572) 评论(0) 推荐(0) 编辑
摘要: 前言: 上一文分析了Java NIO的实现逻辑, 可以发现NIO相比于BIO来说性能提升了不止一个档次,但是Java的NIO使用还有一个弊端,比如Buffer的API设计太过复杂,想要用好NIO就需要对于NIO的各个组件的所以API使用非常熟练才行,对于新手来说入门门槛比较高。 所以如果有一个框架能 阅读全文
posted @ 2020-08-27 09:17 Lucky帅小武 阅读(1489) 评论(0) 推荐(0) 编辑
摘要: 一、IO多路复用 传统的BIO服务器处理客户端IO请求时会为每一个客户端请求都分配一个线程去处理,当客户端数量增加时会导致服务端线程数过多而带来性能隐患,所以迫不得已需要一个线程处理多个客户端请求,也就衍生了多路复用IO模型,Java中的NIO核心就是使用到了操作系统的多路复用IO。 IO多路复用的 阅读全文
posted @ 2020-08-24 20:52 Lucky帅小武 阅读(1030) 评论(0) 推荐(0) 编辑
摘要: 一、操作系统的IO交互模型 现代的操作系统对于存储空间都有一套访问限制控制,所以将存储空间分成了用户空间和内核空间。用户空间负责给应用程序使用,应用程序可以访问用户空间内的数据,但是不可以访问内核空间中的数据;而内核程序可以访问计算机的所有存储空间,包括用户空间、内核空间以及硬件设备上的数据。所以当 阅读全文
posted @ 2020-08-22 11:43 Lucky帅小武 阅读(1338) 评论(2) 推荐(0) 编辑
摘要: 前言 在上一篇文章 Spring源码解析--事务的详细讲解 中主要对Spring中事务的理论和实践作了详细整理,本文将透过现象看本质,从源码的角度入手分析下Spring中事务的实现原理及相关源码解析。 一、事务的相关组件 1.1、事务状态TransactionStatus TransactionSt 阅读全文
posted @ 2020-08-09 22:56 Lucky帅小武 阅读(1142) 评论(0) 推荐(0) 编辑
摘要: Spring为用户封装了JDBC操作,所以就必然会遇到操作数据库的事务问题,而Spring作为强大的全能框架,必然会给用户提供解决方案。 一、Spring中事务的配置方式 Spring中提供了多种配置事务的方式,主要分成两大类:声明式事务和编程式事务 无论使用哪种配置方式,都需要在Spring全局配 阅读全文
posted @ 2020-08-06 19:35 Lucky帅小武 阅读(865) 评论(0) 推荐(0) 编辑
摘要: 前言: 上一篇对于AOP的使用做了简单的介绍,本文开始着重对于AOP的实现原理进行解析,AOP的使用主要是通过自定义标签<aop:aspectj-autoproxy>开启,所以就需要通过该标签入手开始探寻AOP的奥秘 一、<aop:aspectj-autoproxy>标签的解析 Spring的标签分 阅读全文
posted @ 2020-08-02 11:32 Lucky帅小武 阅读(803) 评论(0) 推荐(0) 编辑
摘要: 前言 软件开发的目的是为了解决各种需求,而需求又分成业务需求和系统需求,比如有一个登录功能,那么用户输入密码之后登录就是业务需求,而在用户登录前后分别打印一行日志,这个就是系统需求;又或者用户访问系统的网页获取数据这个是业务需求,而用户每一次访问的时候,都需要进行一次用户权限校验,这个就是系统需求。 阅读全文
posted @ 2020-07-23 22:53 Lucky帅小武 阅读(707) 评论(0) 推荐(0) 编辑
摘要: 前言 众所周知,Spring的核心思想为IOC和AOP,而AOP实际就是在对业务代码进行逻辑增强,以切面的形式将需要增强的代码加入到业务代码前后去执行。而处理业务代码的增强,在Bean的初始化过程中通用采用了AOP设计思想,来对bean进行功能增强。 比如Spring容器加载了bean之后,如果需要 阅读全文
posted @ 2020-07-19 22:19 Lucky帅小武 阅读(1113) 评论(0) 推荐(0) 编辑
上一页 1 2 3 4 5 6 7 8 9 10 ··· 14 下一页