背景

随着互联网的不断发展和软件架构的不断复杂化,同时随着网站访问量的日渐上升,导致传统单机关系型数据库应用已经无法满足人们的需求,在高并发的场景下,频繁的数据库存取操作使得服务器压力剧增,甚至导致服务器宕机,为了缓解服务器压力,由此NoSQL技术应运而生。

什么是NoSQL

NoSQL,泛指非关系型的数据库。随着互联网web2.0网站的兴起,传统的关系数据库在处理web2.0网站,特别是超大规模和高并发的SNS类型的web2.0纯动态网站已经显得力不从心,出现了很多难以克服的问题,而非关系型的数据库则由于其本身的特点得到了非常迅速的发展。NoSQL数据库的产生就是为了解决大规模数据集合多重数据种类带来的挑战,尤其是大数据应用难题。

NoSQL的四大分类及典型应用

  • K-V键值:Redis、Tair

  • 文档型数据库:MongoDB、CouchDB

  • 列存储数据库:HBase、分布式文件系统

  • 图关系数据库:Neo4J、InfoGrid

四者区别

什么是Redis

Redis(全称:Remote Dictionary Server 远程字典服务)是一个开源的使用ANSI C语言编写、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的API。

特点

  • Redis支持数据持久化,可以将内存中的数据存在磁盘中,机器重启后,可以再次加载使用

  • Redis支持多种数据类型的数据,不仅仅支持Key-Value类型的数据,还支持list、set、hash等数据类型

  • Redis支持数据的备份

官网

https://redis.io/

功能

  1. 支持内存存储和持久化

  2. 可以设定数据过期时间

  3. 发布订阅消息的功能

  4. 定时器、计数器

  5. 自动故障转移

    安装

    1. 下载安装包:访问https://redis.io/download 下载安装包,点击下载,如果在非本机安装需要把安装包上传到需要安装的机器上

      或者使用

      wget http://download.redis.io/releases/redis-5.0.7.tar.gz

      命令下载redis资源

    1. 解压

      tar zxvf redis-5.0.7.tar.gz
      
      

    2. 编译

      切换到redis解压后的目录

      cd redis-5.0.7
      make

    3. 如果遇到以上错误,说明未安装gcc

      使用yum install gcc-c++安装redis编译的c环境

    4. 安装

      进入src目录

      make install PREFIX=/usr/local/redis   PREFIX参数指定redis的安装目录
      
      

      前台启动

      redis-server

      由于笔者之前装过Redis,所以这里Redis的版本是4.0.9

    5. 后台启动

      修改redis.conf文件的daemonize no 改成daemonize yes,让服务在后台启动

      运行redis-server /usr/local/redis/redis.conf启动服务

    6.连通测试

    redis-cli
    ping

    1. 关闭

    单实例:redis-cli shutdown

    多实例:指定端口关闭:redis-cli -p 6379 shutdown

最新文章

  1. hdu2848 Visible Trees (容斥原理)
  2. AngularJS----基本操作
  3. Backbone☞View中的events...click事件失效
  4. java框架之struts2简介
  5. mysql数据库创建、删除数据库
  6. jenkins安装配置[二]
  7. Google官方网络框架-Volley的使用解析Json以及加载网络图片方法
  8. BZOJ_2073_[POI2004]PRZ_状压DP
  9. mac 删除文件夹里所有的.svn文件
  10. 2018-2019-1 20189203《Linux内核原理与分析》第二周作业
  11. php中静态方法和静态属性的介绍
  12. ARM Linux中断发生时内核堆栈切换
  13. Cloth
  14. mybatis源码-解析配置文件(二)之解析的流程
  15. HTML5 移动开发(CSS3设计移动页面样式)
  16. centos 6.4 x86_64 (minimal) 编译安装percona
  17. Android网络缓存的实现思路
  18. poj3718 Facer's Chocolate Dream
  19. 转载 二十篇java技术热文
  20. Android版CSDN发现的一些问题

热门文章

  1. Python3 虚拟开发环境搭建
  2. d3.js制作条形时间范围选择器
  3. linux solr 安装
  4. phpcms2008安装时mysql出错
  5. js字符数组转化为数字数组
  6. 成功填坑! Java引入QQ登录时,AccessToken [accessToken=, expireIn=];
  7. unittest模块使用方法
  8. 06hive企业调优
  9. Browser Security-同源策略、伪URL的域
  10. set集合迭代