2、Redis入门介绍

1、什么是Redis

  • Redis:REmote DIctionary Server(远程字典服务器)
    • 是完全开源免费的,用C语言编写的,遵守BSD协议,是一个高性能的(key/value)分布式内存数据库,基于内存运行。并支持持久化的NoSQL数据库,是当前最热门的NoSql数据库之一, 也被人们称为数据结构服务器
  • Redis 与其他 key - value 缓存产品有以下三个特点
    • Redis支持数据的持久化,可以将内存中的数据保持在磁盘中,重启的时候可以再次加载进行使用
    • Redis不仅仅支持简单的key-value类型的数据,同时还提供list,set,zset,hash等数据结构的存储
    • Redis支持数据的备份,即master-slave模式的数据备份

2、Redis能干嘛

  • 内存存储和持久化:redis支持异步将内存中的数据写到硬盘上,同时不影响继续服务
  • 取最新N个数据的操作,如:可以将最新的10条评论的ID放在List集合
  • 模拟类似于HttpSession这种需要设定过期时间的功能
  • 发布、订阅消息系统
  • 定时器、计数器

  • Redis 相关网址:
    • 官网
    • 中文网站

3、Redis的安装

  • 下载地址
  • Windows版安装-(了解即可,官网推荐Linux安装)
    • 下载到的 Redis 支持 32bit 和 64bit 。根据自己实际情况选择,将 64bit 的内容 cp到自定义盘符安装目录取名redis。 如 C:\reids
    • 打开一个cmd窗口 使用cd命令切换目录到 C:\redis 运行 redis-server.exe redis.conf 。
    • 如果想方便的话,可以把redis的路径加到系统的环境变量里,这样就省得再输路径了,后面的那个redis.conf可以省略,
      如果省略,会启用默认的。输入之后,会显示如下界面:

启动服务 | center

  • 这时候另启一个cmd窗口,原来的不要关闭,不然就无法访问服务端了。
  • 切换到redis目录下运行 redis-cli.exe -h 127.0.0.1 -p 6379 。
  • 设置键值对 set myKey abc
  • 取出键值对 get myKey

启动客户端 | center

  • Linux版本安装
    • 安装前提: 安装之前需要安装 gcc ,所以安装之前请先确认自己是否安装了gcc, gcc -v
    • 解压下载 redis-3.2.3.tar.gz/opt目录下
    • cd 到解压的目录redis-3.2.3
    • make命令进行安装
    • 然后执行 $sudo make install
    • /usr/local/bin目录下看到redis大片相关命令和文件,安装成功

安装成功 | center

  • 安装成功执行命令和出厂默认配置文件设置与调整
    • 首先我们需要把 redis 安装目录中 redis.conf 拷贝出来,后面我本需要对配置文件学习-(注意: 不要轻易的对原配置文件修改), sudo cp redis.conf ~/myProfile/redis/
    • 启动 redis 服务 和 客户端:

redis 启动 | center

4、Redis启动后杂项基础知识讲解

  • Redis 是单进程
    • 单进程模型来处理客户端的请求。对读写等事件的响应是通过对epoll函数的包装来做到的。Redis的实际处理速度完全依靠主进程的执行效率
    • EpollLinux内核为处理大批量文件描述符而作了改进的epoll,是Linux下多路复用IO接口select/poll的增强版本,它能显著提高程序在大量并发连接中只有少量活跃的情况下的系统CPU利用率。
  • Redis 的数据库: 默认16个数据库,类似数组下表从零开始,初始默认使用零号库
  • 可以使用Select命令切换数据库
  • Dbsize查看当前数据库的key的数量
  • Flushdb:清空当前库
  • Flushall;通杀全部库
  • 统一密码管理,16个库都是同样密码,要么都OK要么一个也连接不上 (默认不需要密码)
  • Redis索引都是从零开始

16个数据库 | center
Dbsize | center
flushdb 、 flushall | center

转载于:https://www.cnblogs.com/MPPC/p/5924734.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/573115.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Coursera公开课-Machine_learing:编程作业7

这周的编程作业主要是两方面内容。 1.K-means聚类。 2.PCA(Principle Component Analys)主成分分析。 方式主要是通过对图像的聚类实现压缩图像,后来发现PCA也可以通过对主特征值的提取实现压缩图像的目的。很有意思,具体的内容参…

mysql 中间件 atlas_Mysql中间件代理 Atlas

本文接上文介绍atlas的安装配置,以及借助keepalive软件实现altas的ha,避免由于atlas故障,导致数据库服务中断的情况出现:一:环境介绍Atlas 主:192.168.1.12/24Atlas 从:192.168.1.81/24Atlas vi…

idea快捷操作_IDEA插件系列 快捷键神器!Key Promoter X

今天起,会陆续给大家介绍一些IDEA的插件。正所谓工欲善其事必先利其器,一款好的插件可以帮我们提升开发效率,或者提升使用IDEA的幸福感!今天要推荐的第一款插件 Key Promoter X 。相信很多新手甚至老手,对IDEA中的快捷…

if __name__ == __main__:什么意思_秒懂Python编程中的if __name__ == 'main' 的作用和原理...

来源:菜鸟分析 链接:https://zhuanlan.zhihu.com/p/34112508一天偶然发现知乎上有篇关于对python编程中的if __name__ main的理解陈述,看完之后,自己觉得不够简单明了,于是在其文章底部写了一句话,突然收获…

mongodb 教程一

