自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(117)
  • 资源 (3)
  • 收藏
  • 关注

原创 Redis的AOF持久化(二)

一 appendfsync说明为了控制redis服务器在遇到意外停机时丢失的数据量,redis为AOF持久化提供appendfsync选项,这个选项的值可以是always,ererysec或者no,这些值得含义分别是:always:服务器每写入一个命令,就调用一次fdatasync,将缓冲区里面的命令写入到硬盘里面,在这种模式下,服务器即使遭遇到意外停机,也不会丢失任何自己已经成功执行的命

2018-01-31 21:38:48 311

原创 Redis的AOF持久化

一 RDB持久化的缺点RDB持久化有一个缺点,那就是因为创建RDB文件需要将服务器所有的数据库的数据都保存起来,这是一个非常耗费资源和时间的操作,所以服务器需要隔一段时间才创建一个新的RDB文件,也即是说,创建RDB文件的操作不能执行得过于频繁,否则就会严重影响服务器的性能。比方说,在save配置选项默认设置下,即使有超过10000次修改操作发生,服务器也至少会间隔一分钟才创建一个RDB文

2018-01-31 21:36:09 369

原创 Redis自动创建RDB

一 说明举个例子,设置save 300 10表示“如果距离上一次创建RDB文件已经过去了300秒,并且服务器的所有数据库总共已经发生了不少于10次修改,那么系统自动执行BGSAVE命令”。而设置:save 60 10000表示“如果距离上一次创建RDB文件已经过去了60秒,并且服务器的所有数据库总共已经发生了不少于10000次修改,那么系统自动执行BGSAVE命令”。另

2018-01-31 19:43:40 1584 2

原创 Redis持久化

一 相关概念1 什么是持久化将数据从掉电易失的内存存放到能够永久存储的设备上2 Redis为什么需要持久化基于内存缓存服务器内存数据库消息队列3 Redis持久化方式RDB(Redis DB):默认开启AOF(AppendOnlyFile):默认是不开启动二 相关说明因为Redis服务器将数据存储在内存里面,而一旦服务器被关闭、或者运行服务器

2018-01-31 19:25:53 389

原创 一个有趣的镜像whalesay

下面通过运行Docker提供的一个镜像whalesay来说明如何使用Docker运行一个镜像。一 关于Docker Hub首先,登陆Docker Hub查找需要的镜像名称。Docker Hub是一个官方的管理Docker镜像的仓库,类似与GitHub,只不过GitHub托管的源代码。在Docker Hub,你可以使用Docker镜像,也可上传自己的Docker镜像。进入Dock

2018-01-30 22:03:36 2773

原创 docker搭建lamp应用

一 简介LAMP 指的 Linux(操作系统)、ApacheHTTP 服务器,MySQL(有时也指MariaDB,数据库软件) 和 PHP(有时也是指 Perl 或 Python) 的第一个字母,一般用来建立 web 服务器。 虽然这些开放源代码程序本身并不是专门设计成同另几个程序一起工作的,但由于它们的免费和开源,这个组合开始流行(大多数Linux发行版本捆绑了这些软件)。当一起使用的时候,

2018-01-30 22:00:44 1169

原创 Docker的CentOS/Fedora镜像

CentOS和Fedora都是基于Redhat的Linux发行版。前者以兼容Redhat软件而出名,CentOs是企业级服务器的常用选型;后者则主要面向个人用户。一 搜索CentOS二 搜索 Fedora用户可根据搜索结果,选择下载镜像并使用。

2018-01-29 22:05:43 1046

原创 SortedSet有序集合的应用

一 音乐排行榜1 分析每首歌的歌名作为元素每首歌的播放次数作为分值ZREVRANGE来获取播放次数最多的歌曲2 python关键代码3 结果二 新浪微博翻页1 说明新闻网站、博客、论坛、搜索引擎,页面列表条目多,都需要分页blog这个key中使用时间戳作为score2 实战127.0.0.1:6379> ZADD blog 140

2018-01-29 22:03:25 1843

原创 Redis有序集合命令ZCARD|ZCOUNT|ZUNIONSTORE|ZINTERSTORE

一 ZCARD1 介绍返回集合中元素个数ZCARD key2 实战127.0.0.1:6379> zadd fruits 2.0 xigua 3.2 xiangjiao 4.0 fanshinian 6.8 mangguo 7.0 li(integer) 5127.0.0.1:6379> ZCARD fruits(integer) 5二 ZCOUNT1 介绍

