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. 小程序开发-组件navigator导航篇

    navigator 页面链接 navigator的open-type属性 可选值 navigate.redirect.switchTab,对应于wx.navigateTo.wx.redirectTo. ...

  2. indexOf原理,Java,javascript,python实现

      简介 最近做项目的时候,发现无论是前端还是后端,indexOf出现的概率都非常频繁,今天我们来看下他的实现原理吧! indexOf的含义:给定一个字符串去匹配另一个字符串的下标,如果匹配到,返回下 ...

  3. 高可用集群corosync+pacemaker之pcs安装使用

    前文我们介绍了高可用集群corosync+pacemaker的集群管理工具crmsh的常用命令的使用,回顾请参考https://www.cnblogs.com/qiuhom-1874/tag/crms ...

  4. 使用java爬虫从雪球网下载股票数据

    雪球网也是采用Ajax方式展示数据,我依然采用开发者工具查看其访问地址和返回数据. 访问使用到的库是jsoup,解析返回的json用的类库是jackson,二者的依赖是: <!-- jsoup ...

  5. python应用 曲线拟合04

    python应用 曲线拟合04 → 多项式拟合 主要是使用 numpy 库中的 polyfit() 函数,见第 66 行, z = np.polyfit(x_proton, y, 3) ,其中待拟合曲 ...

  6. Kubernetes笔记(五):了解Pod(容器组)

    Kubernetes 中, 容器总是以 Pod(容器组)的方式进行调度与运行.因此对 Pod 的理解与掌握是学习 Kubernetes 的基础. 理解 Pod Pod(容器组)是 Kubernetes ...

  7. SpringAOP+源码解析,切就完事了

    本文是对近期学习知识的一个总结,附带源码注释及流程图,如有不足之处,还望评论区批评指正. 目录 一.AOP.SpringAOP.AspectJ的区别 二.AOP关键术语 三.通知的五种类型 四.切入点 ...

  8. Docker 学习笔记一

    Docker 学习笔记一 1.Docker是什么?         Docker 是一个开源的应用容器引擎,基于 Go 语言 并遵从 Apache2.0 协议开源.让开发者打包他们的应用以及依赖包到一 ...

  9. 文件操作和OS模块的简单操作

    文件的作用 大家应该听说过一句话:“好记性不如烂笔头”. 不仅人的大脑会遗忘事情,计算机也会如此,比如一个程序在运行过程中用了九牛二虎之力终于计算出了结果,试想一下如果不把这些数据存放起来,相比重启电 ...

  10. 硬核看房利器——Web 全景的实现

    作者:凹凸曼 - EC 疫情期间,打破社交距离限制的交互模式被推向前台,为不少行业的传统交易提供了想象的空间. 疫情时期,房地产租售业受到的冲击无疑是巨大的,由于人口流动的限制,需求量大幅减少,无法现 ...