摘要: 背景 MySQL中SQL加锁的情况十分复杂,不同隔离级别、不同索引类型、索引是否命中的SQL加锁各不相同。 然而在分析死锁过程当中,熟知各种情况的SQL加锁是分析死锁的关键,因此需要将MySQL的各种SQL情况加锁进行分析总结。 基础知识 MVCC 快照读 读取历史版本,从undo log中读取行记 阅读全文
posted @ 2020-04-22 14:18 Aiapple 阅读(1953) 评论(0) 推荐(2) 编辑
摘要: 介绍 ngx_req_status 用来展示 nginx 请求状态信息,类似于 apache 的 status, nginx 自带的模块只能显示连接数等等 信息,我们并不能知道到底有哪些请求、以及各 url 域名所消耗的带宽是多少。 ngx_req_status 提供了这些功能 按域名、 url、 阅读全文
posted @ 2017-08-15 21:54 Aiapple 阅读(1745) 评论(0) 推荐(0) 编辑
摘要: 什么是图片盗链 每张图片在浏览器中都有对应的图片地址,在浏览器中输入这个地址是可以直接拿到图片。 图片盗链,就是盗用者在他的站上需要显示我们的图片,他没有把图片拿下来,放到他的服务器上, 而是直接就用我们的,图片地址,来请求到我们的服务器来拿图片,流量产生在我们这边。 referer referer 阅读全文
posted @ 2017-08-15 21:50 Aiapple 阅读(524) 评论(0) 推荐(0) 编辑
摘要: 什么是下载盗链 假设我们是一个B站,有些视频资源是可以提供给用户下载的。这时迅雷等其他下载软件,也提供下载该视频的服务, 但是迅雷很不厚道的,将我们的下载资源提供给他的用户,下载。占用我们的带宽来服务他的用户,这是绝对不可以忍了的。 使用来源判断根本不靠谱,只能防止一些小白站点的盗链,迅雷之类的下载 阅读全文
posted @ 2017-08-15 21:46 Aiapple 阅读(958) 评论(0) 推荐(0) 编辑
摘要: http配置块中 server_tokens off 后端是php,或者django,还需更改响应配置文件,将$nginx_version变量去掉。 步骤 1、进入 nginx 配置文件的目录(此目录根据安装时决定),用 vim 编辑打开 在 http {—}里加上 server_tokens of 阅读全文
posted @ 2017-08-15 21:38 Aiapple 阅读(227) 评论(0) 推荐(0) 编辑
摘要: Nginx 缓存组成 共享内存 数据定位 存储键和缓存对象的元数据 磁盘空间: 存储数据 数据定位 存储键和缓存对象的元数据 存储数据 nginx做为反向代理时,能够将来自upstream的响应缓存至本地,并在后续的客户端请求同样内容时直接从本地构造响应报文。 proxy_cache 模块 为上游服 阅读全文
posted @ 2017-08-15 21:35 Aiapple 阅读(237) 评论(0) 推荐(0) 编辑
摘要: 常见负载均衡算法 轮询(默认) 权重 weight,访问比率等于权重之比 IP 哈希 解决session问题:每个请求访问IP的hash结果分配,这样每个访客可以固定到后端某一个台服务器。 问题: 如某台服务器挂掉,对应ip_hash找不到该机器? 如果哈希选择失败次数达到20次以上,回退到轮询策略 阅读全文
posted @ 2017-08-15 21:28 Aiapple 阅读(210) 评论(0) 推荐(0) 编辑
摘要: Nginx作为反向代理服务器时转发请求的流程 客户端请求处理 当客户端请求来时,Nginx并不会立刻转发到上游服务器,而是想完整的接收到Nginx所在的服务器, 然后再把缓存的客户端的请求转发到上游服务器。 优缺点 缺点:请求处理延迟 优点:降低上游服务器的负载 由于网络,以及TCP分包的原因;一个 阅读全文
posted @ 2017-08-15 21:22 Aiapple 阅读(303) 评论(0) 推荐(0) 编辑
摘要: 配置文件 Nginx的配置有着几个不同段的上下文: main 对任何功能都生效的配置 一般字段可省略 http server 必须属于http 可以包含location 每个server代表一个虚拟主机 不可以嵌套 upstream 指定反向代理的 location 其余子段 可以在server中也 阅读全文
posted @ 2017-08-15 21:17 Aiapple 阅读(247) 评论(0) 推荐(0) 编辑
摘要: 滑动窗口协议 流量控制方法 PUSH 慢启动 流量控制方法 隔一个报文段确认”的策略实际就是因为 delayed ack,同时接收到两个待确认的ACK包时,就立即发送确认包。 滑动窗口实例 解决了快的发送方-》慢的接收方 发送方发送 4个背靠背(back-to-back)的数据报文段去填充接收方的窗 阅读全文
posted @ 2017-08-05 10:52 Aiapple 阅读(753) 评论(0) 推荐(0) 编辑