摘要: 大家在访问网站的时候,经常会看到图片展示不出来的时候,如下图 大家有没有想过这是为什么嘛?其实这是一种简单的防盗链的处理,那么盗链是什么呢?为什么需要防呢?咱们今天来一起揭开它神秘的面纱。 盗链的概念 盗链是指在自己的页面上展示一些并不在自己服务器上的一些内容, 获取别人的资源地址,绕过别人的资源展 阅读全文
posted @ 2021-04-06 15:29 程序员小饭 阅读(879) 评论(0) 推荐(1) 编辑
摘要: 前言 程序员平时和mysql打交道一定不少,可以说每天都有接触到,但是mysql一张表到底能存多少数据呢?计算根据是什么呢?接下来咱们逐一探讨 知识准备 数据页 在操作系统中,我们知道为了跟磁盘交互,内存也是分页的,一页大小4KB。同样的在MySQL中为了提高吞吐率,数据也是分页的,不过MySQL的 阅读全文
posted @ 2021-02-20 16:15 程序员小饭 阅读(3210) 评论(2) 推荐(6) 编辑
摘要: 此篇文章算是对mysql事务的一个总结,基本把mysql事务相关的知识点都涵盖到了,面试问来问去无非也就是这些,在了解这些之前我们先对mysql在执行的过程中 有一个整体的认识,如下图 如上图所示,MySQL服务器逻辑架构从上往下可以分为三层: (1)第一层:处理客户端连接、授权认证等。 (2)第二 阅读全文
posted @ 2021-02-01 11:01 程序员小饭 阅读(519) 评论(0) 推荐(0) 编辑
摘要: 相信微信附近的人的功能大家都应该用过 我可以很随意的通过我自己的定位能看到我附近的人,并且能看到那个人距离我的距离,大家有没有思考过这个是怎么实现的? 作为一个程序猿任何问题应该都有一个思考的过程,而不是直接看结论,接下来大家一步一步的思考,直到问题解决。 获取自己的位置 附近的人其实就是一种位置的 阅读全文
posted @ 2020-12-30 17:49 程序员小饭 阅读(105) 评论(0) 推荐(0) 编辑
摘要: redis的五种数据类型和使用场景 string类型 string类型多用于缓存 set key value(value可以为json字符串) setnx多用于分布式锁(后面详细整理) 计数器 incr article:{文章id}:readcount get article:{文章id}:read 阅读全文
posted @ 2020-11-04 14:09 程序员小饭 阅读(204) 评论(0) 推荐(0) 编辑
摘要: redis缓存穿透穿透解决方案-布隆过滤器 我们先来看一段代码 cache_key = "id:1" cache_value = GetValueFromRedis(cache_key); //判断缓存是否有数据 if cache_value != nil{ //如果有 直接返回数据 return 阅读全文
posted @ 2020-10-26 10:41 程序员小饭 阅读(493) 评论(0) 推荐(0) 编辑
摘要: Redis 对过期数据的处理 在 redis 中,对于已经过期的数据,Redis 采用两种策略来处理这些数据,分别是惰性删除和定期删除 惰性删除 惰性删除不会去主动删除数据,而是在访问数据的时候,再检查当前键值是否过期,如果过期则执行删除并返回 null 给客户端,如果没有过期则返回正常信息给客户端 阅读全文
posted @ 2020-10-18 22:46 程序员小饭 阅读(2146) 评论(0) 推荐(1) 编辑
摘要: redis提供了两种持久化的机制 RDB和AOF机制 RDB(redis Database):RDB保存某一个时间点之前的快照数据。 AOF(Append-Only File):指所有的命令行记录以redis命令请求协议的格式完全持久化存储保存为AOF文件 混合持久化(4.0版本以后):指进行AOF 阅读全文
posted @ 2020-10-16 10:32 程序员小饭 阅读(750) 评论(0) 推荐(0) 编辑
摘要: 大家都知道redis默认是16个db,但是这些db底层的设计结构是什么样的呢? 我们来简单的看一下源码,重要的字段都有所注释 typedef struct redisDb { dict *dict; /* The keyspace for this DB 字典数据结构,非常重要*/ dict *ex 阅读全文
posted @ 2020-10-15 10:14 程序员小饭 阅读(199) 评论(0) 推荐(0) 编辑
摘要: #1:SDS介绍 我们在redis中执行命令 set key name 的时候,key和name都是字符串类型,而且字符串(string)在redis中是会经常用到的类型,那redis是如何保存字符串的呢?我们接下来往下看 众所周知,redis是c写的,在c中使用char来保存字符串,并且用\0作为 阅读全文
posted @ 2020-10-14 19:02 程序员小饭 阅读(157) 评论(0) 推荐(0) 编辑