2018-01-28 21:56:41 3371

原创 Redis有序集合命令ZRANGEBYSCORE|ZREVRANGEBYSCORE|ZREMRANGEBYRANK|ZREMRANGEBYSCORE

一 ZRANGEBYSCORE1 介绍返回指定分值区间元素ZRANGEBYSCORE key min max [WITHSCORES] [LIMIT offset count]默认score默认属于[min,max]之间,元素按照score升序排列,score相同按照元素字典序排序LIMIT中offset代表跳过多少个元素,count是返回几个,类似Mysql使用小括号,修

2018-01-28 09:55:15 4636

原创 Redis有序集合命令ZRANK|ZREVRANk|ZRANGE|ZREVRANGE

一 ZRANk1 介绍返回元素的排名(索引)ZRANk key member2 举例127.0.0.1:6379> ZRANK fruits 香蕉(integer) 0127.0.0.1:6379> ZRANK fruits 番石榴(integer) 2127.0.0.1:6379> ZRANK fruits 芒果(integer) 33 图例二 

2018-01-28 09:21:01 2651

原创 Redis的有序集合|ZADD|ZREM|ZSCORE|ZINCRBY

一 特点类似Set集合有序的,去重的元素是字符串类型每个元素都关联着一个浮点数分值(Score),并按照分值从小到大的顺序排列集合中的元素。分值可以相同。最多包含2^32-1元素二 有序集合生活例子1 一个保存了水果价格的有序集合2 一个保存了员工薪水的有序集合3 一个有序集合,保存了正在阅读某些技术书籍的人数三 ZADD1

2018-01-28 08:48:59 9179

原创 Set的集合操作

一 差集1 说明SDIFF key [key ...]  从第一个key的集合中去除其他集合中和自己相交的部分。SDIFFSTORE destination key [key ...]将差集保存到destination集合中2 举例127.0.0.1:6379> SADD num1 123 456 789(integer) 3127.0.0.1:6379> SA

2018-01-27 21:31:30 819

原创 Redis集合的无序性|SRANDMEMBER|SCARD|SPOP|SMOVE

一 实战127.0.0.1:6379> SADD mem1 peter jack tom john may ben(integer) 6127.0.0.1:6379> SADD mem2 peter jack tom john may ben(integer) 6127.0.0.1:6379> SMEMBERS mem11) "tom"2) "john"3) "peter"4)

2018-01-27 20:39:21 764

原创 Redis Set集合以及常用命令

一 简介无序的、去重的元素是字符串类型最多包含2^32-1元素二 SADD命令1 介绍SADD key member [member ...]如果元素已经存在,则自动忽略2 举例127.0.0.1:6379> SADD frieds peter(integer) 1127.0.0.1:6379> SADD frieds jack tom jo

2018-01-27 20:05:47 368

原创 Redis Hash散列

一 介绍由field和关联的value组成map键值对field和value是字符串类型一个hash中最多包含2^32-1键值对二 常用命令1 设置单个字段HSET key field valueHSETNX key field valuekey的field不存在的情况下执行,key不存在直接创建2 设置多个字段HMSET key field v

2018-01-27 19:42:55 1284

原创 Redis的List命令LINSERT和阻塞介绍

一 LINSERT1 介绍在列表中某个存在值(pivot)前或后插入元素LINSERT key BEFORE|AFTER pivot valuekey和pivot不存在,不进行任何操作2 举例127.0.0.1:6379> RPUSH lst Coljure C Lua(integer) 3127.0.0.1:6379> LINSERT lst after C Pyth

2018-01-26 19:35:05 1411

原创 运行最简单的Docker容器hello-world

一 实战[root@localhost ~]# systemctl start docker[root@localhost ~]# docker run hello-worldUnable to find image 'hello-world:latest' locallylatest: Pulling from library/hello-world9a0669468bf7: Pul

2018-01-26 19:08:40 2786

原创 搭建Docker镜像私有服务器

一 实战服务端[root@localhost opt]# docker run -d -p 5000:5000 -v /opt/docker/registry:/var/lib/registry --restart always --name registry registry:2Unable to find image 'registry:2' locally2: Pulling f

2018-01-26 19:06:30 1434

原创 Redis的List命令LREM|LTRIM

一 LREM介绍1 从列表头部开始删除值等于value的元素count次LREM key count valuecount>0:从表头开始向表尾搜索,移除与value相等的元素,数量为countcountcount=0:移除表中所有value相等的值2 举例127.0.0.1:6379> RPUSH listkey c abc c ab 123 ab bj ab red

