前言: 前面文章,我们学习了 MySQL 慢日志相关内容,当我们筛选得到具体的慢 SQL 后,就要想办法去优化啦。优化 SQL 的第一步应该是读懂 SQL 的执行计划。本篇文章,我们一起来学习下 MySQL explain 执行计划相关知识。 1.执行计划简介 执行计划是指一条 SQL 语句在经过 MySQL 查询优化器
常见缓存数据库 缓解关系型数据库的并发访问的压力:热点数据 减少响应时间 提升吞吐量:单机内存数据库支持很大并发量 Redis数据类型及常用场景 string:简单的k,v值 应用:计数器,开关,分布式锁setnx 原理:最基础的数据结构 命令集: 1. SET/GET/APPEND/STRLEN: 2. INCR/DECR/I
一、缓存访问: 1.客户端发送请求; 2.服务首先会请求redis,查看请求的内容是否存在; 3.redis将请求结果返回给服务,如果返回的结果有数据则直接返回给客户端;如果没有数据则会继续往下执行; 4.服务从数据库中查询请求的数据; 5.数据库将查询的结果返回给服务; 6.如果数据库有返回数据,则将
WXML-上 WXML简介 WXML(WeiXin Markup Language)是框架设计的一套标签语言,结合基础组件、事件系统,可以构建出页面的结构。 用以下一些简单的例子来看看 WXML 具有什么能力: <!--wxml--> <view> {{message}} </view> // page.js Page({ data: { message: 'Hello MINA!' } })
为合并表头模式, 数据格式如下: { title: '交强险', children: [ { title: '保单号', dataIndex: 'insuranceBillcode', key: 'insuranceBillcodeRisk', },] } { title: '商业险',
Redis 除了做缓存,还能干很多很多事情:分布式锁、限流、处理请求接口幂等性。。。太多太多了~ 今天想和小伙伴们聊聊用 Redis 处理接口限流,这也是最近的 TienChin 项目涉及到这个知识点了,我就拎出来和大家聊聊这个话题。 1. 准备工作 首先我们创建一个 Spring Boot 工程,引入 Web 和 R
在PHP网络编程中,你可能需要删除数组中的一些元素,在本文章中,我们将演示并描述php如何删除数组元素。 文章一共列举了三种方法来实现这一功能: php unset()函数 php array_splice()函数 php array_diff()函数 PHP unset()函数删除数组元素 如果要从数组中删除元素,则可以简单地使
redis命令操作set&sortedset 集合类型:set 不允许重复元素 存储:sadd key value 获取:smembers key :获取set元素中所有元素 删除:srem key value :删除set集合中某个元素 有序的集合 sortedset:不允许重复元素,且元素有序 存储:zadd key score value: 获取︰zrange key s
Java集合07 14.HashMap底层机制 (k,v)是一个Node,实现了Map.Entry<K,V>,查看HashMap的源码可以看到 jdk7.0 的HashMap底层实现[数组+链表],jdk8.0底层[数组+链表+红黑树] 14.1HashMap扩容机制(和HashSet完全相同) 详见10.2HashSet的底层扩容机制 HashMap底层维护了Node类型的数组tabl
方法一、暴力法 方法二、前缀和 + HashMap 求解和的方式往往能够分解成sum-k方式,查找此key是否在该dict中,count累加计数 # prefix sum nums = [1,1,1,1] k, count = 2, 0 dic = {0:1} # 和为key的前缀和有value个 prefix_sum = 0 for i in range(len(nums)): prefix_sum +=
出现问题的原因 验证码获取后,还有其他的接口请求,导致验证码的缓存被覆盖(参考文章:Laravel Session 遇到的坑) 解决办法 修改vendor/mews/captcha/src/Captcha.php源码,将原本的在session保存验证码改为Cache中保存,具体修改如下 修改generate() 将原本的 $this->session->put('c
const v1 = { a: '1', b: 20, c: null, d: undefined, }const v1 = { a: '1', b: 20, }const params = Object.keys(data) .filter((key) => data[key] !== null && data[key] !== undefined) .reduce((acc, key) => ({
网上找了很久,都是执行pacman-key --init和pacman-key --populate就能解决问题,但我试了没用。还好最后网上找到一篇文章,按文章写的,执行pacman-key --refresh-keys就解决了。这个在Pacman的wiki页面也有写,看来应该优先翻文档的。 全部操作完,没想到启动时卡在了grub页面,很无奈。网上
https://www.cnblogs.com/gj-Acit/archive/2013/05/06/3062628.html 哈希函数的构造方法 哈希函数的构造方法 本文阐述了哈希函数的构造方法有很多,但应注意两个原则:第一,函数值应在1至记录总数之间;第二,尽可能避免冲突。 设要存放的数据元素有n个,存放数据元素的内存单元有m个,
写在前面 在日常开发中,我这边比较熟悉的配置中心有,携程Apollo,阿里Nacos(配置中心,服务治理一体) 之前文章: Asp.Net Core与携程阿波罗(Apollo)的第一次亲密接触 总体来说,Apollo和Nacos社区都比较活跃,可能是后发优势或者我们技术选型的原因,我们生产选用的是Nacos,我个人也是优先推荐N
安装Git for windows https://git-scm.com/download/win 创建密钥对 打开命令行, 输入以下命令 $ ssh-keygen -t rsa -C "ZhangSan<youremail@example.com>" -f ZhangSan-Usage 在密钥中有一个注释字段,用-C (大写)来指定所指定的注释,可以方便用户标识这个密钥,指出密钥的
一:redis安装 1.下载 wget http://download.redis.io/releases/redis-5.0.3.tar.gz 2.解压和编译 tar xzf redis‐5.0.3.tar.gz cd redis‐5.0.3 # 进入到解压好的redis‐5.0.3目录下,进行编译与安装 make MALLOC=libc 出现报错,参考:https://www.cnblogs.com/zxiaozho
call与apply的异同 相同点:1、都可以用来修改函数内部的this指向 2、都会立即执行函数 不同点: 1、传参方式不同 第一个参数都是传递需要指向的obj,之后的传递参数的方式不相同,apply是把剩下的参数通过数组的形式传递,call剩下的参数传递个数不固定,一个一个的传递。 应用
为什么要实现点击空白处隐藏键盘?因为这是 iOS 平台的默认行为,Android 平台由于其弹出的键盘右上角默认带有关闭键盘的按钮,所以点击空白处不会隐藏键盘。 单个页面,可以这样做: class DismissKeyboardPage extends StatelessWidget { final FocusNode focusNode = FocusNode();
redis命令操作list&set&sortedset 列表类型 list:可以添加一个元素到列表的头部(左边)或者尾部(右边) 1.添加: lpush key value :将元素加入列表左边 rpush key value :将元素加入列表右边 2.获取: lrange key start end :范围获取 3.删除:
命令操作——list 列表类型 list:可以添加一个元素到列表的头部(左边)或者尾部(右边) 添加: 1、lpush key value:将元素加入列表左边 2、rpush key value:将元素加入列表右边 获取: lrange key start end:范围获取 删除: lpop key:删除列表最左边
redis的数据结构 redis存储的是:key,value格式的数据,其中key都是字符串,value有5中不同的数据结构 value的数据结构: (1) 字符串类型 string (2) 哈希类型 hash (3) 列表类型 list (4) 集合类型 set (5) 有序集合类
☺ 心得:如何学习源码: 从某个执行过程入手,建议先从整体入手,了解底层的数据结构是怎么一步一步优化的。最后,在了解完底层的数据结构优化过程后,从重要的核心方法入手,从它的执行流程入手,先去网上搜索了解它的执行流程过程(推荐看流程图),再去看源码。 (1) 从某个执行过程入手,建议先从
本文是深入浅出 ahooks 源码系列文章的第十篇,该系列已整理成文档-地址。觉得还不错,给个 star 支持一下哈,Thanks。 今天我们来聊聊 ahooks 中对 Map 和 Set 类型进行状态管理的 hook,顺便复习一下 Set 和 Map 这两种数据类型。 useMap 管理 Map 类型状态的 Hook。 先回顾以下 Ma
Redis 事务的目的是方便用户一次执行多个命令。执行 Redis 事务可分为三个阶段: 开始事务 命令入队 执行事务 1. Redis事务特性 Redis 事务具有两个重要特性: 1) 单独的隔离操作 事务中的所有命令都会被序列化,它们将按照顺序执行,并且在执行过的程中,不会被其他客户端发送来的命令打