- 博客(13)
- 资源 (1)
- 收藏
- 关注
原创 静态代理?动态代理?Cglib代理?
有不够细致的地方或者想讨论的可以在评论区留言生活中常见的示例明星的经纪人,第三方无法直接与某明星接触,只能联系经纪人,经纪人可以代为某明星进行一些事情的处理Java中代理常分以下三种 静态代理:核心理解->持有target,编码在target的方法前后进行处理 动态代理:核心理解->代理对象proxy和被代理对象target要实现共同的接口 Cglib代理:核心理解->为被代理对象target生成子类,子类即为proxy 静态代...
2020-05-14 12:02:16
180
原创 什么是SPI机制?
1SPI(Service ProviderInterface)服务提供者接口的意思简单理解:SPI机制为一种服务扩展机制,首先在配置文件中定义好接口的实现类,然后根据这个接口从配置文件中加载该接口的所有实现类,以供使用。开发常见示例: JDBC驱动加载:根据不同的数据库厂商加载不同的JDBC驱动包 SpringBoot的SPI机制:在META-INF下的spring.factories中加上自定义的自动配置,事件监听器或初始化器等 Dubbo的SPI机制:如路由扩展..
2020-05-13 12:20:08
1894
原创 日常开发下的零拷贝?
零拷贝:所谓零拷贝,不是说不拷贝(数据从硬盘到内核态的DMA拷贝是一定会有的),而是说没有CPU拷贝。网络编程的关键,很多性能优化都离不开零拷贝传统IO数据拷贝过程:过程说明: 在读取数据的时候数据一开始从硬盘经过DMA copy到内核态中, 内核态再经过CPU copy到达user buffer(即用户态) 再冲用户态经过CPU copy到socket buffer 后再经过DMA copy到达协议栈(协议栈此处可自行查阅资料) 常见的零拷贝技术:.
2020-05-13 11:59:05
244
原创 什么是OOM?常见有哪些OOM?
OOM:OutOfMemory (内存溢出)/** * Thrown when the Java Virtual Machine cannot allocate an object * because it is out of memory, and no more memory could be made * available by the garbage collector. * * {@code OutOfMemoryError} objects may be constructe
2020-05-13 11:49:39
2206
1
原创 Spring在web项目中的ContextLoaderListener和RequestContextListener
ContextLoaderListener1.定义继承于 ContextLoader 实现 ServletContextListenerpublic class ContextLoaderListener extends ContextLoader implements ServletContextListener { public ContextLoaderListener(...
2019-07-10 11:27:17
344
原创 CAS服务端搭建和结合Springboot搭建CAS客户端验证单点登录
1.背景介绍 什么是CAS单点登录(SSO),在多系统之间用户只需要登录一次就可以访问所有互相信任的系统SSO基础的访问流程:1. 访问服务: SSO 客户端发送请求访问应用系统提供的服务资源。2. 定向认证: SSO 客户端会重定向用户请求到 SSO 服务器。3. 用户认证:用户身份认证。4. 发放票据: SSO 服务器会产生一个随机的 Service Ticket 。...
2019-06-27 15:37:58
2841
原创 Linux定时备份数据库和同步至远程服务器
1.备份数据库1.1sql脚本备份#导出数据库#pwd即root的密码 与-p之前不能空格隔开/usr/bin/mysqldump -u root -ppwd database > database2081218.sql#导入数据库/mysql -u root -p database < database20181218.sql1.2压缩包形式#...
2018-12-18 16:07:35
918
原创 HTTPS握手过程
1.流程示意图2.步骤说明①客户端的浏览器向服务器传送客户端SSL 协议的版本号,加密算法的种类,产生的随机数,以及其他服务器和客户端之间通讯所需要的各种信息。②服务器向客户端传送SSL 协议的版 本号,加密算法的种类,随机数以及其他相关信息,同时服务器还将向客户端传送自己的证书。③客户利用服务器传过来的信息验证服务器的合法性,服务器的合法性包括:证书是否过期,发行服务器证...
2018-12-14 09:15:04
224
原创 JAVA 7个单例模式方法
1.饿汉式 饿汉式可以保证多线程下唯一的实例,getInstance性能也比较高,但是无法进行懒加载。/*** 饿汉式可以保证多线程下唯一的实例,getInstance性能也比较高,但是无法进行懒加载。*/public class Singleton1{ private static Singleton1 instance = new Singleton1();...
2018-12-12 16:05:28
102
原创 Linux 清空文件的5个方法
1. echo: echo 可以输出后面的内容到文件中。$: > filename$ > filename$ echo "" filename$ echo > filename$ cat /dev/null > filename
2018-12-12 15:26:12
170
原创 Linux 自启动加载自定义sh脚本文件,以运行jar项目包为例
1.前提介绍 nohup 命令该命令的一般形式为:nohup command &nohup :表示永久运行& : 表示后台运行 我们在开发中常需要启动长时间运行的程序,需要在关闭ssh连接时,仍然保持程序正常运行,为此我们需要用到nohup命令,当然也可以用screen。比如自己开发好的web项目打包成jar包放到服务器上需要开机自启动的场景。在缺省情况下该作...
2018-12-12 15:12:43
7358
4
原创 数据结构-线性表
1.数据结构存储结构顺序存储结构 特点:由于内存存储地址是连续的,所以在查找方面效率高,删除和插入效率较低链式存储结构 特点:由于内存存储地址是连续的,所以在查找方面效率低,删除和插入效率较高2.栈定义:允许插入和删除的一端称为栈顶,另一端称为栈底,不含任何元素的栈称为空栈,栈又称为后进先出的线性表 栈的经典应用:波兰表达式举例:标...
2018-07-24 10:12:02
105
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人