从入门到高可用分布式实践-Redis的其他功能
这篇我们将学习和总结一下Redis的一些其他功能。
慢查询我们从生命周期、三个命令、两个配置、运维经验来看下慢查询。
生命周期
一条Redis命令大致经过发送命令–>排队(单线程原因)–>执行命令–>返回结果四个过程,也是一个完整的生命周期过程。
两个配置-slowlog-max-len1、先进先出队列(假如说一条命令在执行过程中,被列入慢查询的范围内他就会进入一个队列,这个队列
...
从入门到高可用分布式实践-API的理解和使用
这篇我们总结学习一下Redis中一些API的使用,毕竟我们实际用的时候就是在调用这些API。
通用命令我们主要学习六个通用命令:keys、dbsize、exists key、del key [key ...]、expire key seconds、type key。
遍历所有的key
1keys *
keys还可以进行匹配输出
1234keys [pattern]keys k*keys k[1-3
...
从入门到高可用分布式实践-Redis初识
学习Redis一直都是零零散散的没有系统学习,虽然之前读过一本关于Redis的书籍,但是还是对很多概念是似懂非懂。从这篇开始将系统学习慕课网的一个Redis实战课程一站式学习Redis 从入门到高可用分布式实践。希望通过这个课程对Redis的理解更加深刻些。
Redis是什么?
我们看下维基百科对于Redis的解释:Redis是一个使用ANSI C编写的开源、支持网络、基于内存、
...
如何使用Python重命名文件
在 shell 命名中,我们很通过mv命令,可以很简单的移动一个文件到另外一个位置,或者重命名一个文件为另外一个名字。
在 unix 系统中,mv 命令可以用来移动文件,同时,也可以用来重命名一个文件。
使用Python的os和shutil模块也可以重命名文件
os.rename()和 shutil.move()方法都可以实现类似与 shell 中的mv命令相似的功能。
1234567891011
...
日志查找好帮手-find和grep
一般要看日志的时候绝大部分情况下都是分析bug😳 如何快速定位查找到问题所在的文件和位置是我们首要的目的。因为Linux不像Windows系统有很好的图形界面,我们主要依赖一些命令进行查找日志。
今天主要想记录的主要是find和grep这两个命令,可以参考下面的文章学习下这两个命令:
每天一个linux命令(19):find 命令概览
每天一个linux命令(22):find 命令的参
...
深度剖析下上下文管理器contextmanager
我们首先看下今天探讨的对象contextmanager的源码。
12345678910111213141516171819202122232425262728293031def contextmanager(func): """@contextmanager decorator. Typical usage: @contextmanager def some
...
Asyncio中的子进程模块subprocess
asyncio提供了通过 async/await 创建和管理子进程的API。不同于Python标准库的subprocess,asyncio的子进程函数都是异步的,并且提供了多种工具来处理这些函数,这就很容易并行执行和监视多个子进程。
创建子进程的方法主要有两个:
coroutine asyncio.create_subprocess_exec()
coroutine asyncio.create
...
Linux查找目录下包含有某字符串的所有文件
有时我们需要在一堆的日志目录里面找到某些关键的日志信息,今天我们来看看如何快速找到。
如果我们想在当前目录下查找所有包含”phpernote”字符串的文件,可以这样输入命令:
1grep -rn "phpernote" *
即使当前目录下面有一对的文件 也会递归每个文件查找
参数含义解释:
1234567891011121314151617* 表示当前目录所有文件,也可以是某个文件名,可省
...
Python的列表+和+=操作的区别
今天我们主要探讨的是:python - If x is list, why does x += “ha” work, while x = x + “ha” throw an exception?
问题众所周知,在 python 中,+运算符可以使用在列表上,+运算符只需要第二个操作数是可迭代的,那么 + 显然可以运算在 “ha” 上。
代码:
1234567891011121314In [1]:
...
我说 SELECT COUNT(*) 查询很慢,面试官让我回去等通知
非原创文章,文章原址:我说 SELECT COUNT(*) 查询很慢,面试官让我回去等通知
我们看下下面两个获取表大小的SQL
12SELECT COUNT(*) FROM SomeTableSELECT COUNT(1) FROM SomeTable
这两个SQL会导致慢查询,原因是会造成全表扫描,有位读者说是有问题的,实际上针对无 where_clause 的 COUNT(*),MySQL 是
...