mongodb是nosql(not only sql)的一种方式 。是对不同于传统的关系型数据库的数据库管理系统的统称。 NoSQL - 代表着不仅仅是SQL- 没有声明性查询语言- 没有预定义的模式-键 - 值对存储,列存储,文档存储,图形数据库- 最…

向文件中追加内容

#echo abcbedf>>a.txt 将abcdef追加到a.txt文件末尾 往文件中写入内容,比如原来的a.txt文件内容是aaaaa, #echo bbbbb>a.txt,这个是bbbbb把a.txt原来的内容替换 这里注意 >是覆盖,>>是追加。 如果为多行输入,需…

kali linux改中文_【亲测实验】kali linux 2020 设置为中文方法

kali 2020.1可用进入我们的正题,修改为中文的步骤1.更换更新源打开终端,输入下边命令打开更新源的文件vim /etc/apt/sources.list在文件结尾加入下边更新源#中科大deb http://mirrors.ustc.edu.cn/kali kali-rolling main non-free contribdeb-src http:…

ubuntu 破解mysql密码_Ubuntu下忘记MySQL root密码解决方法

Linux下忘记MySQL root密码解决方法忘了mysql密码,从网上找到的解决方案记录在这里。编辑mysql的配置文件/etc/mysql/my.cnf,在[mysqld]段下加入一行“skip-grant-tables”121201191255521.png重启mysql服务ubuntu:~$ sudo service mysql restartmysql s…

面向对象编程其实很简单——Python 面向对象(初级篇)

在Python教学中发现,很多同学在走到面向对象编程这块就开始蒙圈了,为了帮助大家更好的理解面向对象编程并其能将其用到自己的开发过程中,特写此文。 概述 面向过程:根据业务逻辑从上到下写垒代码 函数式:将某功能代码…

python 单链表是否有回路_第5章 第1节 链表

● 请你说出几种基本的数据结构,参考回答:常见的基本的数据结构有链表、栈、队列、树(只列出面试常考的基本数据结构)1、链表是一种物理存储单元上非连续、非顺序的存储结构,数据元素的逻辑顺序是通过链表中的指针链接次序实现的。链表由一系…

linux mysql管理软件_8款适合Linux用户使用的数据库管理工具!

从内容管理系统到简单的表格,数据库是每一个开发项目的一部分。这就是为什么开发者们如此强调使用正确类型的数据库工具。下面这些可能对您有所帮助!Autotabla是一个你的程序的SQL数据表的CGI管理界面。只需要提供你数据库架构的XML描述,你就…

jq 下拉加载每次只执行一次_记一次 无限列表 滚动优化

背景长列表优化, 是页面性能优化中的一个比较常见的问题,也是面试中的常客。刚好最近在的项目中, 遇到了一个长列表的性能问题,试过多种方案, 最后得以解决。今天就给大家分享一下。正文场景描述用户需要批量修改 Prod…

mysql fio测试_Linux下 fio磁盘压测笔记

专业的测试磁盘IO性能的软件:1、fio 【推荐使用】2、iometerfio的使用:参考博客: http://lilinji.blog.51cto.com/5441000/1569623https://linux.die.net/man/1/fiohttp://elf8848.iteye.com/blog/2168876 【讲的比较好】注意,我…

清除浮动塌陷的4种经典套路

【自古深情留不住,总是套路得人心。】 这些日子,各个朋友圈随时可以见到这句话的身影。的确人们常说:“多一点真诚,少一点套路。”,但是最终现象写实也是那么残酷和无奈。 同样在前端攻城狮的道路,我们都是…

mysql standalone模式_Boss7 Standalone模式开发配置

PS:以下配置均添加到standalone.xml文件中。1.Get请求编码设置,将如下配置添加到标签之后2.开启开发模式:搜索“urn:jboss:domain:web:1.1”,在此标签下添加如下配置:3.虚拟域名设置搜索“urn:jboss:domain:web:1.1”&…

python ide: pycharm

1, 设置python路径 2,运行py文件 https://www.jetbrains.com/help/pycharm/2016.1/creating-and-running-your-first-python-project.html#d50296e226 3, 格式化代码 From the main menu, select Code | Reformat Code or press CtrlAltL. 转载于:https://www.cnblo…

Android 滑动菜单框架--SwipeMenuListView框架完全解析

SwipeMenuListView(滑动菜单) A swipe menu for ListView.--一个非常好的滑动菜单开源项目。 Demo 一、简介 看了挺长时间的自定义View和事件分发,想找一个项目练习下。。正好印证自己所学。 在github上找到了这个项目:SwipeMenuL…

JAVA 开发axis2_基于Apache axis2开发Java Web服务

1.安装配置axis2环境下载好后把axis2-1.4.1-war目录下面的axis2.war发布到tomcat的webapps中。发布好,访问:http://localhost:8079/axis2/ 界面如下:2.开发web服务1)创建一个java web project2)编写服务代码1 public classSampleService {23…

Git小技巧 - 指令别名及使用Beyond Compare作为差异比较工具

前言 本文主要写给使用命令行来操作Git的用户,用于提高Git使用的效率。至于使用命令还是GUI(Tortoise Git或VS的Git插件)就不在此讨论了,大家根据自己的的喜好选择就好。我个人是比较推荐使用命令行的,因为命令行是原生…

java cache-control_详解浏览器Cache-Control缓存策略

原来用的是 Expires 策略,浏览器可以直接从浏览器缓存读取数据,而无需再次请求,它的值对应一个 GMT,来告诉浏览器资源缓存过期时间,如果还没过该时间点则不发请求。例如下面的例子,这是京东的首页里找的一个,时间都干到 2027 年了…