一、IDEA太卡顿,设置使用IDEA的内存 在IDEA的安装目录下的bin目录下: 打开设置: 将idea.exe.vmoptions文件内由-server-Xms128m-Xmx512m-XX:MaxPermSize=250m-XX:ReservedCodeCacheSize=150m-ea-Ds ...
分类:
其他好文 时间:
2018-07-06 20:50:54
阅读次数:
184
一、LRU简介 LRU是Least Recently Used的缩写,即:最近最少使用。 它是内存管理中的一种页面置换算法,对于在内存中但是又不用的数据块,操作系统会根据哪些数据属于LRU而将其移除内存而腾出空间来加载另外的数据。 二、redis LRU 官方文章:https://redis.io/ ...
分类:
其他好文 时间:
2018-07-06 01:19:32
阅读次数:
240
LRU算法在后端工程师面试中,是一个比较常出现的题目,这篇文章带大家一起,理解LRU算法,并最终用Python轻松实现一个基于LRU算法的缓存。 缓存是什么 先看一张图,当我们访问网页,浏览器会给服务器发请求,服务器会经过一系列的运算,把页面返回给浏览器。 Python学习交流群:125240963 ...
分类:
编程语言 时间:
2018-07-05 17:26:01
阅读次数:
130
LRU原理 LRU(Least recently used,最近最少使用)算法根据数据的历史访问记录来进行淘汰数据,其核心思想是“如果数据最近被访问过,那么将来被访问的几率也更高”。 实现1 最常见的实现是使用一个链表保存缓存数据,详细算法实现如下: 1. 新数据插入到链表头部; 2. 每当缓存命中 ...
分类:
编程语言 时间:
2018-07-02 21:33:58
阅读次数:
185
先来说说它的特点,然后在一一通过分析源码来验证其实现原理 1、能够保证插入元素的顺序。深入一点讲,有两种迭代元素的方式,一种是按照插入元素时的顺序迭代,比如,插入A,B,C,那么迭代也是A,B,C,另一种是按照访问顺序,比如,在迭代前,访问了B,那么迭代的顺序就是A,C,B,比如在迭代前,访问了B, ...
分类:
编程语言 时间:
2018-06-30 18:46:49
阅读次数:
146
缺页中断(英语:Page fault,又名硬错误、硬中断、分页错误、寻页缺失、缺页中断、页故障等)指的是当软件试图访问已映射在虚拟地址空间中,但是目前并未被加载在物理内存中的一个分页时,由中央处理器的内存管理单元所发出的中断。 通常情况下,用于处理此中断的程序是操作系统的一部分。如果操作系统判断此次 ...
分类:
编程语言 时间:
2018-06-22 17:43:16
阅读次数:
536
这篇博客主要讲三种置换算法,FIFO(先进先出),OPT(最佳置换算法),LRU(最近最久未使用和最少使用置换算法) 在一个请求分页系统中,假设系统分配给某进程的物理块数为 3,开始时内存 为空,执行如下访问页号序列: 1,2,3,4,1,2,5,1,2,3,4,5 FIFO算法: 缺页次数 9 次 ...
分类:
编程语言 时间:
2018-06-19 21:24:17
阅读次数:
440
#努力第6天#innodb_lru_scan_depth每个缓冲池最大脏页刷新页数checkpointinnodb fuzzy checkpointmaster thread checkpoint从flush_list中进行刷新flush_lru_list check pointlru需有差不多10 ...
分类:
数据库 时间:
2018-06-19 11:51:26
阅读次数:
180
设计一种缓存结构, 该结构在构造时确定大小, 假设大小为K, 并有两个功能:set(key,value): 将记录(key,value)插入该结构。get(key): 返回key对应的value值。1. set和get方法的时间复杂度为O(1)。2. 某个key的set或get操作一旦发生, 认为这 ...
分类:
其他好文 时间:
2018-06-11 23:42:23
阅读次数:
332
package com.fh.interview.cache; /** * 事实上,Redis的高效性和灵活性正是得益于对于同一个对象类型采取不同的底层结构, * 并在必要的时候对二者进行转换;以及各种底层结构对内存的合理利用。 * * redis的数据结构 * String * List * Se... ...
分类:
其他好文 时间:
2018-06-09 19:49:42
阅读次数:
137