2018-01-25 21:53:36 3948

原创 加速Docker官网镜像仓库

一 常用加速器阿里云:docker——仓库加速的私有地址daocloud.io:http://12812674.m.daocloud.io二 两种加速方法1 方法一[root@localhost ~]# cd /etc/docker/[root@localhost docker]# lskey.json[root@localhost docker]# touch

2018-01-25 21:30:44 768

原创 Redis的List列表类型

一 简介基于Linked List实现。元素是字符串类型。列表头尾增删快,中间增删慢,增删元素是常态。元素可以重复出现最多包含2^32-1元素二 列表的索引从左到右,从0开始从右到左,从-1开始三 命令说明1 相关说明B block 阻塞L left 左R right 右X exist 存在2 从左右或者头尾压入元

2018-01-25 21:28:30 407

原创 kafka集群监控工具之 Kafka Offset Monitor

一 下载Kafka Offset Monitor软件KafkaOffsetMonitor-assembly-0.2.0.jar二 安装部署1 准备一个目录kafka_monitor在该目录下放下面两个文件监控软件:KafkaOffsetMonitor-assembly-0.2.0.jar启动脚本:kafak_monitor_start.sh2 准备启动脚

2018-01-23 21:35:31 3958 4

原创 kafka集群搭建

一 集群准备192.168.0.110——master192.168.0.111——slave1192.168.0.112——slave2二 下载并完成安装1 下载地址http://archive.apache.org/dist/kafka/0.8.2.1/kafka_2.10-0.8.2.1.tgz2  解压[root@master opt]# tar -

2018-01-23 21:29:09 356

原创 商品订单频繁项集Toplogy实现

一 代码实现package com.hust.grid.leesf.ordertest.bolt;import java.util.HashMap;import java.util.Map;import com.hust.grid.leesf.ordertest.common.ConfKeys;import com.hust.grid.leesf.ordertest.common.

2018-01-22 21:37:59 327

原创 Redis位图的典型应用

一 登录不同的库[root@master ~]# redis-cli -n 1127.0.0.1:6379[1]> keys *(empty list or set)二 清除当前库数据127.0.0.1:6379[1]> FLUSHDB三 清除所有库中的数据127.0.0.1:6379[1]> FLUSHALL四 位图bitmap应用1

2018-01-22 21:35:06 1128

原创 商品订单频繁项集数据流分析

一 Redis中生成数据ID1 [(商品1,2),(商品2,3),(商品3,4),(商品4,5)]ID2 [(商品2,3),(商品3,3),(商品4,2),(商品5,5)]ID3 [(商品1,2),(商品2,2),(商品3,4),(商品5,1)]二 经过Spolt后1 发射的数据为12条(ID1,商品1,2)(ID1,商品2,3)

2018-01-21 11:46:43 887

原创 商品订单频繁项集Bolt实现

一 设计方案介绍SplitBolt:对订单中的商品进行两两组合并发送PairCountBolt:计算商品对出现的次数PairTotalCountBolt:计算商品对总数SupportComputeBolt:计算商品对的支持度ConfidenceComputeBolt:计算商品对的置信度FilterBolt:过滤符合条件的商品对并存入redis二 SplitBol

2018-01-21 11:44:29 360

原创 商品订单频繁项集Spout实现

一 需求通过OrderSpout读取Redis中的订单数据,以供拓扑结构下游的Bolt使用。通过CommandSpout实现统计支持度和置信度。二 OrderSpout实现package com.hust.grid.leesf.ordertest.spout;import java.util.Map;import org.json.simple.JSONArray;i

2018-01-21 09:53:54 294

原创 商品订单频繁项集生成订单数据

一 需求生成30个订单,每个订单有4件商品,将订单数据存放到Redis数据库。二 代码OrderGeneratorpackage com.hust.grid.leesf.ordertest.common;import java.util.HashSet;import java.util.Random;import java.util.Set;import java.u

2018-01-21 09:29:52 1259

原创 Redis位操作BITOP|BITCOUNT

一 BITOP1 介绍对一个或多个保存二进制位的字符串key进行位元操作,并将结果保存到destkey上。operation可以是AND、OR、NOT、XOR这四种操作中的任意一种。BITOP AND destkey key [key ...]  ,对一个或多个key求逻辑并,并将结果保存到destkeyBITOP OR destkey key [key ...] ,对一个或多

2018-01-21 08:06:09 11032 4

原创 Redis的位图bitmap

