- 博客(40)
- 资源 (1)
- 收藏
- 关注
原创 CentOS6系统上执行Yum命令时会提示404错误
Centos 6 yum使用国内源 报404错误错误原因试图查找解决方案根本原因解决方案我的解决方案错误原因准备在自己的电脑上安装 redis ,在make的时候,报没有 cc 命令于是利用 yum install cc 命令进行安装但是一直有 报404的错误,截图如下:试图查找解决方案在网上也能查到关于此问题的一些解决方案,比如:1、备份原镜像文件,下载新的CentOS-Base.repo 到/etc/yum.repos.d/2、将$releasever 替换成6 ;%s/$rel
2021-09-05 19:39:45 544
原创 Redis可视化管理工具
Redis可视化管理工具RedisClientRedis Desktop ManagerAnotherRedisDesktopManager因为 Redis 官方只提供了命令行版的 Redis 客户端 redis-cli,以至于我们在使用的时候会比较麻烦,通常要输入一堆命令,而且命令行版的客户端看起来也不够直观。RedisClient是否收费: 免费。项目介绍: Java 编写的 Redis 连接客户端,功能丰富,并且是免费的。支持平台: Windows。项目地址: https://github
2021-08-26 23:50:53 325
原创 Redis慢查询
Redis慢查询如何进行慢查询?修改配置项慢查询演示慢查询其他相关命令查询指定条数慢日志获取慢查询队列长度清空慢查询日志总结Redis 慢查询作用和 MySQL 慢查询作用类似,都是为我们查询出不合理的执行命令,然后让开发人员和运维人员一起来规避这些耗时的命令,从而让服务器更加高效和健康的运行。对于单线程的 Redis 来说,不合理的使用更是致命的,因此掌握 Redis 慢查询技能对我们来说非常的关键。如何进行慢查询?在开始之前,我们先要了解一下 Redis 中和慢查询相关的配置项,Redis 慢查询
2021-08-26 23:33:13 266
原创 Redis性能测试
Redis性能测试为什么需要性能测试?性能测试的几种方式基准测试实战基本使用精简测试管道测试基准测试的影响元素为什么需要性能测试?性能测试的使用场景有很多,例如以下几个:技术选型,比如测试 Memcached 和 Redis;对比单机 Redis 和集群 Redis 的吞吐量;评估不同类型的存储性能,例如集合和有序集合;对比开启持久化和关闭持久化的吞吐量;对比调优和未调优的吞吐量;对比不同 Redis 版本的吞吐量,作为是否升级的一个参考标准。等等,诸如此类的情况,我们都需要进行性能测
2021-08-26 22:43:11 362
原创 内存淘汰机制与算法
内存淘汰机制与算法Redis最大运行内存查询最大运行内存内存淘汰策略查看Redis内存淘汰策略内存淘汰策略分类修改Redis内存淘汰策略内存淘汰算法LRU算法LFU算法Redis内存淘汰机制指的是,当Redis 运行内存已经超过 Redis 设置的最大内存之后,将采用什么策略来删除符合条件的键值对,以此来保障 Redis 高效的运行。Redis最大运行内存只有在 Redis 的运行内存达到了某个阀值,才会触发内存淘汰机制,这个阀值就是我们设置的最大运行内存,此值在 Redis 的配置文件中可以找到,配
2021-08-26 21:53:03 281
原创 缓存雪崩&缓存穿透
缓存雪崩&缓存穿透缓存雪崩随机化过期时间加锁排队缓存穿透使用过滤器缓存空结果缓存雪崩缓存雪崩是指在短时间内,有大量缓存同时过期,导致大量的请求直接查询数据库,从而对数据库造成了巨大的压力,严重情况下可能会导致数据库宕机的情况叫做缓存雪崩。我们先来看下正常情况下和缓存雪崩时程序的执行流程图,正常情况下系统的执行流程如下图所示:缓存雪崩的执行流程,如下图所示:缓存雪崩的常用解决方案有以下几个。随机化过期时间为了避免缓存同时过期,可在设置缓存时添加随机时间,这样就可以极大的避免大量的缓存
2021-08-24 23:37:33 97
原创 布隆过滤器
布隆过滤器编译方式启动验证我们前面有讲到过 HyperLogLog 可以用来做基数统计,但它没提供判断一个值是否存在的查询方法,那我们如何才能查询一个值是否存在于海量数据之中呢?讲个使用场景,比如我们在使用新闻客户端看新闻时,它会给我们不停地推荐新的内容,它每次推荐时要去重,去掉那些已经看过的内容。问题来了,新闻客户端推荐系统如何实现推送去重的?你会想到服务器记录了用户看过的所有历史记录,当推荐系统推荐新闻时会从每个用户的历史记录里进行筛选,过滤掉那些已经存在的记录。问题是当用户量很大,每个用户看过的
2021-08-24 23:29:26 124
原创 基数统计算法——HyperLogLog
基数统计算法——HyperLogLog为什么要使用HyperLogLogHyperLogLog介绍基础使用添加元素pfadd中的pf是什么意思?HLL算法原理了解为什么要使用HyperLogLog在我们实际开发的过程中,可能会遇到这样一个问题,当我们需要统计一个大型网站的独立访问次数时,该用什么的类型来统计?如果我们使用 Redis 中的集合来统计,当它每天有数千万级别的访问时,将会是一个巨大的问题。因为这些访问量不能被清空,我们运营人员可能会随时查看这些信息,那么随着时间的推移,这些统计数据所占用的
2021-08-24 23:17:45 335
原创 利用Redis查询附近的人——GEO
利用Redis查询附近的人——GEO基础使用添加地理位置查询位置信息距离统计查询某位置内的其他成员信息WITHCOORDWITHDISTWITHHASHCOUNT count5.ASC|DESC我们所处的任何位置都可以用经度和纬度来标识,经度的范围 -180 到 180,纬度的范围为 -90 到 90。纬度以赤道为界,赤道以南为负数,赤道以北为正数;经度以本初子午线(英国格林尼治天文台)为界,东边为正数,西边为负数。Redis 在 3.2 版本中增加了 GEO 类型用于存储和查询地理位置,关于 GEO
2021-08-24 22:57:11 308
原创 Redis事务
Redis事务前言事务基本使用开启事务命令入列执行事务/放弃事务事务错误&回滚执行时错误入列错误不会导致事务结束入列错误导致事务结束为什么不支持事务回滚?总结前言事务指的是提供一种将多个命令打包,一次性按顺序地执行的机制,并且保证服务器只有在执行完事务中的所有命令后,才会继续处理此客户端的其他命令。事务也是其他关系型数据库所必备的基础功能,以支付的场景为例,正常情况下只有正常消费完成之后,才会减去账户余额。但如果没有事务的保障,可能会发生消费失败了,但依旧会把账户的余额给扣减了,我想这种情况应
2021-08-23 23:08:09 91
原创 Redis持久化——AOF
Redis持久化——AOF1、Redis持久化2、AOF 简介3、持久化查询和设置4、触发持久化1)自动触发2)手动触发5、AOF文件重写1)什么是AOF重写?2)AOF重写实现3)AOF重写流程6、配置说明7、优缺点AOF优点AOF缺点8、总结1、Redis持久化使用 RDB 持久化有一个风险,它可能会造成最新数据丢失的风险。因为 RDB 的持久化有一定的时间间隔,在这个时间段内如果 Redis 服务意外终止的话,就会造成最新的数据全部丢失。可能会操作 Redis 服务意外终止的条件:安装 Re
2021-08-23 00:17:37 803
原创 Redis主从配置
Redis主从配置主从概念主从配置配置主主从概念主从同步(主从复制)是Redis高可用服务的基石,也是多机运行中最基础的一个。我们把主要存储数据的节点叫做主节点(master),把其他通过复制主节点数据的副本节点叫做从节点(slave)。一个master可以拥有多个slave,一个slave又可以拥有多个slave,如此下去,形成了强大的多级服务器集群架构master用来写数据,slave用来读数据,经统计:网站的读写比率是:10:1通过主从配置可以实现读写分离master和slave都是一个
2021-08-22 18:53:42 316
原创 Redis与Python交互
Python操作Redisredispy安装及连接字符串相关操作列表相关操作集合相关操作哈希相关操作redispy安装及连接安装Redis扩展1 pip install redis连接1 r = redis.StrictRedis(host='localhost',port=6379,db=0)字符串相关操作1 import redis23 class TestString(object):4 def __init__(self):5 self.r = redis.S
2021-08-19 23:37:33 84
原创 安装布隆过滤器RedisBloom后redis不能正常连接“Connection refused”的解决
1、之前电脑安装RedisBloom,发现原先的redis不能正常连接,安装如下:1 wget https://github.com/RedisBloom/RedisBloom/archive/v2.2.5.tar.gz2 tar -zxvf v2.2.5.tar.gz 3 cd RedisBloom-2.2.54 make2、报错如下3、原因在于没有redis.conf文件vim redis.conf注: 需要在redis.conf文件中添加redisbloom.so的文件路径,图片
2021-08-11 23:35:07 193
原创 Linux安装布隆过滤器过程中make编译报错“fatal error:tdigest.h:没有那个文件或目录”解决方法
1、在Ubuntu上下载并安装布隆过滤器1 git clone https://github.com/RedisLabsModules/redisbloom.git2 cd redisbloom3 make # 编译redisbloom2、在第三步编译make的时候,提示报错,截图如下:3、通过查阅资料,原因是git下载发布的版本,master不适用。需要下载完重新解压,重新编译make。4、具体如下:1 wget https://github.com/RedisBloom/RedisB
2021-08-10 22:08:03 658
原创 Linux高级命令(3)
1、用户相关操作useradd:创建(添加用户)useradd命令选项:选项说明-m自动创建用户主目录,主目录的名字就是用户名-g指定用户所属的用户组,默认不指定会自动创建一个同名的用户组说明:useradd命令的使用需要使用管理员权限,前面需要加上sudo创建用户如果不指定用户组,默认会自动创建一个同名的用户组查看用户是否创建成功,可以查看 /etc/passwd 这个文件查看用户组是否创建成功,可以查看 /etc/group 这个文件...
2021-06-26 22:46:59 180
原创 Linux高级命令(2)
1、查找文件命令find命令是完成查找文件操作的查找文件的命令格式:find 【文件路径】 【参数】 【文件名】find命令选项选项说明-name按照文件名查找文件-perm按照文件权限来查找文件-user按照文件属主来查找文件-group按照文件所属的组来查找文件-mtime -n, +n按照文件的更改时间来查找文件,-n表示文件更改时间距现在n天以内,+n表示文件更改时间距现在n天以前-type查找某一类型的文件find命令
2021-06-24 00:03:01 61
原创 Linux高级命令(1)
1、重定向命令重定向也称为输出重定向,把在终端执行命令的结果保存到目标文件。重定向命令的使用命令说明>如果文件存在会覆盖原有文件的内容,相当于文件操作中的’w’模式>>如果文件存在会追加写入到文件末尾,相当于文件操作中的’a’模式说明:只要在终端能显示信息的命令都可以使用重定向,比如:tree2、查看文件内容命令命令说明cat查看小型文件more分屏查看大型文件head查看文件的头部内容,默认前10行
2021-06-07 22:31:59 91
原创 Ubuntu操作系统介绍及安装
Ubuntu操作系统是属于Linux操作系统的一种,它是免费的、稳定又可以拥有绚丽界面的一个操作系统。Ubuntu图形界面的介绍任务栏窗口操作按钮窗口菜单条任务栏效果图窗口操作按钮效果图窗口菜单条效果图与Windows目录结构对比Windows目录结构效果图**说明:**每一个盘符就是一个根目录,在Windows操作系统里面可能会出现多个根目录。Linux目录结构效果图说明: Ubuntu没有盘符的概念,只有一个根目录 “/”Linux主要目录介绍效果图主要目录说
2021-05-30 19:23:52 10160
原创 Linux命令
1、查看目录命令的使用命令说明ls查看当前目录信息tree以树状方式显示目录信息2、查看当前目录路径命令说明pwd查看当前目录路径3、清除终端内容命令说明clear清除终端内容4、切换目录命令说明cd 目录切换到指定目录cd ~切换到当前用户的主目录cd …切换到上一级目录cd .切换到当前目录cd -切换到上一次目录注意 :cd命令切换目录时,
2021-05-30 19:11:31 51
原创 虚拟机软件介绍
虚拟机软件虚拟机软件的介绍它是能够虚拟出来计算机的一个软件常用虚拟机软件VmwareVirtualBox**说明:**只有安装了虚拟机软件才可以创建虚拟机,当然通过虚拟机软件还可以创建多个虚拟机虚拟机的介绍就是模拟一个真实的计算机,好比一个虚拟的电脑,对于快速学习一个新的操作系统就可以通过虚拟机来完成。**说明:**虚拟机之间是相互独立的,删除虚拟机不会对其他虚拟机产生影响,也不会对电脑本身产生影响。虚拟机的安装说明Windows和Linux下载VMware Workstati
2021-04-19 23:46:38 223
原创 Linux操作系统介绍
Linux操作系统常见的操作系统Windowsmac OS(Unix内核的桌面版)LinuxiOSAndroidLinux的由来Linux操作系统诞生于1991年10月5日(这是第一次正式向外公布时间)。Linux存在着许多不同的Linux版本,但它们都使用了Linux内核。严格来讲,Linux这个词本身只表示Linux内核,但实际上人们已经习惯了用Linux来形容整个基于Linux内核,并且使用GUN工程的各种工具和数据库的操作系统(企鹅的由来)流行的Linux发行版本目前世
2021-04-19 23:33:03 189
原创 python中文件读写--open函数详解
python中open函数详解在python中文件的读取分为三步走:读:打开文件 -> 读文件 -> 关闭文件(有点像把大象放进冰箱需要几步?的问题)1、open函数open函数主要运用到两个参数,文件名和mode,文件名是添加该文件对象的变量,mode是告诉编译器和开发者文件通过怎样的方式进行使用。因此在Python中打开文件的代码如下:file_object = open('filename','mode')...
2021-02-21 17:35:59 7457
原创 13-面向对象三(继承的简介和引入、方法的重写、super()、多重继承、多态、属性和方法)
1.继承简介继承是面向对象三大特性之一通过继承我们可以使一个类获取到其他类中的属性和方法在定义类时,可以在类名后面的括号中指定当前类的父类(超类、基类)继承提高了类的复用性。让类与类之间产生了关系。有了这个关系,才有了多态的特性2.方法重写如果在子类中有和父类同名的方法,则通过子类实例去调用方法时,会调用子类的方法而不是父类的方法,这个特点我们称之为方法的重写(覆盖)当我们调用一个对象的方法时:会优先去当前对象中寻找是否具有该方法,如果有则直接调用如果没有,则去当前对象的父类中寻找
2020-07-10 15:16:39 122
原创 12-面向对象二(特殊方法介绍、封装、property 装饰器)
1.特殊方法在类中可以定义一些特殊方法也称为魔术方法特殊方法都是形如 __ xxx __() 这种形式特殊方法不需要我们调用,特殊方法会在特定时候调用2.封装出现封装的原因:我们需要一种方式来增强数据的安全性1、属性不能随意修改2、属性不能改为任意的值封装是面向对象的三大特性之一封装是指隐藏对象中一些不希望被外部所访问到的属性或方法我们也可以提供给一个getter()和setter()方法是外部可以访问到的属性getter()获取对象中指定的属性setter
2020-07-09 10:42:57 97
原创 11-面向对象一(面向对象和面向过程比较、类的创建和调用、参数self)
1.面向对象简介Python 是一门面向对象的编程语言所谓面向对象的语言,简单理解就是语言中的所有操作都是通过对象来进行的面向过程
2020-06-26 16:42:45 140
原创 10-函数三-高阶函数、闭包、装饰器的使用
1、高阶函数接受函数作为参数,或者将函数作为返回值返回的函数就是高阶函数2、闭包将函数作为返回值,也是高阶函数我们也称为闭包闭包的好处通过闭包可以创建一些只有当前函数能访问的变量可以将一些私有数据藏到闭包中形成闭包的条件函数嵌套将内部函数作为返回值返回内部函数必须要使用到外部函数 的变量3、装饰器的引入我们可以直接通过修改函数中的代码来完成需求,但是会产生以下一些问题如果修改的函数多,修改起来会比较麻烦不方便后期维护这样做会违反开闭原则(ocp)
2020-06-23 13:06:03 113
原创 09-函数二-函数的返回值、文档字符串、函数的作用域(全局变量和局部变量)、命名空间、递归函数
1、函数的返回值返回值就是函数执行以后返回的结果通过 return 来指定函数的返回值return 后面可以跟任意对象,返回值甚至可以是一个函数2、文档字符串help() 是Python 中内置函数,通过help() 函数可以查询Python 中函数的用法在定义函数时,可以在函数内部编写文档字符串,文档字符串就是对函数的说明3、函数的作用域作用域(scope)作用域指的是变量生效的区域在Python中一共有两种作用域全局作用域全局作用域在程序执行时创建,在程序执行结束时销
2020-06-21 18:20:54 140
原创 08-函数一(函数的简介、函数的参数、不定长参数、参数的解包)
1、函数简介函数也是一个对象函数用来保存一些可执行的代码,并且可以在需要时,对这些语句进行多次调用1 语法2 def 函数名 ([形参1,行参2,行参3....]):3 代码块注意:1、函数名必须符合标识符的规范(可以包含字母、数字、下划线,但是不能以数字开头)2、print 是函数对象,print() 是调用函数2、函数的参数2.1 形参和实参形参(形式参数),定义形参就相当于在函数内部声明了变量,但是并不是赋值实参(实际参数),指定了形参,那么在调用函数时必须传
2020-06-18 22:46:55 207
原创 纯干货-个人整理——字典和列表的不同点和相同点
1. 字典和列表的不同点1、列表中的元素都有自己明确的“位置”,即使看似相同的元素,只要在列表中所处的位置不同,它们就是两个不同的元素。比如:2、字典相对列表显得随和,调动顺序也不影响。因为列表中的数据是有序排列的,字典中的数据是随机排列的。2.字典和列表的相同点...
2020-06-14 20:39:52 11698 1
原创 07-元组&字典&集合
1.元组的简介元组基本介绍元组表现形式 tuple元组是一个不可变序列(一般当我们希望数据不改变时,我们使用元组,我们使用的元组,其他情况下基本都是列表)使用 () 创建列表元组不是空的元组,至少有一个 逗号(,)元组解包是指将元组当中的每一个元素都赋值给一个变量2.字典简介2.1 字典的基本介绍字典属于一种新的数据结构,称为映射(mapping)字典的作用和列表类似,都是用来存储对象的容器列表存储数据的性能好,但是查询数据的性能差,字典正好与之相反在字典中每一个元素都有唯一的
2020-06-07 18:47:29 392
原创 06-列表(列表的使用、列表中元素的提取--切片、列表的通用操作、列表的方法、列表的遍历-for循环和range()函数)
1. 序列 (sequence)1.1 基本概念序列是Python 中最基本的一种数据结构。序列用于保存一组有序的数据,所有的数据在序列当中都有一个唯一的位置 (索引) 并且序列中的数据会按照添加的顺序来分配索引数据结构指的是计算机中数据存储的方式1.2 序列的分类可变序列(序列中的元素可以改变):例如 列表(list)、字典(dict)不可变序列(序列中的元素不能改变):例如 字符串(str)、 元组(tuple)2.列表(list)列表是Python中的一个对象列表的作用:
2020-06-02 23:30:11 7667
原创 05 -条件控制语句(if 语句、input()函数、if-elif-else语句、while循环和for循环、循环嵌套、break、continue、pass、else语句)
1. 条件判断语句(if 语句)执行的流程if 语句在执行时,会先对条件表达式进行求值判断如果为 True ,则执行 if 后的语句如果为 False ,则不执行语法结构:if 条件表达式:-----代码块代码块中保存着一组代码,同一个代码块中的代码,要么都执行,要么都不执行代码块以缩进开始,直到代码回复到之前的缩进级别时结束代码块就是一种为代码分组的机制2. input() 函数该函数用来获取用户的输入input ()调用后,程序会立即暂停,等待用
2020-05-31 18:16:41 511
原创 04-运算符-(运算符的概念、算数运算符、赋值运算符、比较运算符、逻辑运算符(与或非)、条件运算符)
1.运算符1.1 运算符的概念运算符用于执行程序代码运算,会针对一个以上操作项目来进行运算。例如:2+3,其操作数是2和3,而运算符则是”+“。1.2 运算符的分类算数运算符赋值运算符比较运算符(关系运算符)逻辑运算符条件按运算符(三元运算符)2.算数运算符加法运算符 表现形式 +减法运算符 表现形式 —乘法运算符 表现形式 *除法运算符 表现形式 /// 整除,只会保留计算后的整数位,总会返回一个整型% 取模 ,求两个数相除的余数** 幂运算 ,求一个值的几次幂
2020-05-28 19:36:48 498
原创 03-Python-基本数据类型(表达式、语句、程序、函数、标识符、数据类型、变量、字符串)
1.几个基本概念1.1 表达式表达式是由数字、运算符、数字分组符号(括号)、自由变量和约束变量等以能求得数值的有意义排列方法所得的组合。表达式的特点1、 表达式一般仅仅用于计算一些结果,不会对程序产生实质性的影响。2、如果在交互模式中输入一个表达式,解释器会自动将表达式的结果输出。1.2语句一个语法上自成体系的单位,它由一个词或句法上有关联的一组词构成。语句的执行一般会对程序的产生一定的影响,在交互模式中不一定会输出语句的执行结果。1.3 程序(program)程序就是由一条一
2020-05-28 17:26:56 273
原创 02-Python基本要点-Python下载安装、第三库的安装、PyCharm的下载安装和简单配置
1.Python语言1.1 Python语言的基本概念Python是一种极少数能兼具 简单 与 功能强大 的编程语言。你将惊异于发 现你正在使⽤的这门编程语⾔是如此简单,它专注于如何解决问题,而非拘泥于语法与结构。官方对Python 的介绍如下:Python是一款易于学习且功能强大的编程语言。它具有高效率的数据结构,能够简单又有效的实现面对对象编程。Python 简洁的语法与动态输入之特性,加之其解释语言的本质,使得它成为一种在多种领域与绝大多数平台都能进行脚本编写与应用快速开发工作的理想语言。
2020-05-24 16:16:59 273
原创 01-计算机要点(计算机和计算机语言、计算机的交互方式(DOS命令)、文本文件和字符集、进制的转换和计数、环境变量)
1.计算机基本概念1.1计算机是什么?计算机(computer)俗称电脑,是现代⼀种⽤于⾼速计算的电⼦计算机器特点: 数值计算、 逻辑计算、 存储记忆功能总结:能够按照程序运⾏、⾃动、⾼速处理数据的现代化智能电⼦设备1.2计算器的组成硬件 鼠标 键盘 显示器 CPU 硬盘… 看的见摸的着.软件:PyCharm QQ 浏览器 英雄联盟… 看不见摸不着2.计算机语言2.1计算机语言的基本概念机器语⾔ --> 汇编语⾔ --> ⾼级计算机语⾔机器语⾔:最初的机器语⾔
2020-05-21 23:45:01 335 1
列表反转练习,提取两个列表中的相同元素,列表猜数字互动游戏.py
2020-06-02
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人