- 博客(14)
- 收藏
- 关注
原创 垃圾回收 GC学习
判断对象为垃圾的算法 引用计数算法 优点:执行效率高,程序执行受影响较小。 缺点:无法检测出循环引用情况,导致内存泄漏。 可达性分析算法 垃圾回收算法 标记清除算法 问题:内存碎片问题 复制算法 标记整理算法 分代收集算法 GC 分类 Minor GC 大部分是指年轻代的收集 Full GC 大部分是指老年代的收集 Major GC 大部分时候和Full GC是等价的...
2019-08-23 11:25:17 151
原创 Servlet 生命周期,Bean的生命周期
Servlet 生命周期 Servlet 通过调用 init () 方法进行初始化。 Servlet 调用 service() 方法来处理客户端的请求。 Servlet 通过调用 destroy() 方法终止(结束)。 Spring 中Bean的生命周期 实例化bean对象(通过构造方法或者工厂方法) 设置对象属性(setter等)(依赖注入) 如果Bean实现了BeanNameAware接...
2019-08-14 17:18:38 630
原创 redis实现分布式锁
分布式锁解决的问题 互斥性 安全性 死锁 容错 redis实现分布式锁的 使用 SETNX key value 并通过 expire key seconds 解决长期有效问题 这样不好的地方是原子性得不到满足 更好的是使用 set key value [EX seconds] [PX milliseconds] [NX|XX] ( redis 2.6.12版本开始就可以使用) ...
2019-08-12 17:41:35 117
原创 redis应用从海量key里查询出某一固定前缀的key
留意细节 数据规模,问清楚边界 如果数据太多 keys 指定一次性返回所有匹配的key 键的数量过大会使服务卡顿 则使用 scan (游标) match 匹配值 count (建议数量) ...
2019-08-12 16:21:22 670
原创 redis的基本类型和其他特性
Redis的基本类型: String:基本类型,二进制安全 Hash:String元素组成的字典,适合用于存储对象 List : 列表,按照String元素插入顺序排序 set :String 元素组成的无序集合,不允许重复 sorted set : 通过分数来为集合中的成员进行从小到大的排序 hyperloglog :用于计数 GEO :用于存储计算地理位置 ...
2019-08-12 15:58:51 111
原创 redis快的原因
redis 为什么很快可以达到100000 QPS 完全基于内存,绝大部分请求是纯粹的内存操作,执行效率高 数据结构简单,数据操作也简单 主线程是单线程的结构,可以处理高并发,多核可以启用多个实例 使用I/O的多路复用保底使用select 不同环境下使用更高效的多路复用 ...
2019-08-12 15:44:44 210
原创 redis 和 Memcache ,MongoDB 的区别
Redis 数据类型丰富 支持持久化 支持主从 支持分片 memcache 支持简单数据类型 不支持持久化 不支持主从 不支持分片
2019-08-12 15:44:23 118
原创 Mysql中FULL JOIN实现
Mysql实现查询没有关联的项 SELECT * FROM user1 a LEFT OUTER JOIN test b ON a.id = b.id UNION SELECT * FROM user1 a RIGHT OUTER JOIN test b ON a.id = b.id 通过 LEFT OUTER JOIN,RIGHT OUTER JOIN,UNION 实现 ...
2019-08-09 17:52:39 510
原创 Mysql数据库锁
Mysql数据库锁 MyISAM 和 InnoDB 关于锁方面的区别是什么 MyISAM 表级锁 适合频繁统计count语句 对数据增删改频率不高,查询非常频繁 没有事物 InnoDB 支持行级锁,也支持表级锁 数据增删改频繁 可靠性要求高,支持事物 数据库锁的分类 粒度 : 表级锁,行级锁,页级锁 锁级别: 共享锁,排它锁 加锁方式: 自动...
2019-08-09 15:18:23 99
原创 索引结构,索引类别,慢查询优化
索引 索引数据结构 B+Tree 磁盘读写代价更低 查询效率更加稳定 更有利于对数据库的扫描 Hash索引 高效 缺点 仅仅能满足“=”,“IN” 无法被用来避免数据的排序 不能利用部分索引查询 不能避免表扫描 遇到大量Hash重复 BitMap位图索引 Oracle支持 索引类别 密集索引和稀疏索引区别 密集索引文件中的每个搜索码值都对应一个索引值 稀疏索引...
2019-08-08 10:24:17 120
原创 HTTP简介,HTTP状态码,HTTP请求
HTTP简介 什么是HTTP? 基于tcp/ip、一种网络应用层协议、超文本传输协议HyperText Transfer Protocol 工作方式:客户端请求服务端应答的模式 快速:无状态连接,灵活:可以传输任意对象,对象类型由Content-Type标记 关于HTTP请求 HTTP/1.0支持:GET、POST、HEAD三种HTTP请求方法。 HTTP/1.1新增了:OPTIONS、...
2019-08-06 17:37:06 148
原创 TCP 与 UDP的区别
UDP 面向非连接 不维护连接状态 ,支持同事向多个客户端传输相同的信息 数据包报头只有8个、字节开销比较小 吞吐量只受限于数据生成的速率,传输速率以及机器性能 尽最大努力交付,不保证可靠性,不需要维持复杂的链接状态表 ...
2019-08-06 16:39:03 90
原创 TCP协议的三次握手
##TCP UDP协议 由于传输的时候可能出现掉包,顺序不一致,速度慢等情况,在不同的需求下使用不同的协议进行传输。 对于掉包和顺序等可靠性要求高的情况下 当使用可靠性能比较高的TCP协议,为什么TCP协议是可靠性高的协议先看看原理 TCP原理 · tcp报文头 一次完成的TCP通讯包括:建立连接、数据传输、关闭连接 建立连接 三次握手 1.客户端通过向服务器端发送一个SYN(Reser...
2019-08-06 14:15:30 139
原创 OSI七层协议模型,TCP/IP五层协议协议
一 OSI七层协议模型 这是一个定义得非常好的协议规范,七层分别为 7 应用层 6 表示层 5 会话层 4 传输层 3 网络层 2 数据链路层 1 物理层 ; 1 物理层 解决机器A和机器B传输,将信息以电流形式进行传输,到达目的后转化成机器码,通过比特流传输,网卡工作层。 2 数据链路层 解决传输过程中产生错传,传输不完整的可能。数据链路层提供格式化数据,控制对物理介质的访问,提供错误检测,纠...
2019-08-01 15:11:29 334
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人