一简介位图不是真正的数据类型,它是定义在字符串类型中。一个字符串类型的值最多能存储512M字节的内容。位上限:2^(9+10+10+3)=2^32b二 bitmap相关操作1 设置某一位上的值SETBIT key offset valueoffset是偏移量,从0开始,从左往右2 获取某一位上的值GETBIT key offset3 返回指定值0或者

2018-01-21 08:03:34 4677

原创 Redis的基本常识

一 介绍Redis key是二进制安全的,这意味着可以用任何二进制序列作为key,从形如“foo”的简单字符串到一个JPEG文件的内容都可以。空字符串也是有效的key。二 key取值原则1 键不需要太长,消耗内存,且在数据查找这类键的计算成本较高。2 键不宜过短,可读性较差。三 String1 介绍字符串是一种最基本的Redis值类型。Redis字符串是

2018-01-21 08:00:40 446

原创 Redis数字操作

一 介绍Redis字符串键是可以存储数字的,并且当存储是数字的时候,Redis有一些命令可以专门处理这种数字的值。只要存储在字符串键里面的值可以被解释为64位整数,或者标准的64位浮点数,那么用户就可以对这个字符串键执行针对数字值得命令。下面表格说明了哪些值可以被解释为整数或浮点数,科学计数法不会试图解释,直接当字符串了。二 增加或减少数字的值对于一个键是字符串的k

2018-01-21 07:57:22 11033

原创 Redis索引以及SETRANGE和GETRANGE

一 字符串索引介绍字符串索引以0开始,从字符串开头向字符串的结尾依次递增,字符串第一个字符的索引未0,字符串的最后一个字符索引为N-1,其中N为字符串的长度。举个例子,这里有个字符串“hello”由5个字符组成,它的索引分别是0,1,2,3,4,从0到4。除了正数索引外,字符串还有负数索引:负数索引以-1为开始,从字符串的结尾向字符串的开头依次递减,字符串的最后一个字符的索引为-N,其中N

2018-01-21 07:54:38 3236

原创 Redis命令msetnx|getset|APPEND|STRLEN

一 msetnx key value [key value ...]1 介绍如果至少有一个是存在的,那么msetnx将不执行任务设置操作2 实战127.0.0.1:6379> msetnx nx-1 "hello" nx-2 "world" nx-3 "goodluck"(integer) 1127.0.0.1:6379> set ex-key "bad key here"O

2018-01-21 07:52:10 402

原创 Redis的特点

世界上无数的数据库,为什么要使用Redis呢?我们看看它的特点。一 独特的键值对模型我们知道很多数据库只能处理一种数据结构:SQL数据库:处理表格。MemCached:键值对数据库,键和值都是字符串。文档数据库(MongoDB):由Json/Bson组成的文档。当然不是他们这些数据库不好,而是一旦数据库提供数据结构不适合去做某件事情的话,程序写起来就非常麻烦和不自然。R

2018-01-20 15:31:14 2494

原创 Redis的其他设置和获取键命令

一 SETNX key value1 含义不存在键,才能设置成功。2 实战127.0.0.1:6379> SETNX newkey "I am a new key"(integer) 1127.0.0.1:6379> SETNX newkey "another new key here"(integer) 0127.0.0.1:6379> get newkey"I am

2018-01-20 15:17:00 438

原创 Redis的set和get命令

一 set key value [EX seconds] [PX milliseconds] [NX|XX]1 简介将字符串键key的值设置为value,命令返回OK表示成功,如果字符串键key已经存在,那么就用新值覆盖原来的旧值。2 实战[root@master redis]# redis-cli127.0.0.1:6379> set msg "hello world"OK

2018-01-20 12:39:21 9202 1

原创 Redis的字符串数据类型String

Redis中最简单的数据类型,它既可以存储文字,如hello world,又可以存储数字,如10086,还可以存储浮点数,如3.14,还可以存储二进制10010100。Redis为这几种数据类型的值分别设置了相应的操作命令,让用户可以针对不同的值做不同的处理。

2018-01-20 12:21:25 292

2 shiro身份认证.mp4

身份验证介绍了身份验证基础、principals、credentials、身份认证流程、Realm、多 Realm 配置以及相关实战。

2020-05-19

1 shiro简介.mp4

Apache Shiro 是 Java 的一个安全框架。目前,使用 Apache Shiro 的人越来越多,在此分享给大家!

2020-05-19

Java单选.docx

常见Java单选题,

2019-12-08

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除