layout: post

title: 2017-12-05-Redis 入门

tags:

- Redis

- 实时特征

- UCB, Tompson sampling

Redis 是什么?

Redis是一个开源的使用 ANSI C语言编写、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的API。--引自百度百科

总之,Redis 就是一个存在于内存key-value 数据库,而且基于日志,所以基本不用太担心数据丢失问题,但是要担心数据量的问题。

为什么要用Redis?

因为有时候我们需要非常及时地读取和写入量并不大的数据,即量少但是非常热(频繁读写)的数据,很自然地想到为什么不把它们放在内存里呢?

比如我们的实践:

  1. 实时流量预估(城市、商圈级别)
  2. 实时点击率(帖子级别)
  3. 待实验的实时曝光、点击次数计数(UCB、Tompson Sampling)

其他实践:

  1. 实时热点新闻
  2. 实时用户最近访问

Redis 怎么用?

安装

  1. 源码获取,可以直接从官网下载, 也可以从github上拉取;
  2. 安装 直接在项目根目录执行make即可,也可以按照README里面make其他,如果只是普通使用,make够了。make完了,会提示你make test;
  3. 上面make的结果是代码和可执行程序以及中间目标文件在一个目录src里面,非常不爽。分离之,建立bin(二进制文件), conf(redis.conf);
  4. 启动,如果你没有什么特别需要配置的,直接运行bin里的./redis-server ../conf/redis.conf即可
  5. 要关闭的话,运行bin里的./redis-cli shutdown

操作

操作一般是通过客户端来进行的,命令行客户端./redis-cli,如果通过java操作,需要使用java的客户端Jedis或者SharedJedis来操作,相信其他语言也会有对应的客户端

代码示例

参见

我确实很懒,虽说天下代码一半抄,我还是懒得把别人的代码贴过来。

Redis安装使用以及可能的算法实践的更多相关文章

  1. Linux 下的 redis安装

    官网下载链接:https://redis.io/download redis安装流程,记录自己的实践,分享给需要的人. 1.选择Stable(5.0)下的Download 5.0.0 链接进行下载 ( ...

  2. redis集群与分片(2)-Redis Cluster集群的搭建与实践

    Redis Cluster集群 一.redis-cluster设计 Redis集群搭建的方式有多种,例如使用zookeeper等,但从redis 3.0之后版本支持redis-cluster集群,Re ...

  3. Redis Cluster集群的搭建与实践

    Redis Cluster集群 一.redis-cluster设计 Redis集群搭建的方式有多种,例如使用zookeeper等,但从redis 3.0之后版本支持redis-cluster集群,Re ...

  4. Redis-cluster集群【第一篇】:redis安装及redis数据类型

    Redis介绍: 一.介绍 redis 是一个开源的.使用C语言编写的.支持网络交互的.可以基于内存也可以持久化的Key-Value数据库. redis的源码非常简单,只要有时间看看谭浩强的C语言,在 ...

  5. Redis 安装 启动 连接 配置 重启

    Linux下安装 ]# wget http://download.redis.io/releases/redis-2.8.17.tar.gz ]# .tar.gz ]# cd redis- ]# ma ...

  6. 【转】Redis安装整理(window平台和Linux平台)

    原文连接:http://zheng12tian.iteye.com/blog/1471726 原文作者:zheng12tian 转载注明以上信息! window平台Redis安装 redis wind ...

  7. redis安装、测试&集群的搭建&踩过的坑

    1 redis的安装 1.1   安装redis 版本说明 本教程使用redis3.0版本.3.0版本主要增加了redis集群功能. 安装的前提条件: 需要安装gcc:yum install gcc- ...

  8. windows下redis安装及配置

    1.简介: redis是一个高性能的key-value数据库:redis能读的速度为11万次/秒,写的速度是8.1万次/秒 redis支持丰富的数据类型:String, List, Hash(map) ...

  9. Redis 安装、配置、集群

    1.   Redis的安装 1.1. Redis的安装 Redis是c语言开发的. 安装redis需要c语言的编译环境.如果没有gcc需要在线安装.yum install gcc-c++ 安装步骤: ...

随机推荐

  1. 1. Error running ...: No jdk for module ... 2.

    一.错误 Error running ...: No jdk for module ... Error running ...: No jdk for module ... 二.解决方法 找到File ...

  2. C#知识点:I/O

    一.什么是I/0流? 英文翻译:Input/Output,在程序里简单的理解为读写数据操作数据的意思.流操作是为了解决体积大数据占用太多的内存,就是分段进行操作.就跟我们吃饭一样,一口一口的吃,还没见 ...

  3. Ajxax技术-1

    1.什么是Ajax Ajax: Asynchronous javascript and xml (异步javascript和xml). ==Ajax并不是一种新技术,而是已有技术的集合.JavaScr ...

  4. Agumaster添加股票日交易爬虫画面

  5. 深入理解 JVM 的内存区域

    深入理解运行时数据区 代码示例: 1. JVM 向操作系统申请内存: JVM 第一步就是通过配置参数或者默认配置参数向操作系统申请内存空间,根据内存大小找到具体的内存分配表,然后把内存段的起始地址和终 ...

  6. 20190923-06Linux文件权限类 000 014

    文件属性 Linux系统是一种典型的多用户系统,不同的用户处于不同的地位,拥有不同的权限.为了保护系统的安全性,Linux系统对不同的用户访问同一文件(包括目录文件)的权限做了不同的规定.在Linux ...

  7. Java通过http协议发送Get和Post请求

    https://blog.csdn.net/qq_32599479/article/details/94439131

  8. i春秋公益赛之BFnote

    题目链接:https://buuoj.cn/challenges#gyctf_2020_bfnote 首先检查程序开的保护: 发现程序只开了canary和NX保护,接下来查看IDA反汇编出来的为代码, ...

  9. Mybatis-日志

    日志 目录 日志 1. 日志工厂 1. STDOUT_LOGGING标准日志输出 2. LOG4J 1. 先导入Log4J的包 2. log4j.properties 3. 配置log4j为日志的实现 ...

  10. Webpack 打包优化之体积篇

    谈及如今欣欣向荣的前端圈,不仅有各类框架百花齐放,如Vue, React, Angular等等,就打包工具而言,发展也是如火如荼,百家争鸣:从早期的王者Browserify, Grunt,到后来赢得宝 ...