成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

手把手教你從零搭建一個(gè)Redis服務(wù)

開(kāi)發(fā) 后端 Redis
自己在搭建redis服務(wù)的時(shí)候碰到一些問(wèn)題,好多人只告訴你怎么成功搭建,但是并沒(méi)有整理過(guò)程中遇到的問(wèn)題,所有樓主就花了點(diǎn)時(shí)間來(lái)整理下。

 [[274854]]

前言

自己在搭建redis服務(wù)的時(shí)候碰到一些問(wèn)題,好多人只告訴你怎么成功搭建,但是并沒(méi)有整理過(guò)程中遇到的問(wèn)題,所有樓主就花了點(diǎn)時(shí)間來(lái)整理下。

  • linux環(huán)境安裝redis
  • 安裝中的碰到的問(wèn)題和解決辦法
  • 怎么在代碼中使用安裝的redis
  • 設(shè)置用戶名和密碼
  • 程序應(yīng)用中碰到的問(wèn)題

介紹

redis是一個(gè)key-value存儲(chǔ)系統(tǒng)。和Memcached類(lèi)似,它支持存儲(chǔ)的value類(lèi)型相對(duì)更多,包括string(字符串)、list(鏈表)、set(集合)、zset(sorted set --有序集合)和hash(哈希類(lèi)型)。這些數(shù)據(jù)類(lèi)型都支持push/pop、add/remove及取交集并集和差集及更豐富的操作,而且這些操作都是原子性的。在此基礎(chǔ)上,redis支持各種不同方式的排序。與memcached一樣,為了保證效率,數(shù)據(jù)都是緩存在內(nèi)存中。區(qū)別的是redis會(huì)周期性的把更新的數(shù)據(jù)寫(xiě)入磁盤(pán)或者把修改操作寫(xiě)入追加的記錄文件,并且在此基礎(chǔ)上實(shí)現(xiàn)了master-slave(主從)同步。

Redis 是一個(gè)高性能的key-value數(shù)據(jù)庫(kù)。 redis的出現(xiàn),很大程度補(bǔ)償了memcached這類(lèi)key/value存儲(chǔ)的不足,在部 分場(chǎng)合可以對(duì)關(guān)系數(shù)據(jù)庫(kù)起到很好的補(bǔ)充作用。它提供了Java,C/C++,C#,PHP,JavaScript,Perl,Object-C,Python,Ruby,Erlang等客戶端,使用很方便。

一、安裝redis

1、下載安裝包

  1. cd /www/redis/ 
  2. wget http://download.redis.io/releases/redis-4.0.8.tar.gz 
  3. tar -zxvf redis-4.0.8.tar.gz 
  4. mv redis-4.0.8 redis 

2、編譯redis

  1. cd /www/redis/redis/ 
  2. make MALLOC=libc 
  3. make PREFIX=/usr/local/redis install 

3、準(zhǔn)備配置文件

  1. cd /usr/local/redis 
  2. mkdir conf 
  3. cd conf/ 
  4. vi redis_6379.conf 

配置文件內(nèi)容如下:

  1. bind 127.0.0.1 
  2. protected-mode no 
  3. port 6379 
  4. tcp-backlog 511 
  5. timeout 0 
  6. tcp-keepalive 300 
  7. daemonize yes 
  8. supervised no 
  9. pidfile /www/redis/data/redis/6379/redis_6379.pid 
  10. loglevel notice 
  11. logfile "/www/redis/data/redis/6379/log.log" 
  12. databases 16 
  13. always-show-logo yes 
  14. save 900 1 
  15. save 300 10 
  16. save 60 10000 
  17. stop-writes-on-bgsave-error yes 
  18. rdbcompression yes 
  19. rdbchecksum yes 
  20. dbfilename dump.rdb 
  21. dir /www/redis/data/redis/6379/ 
  22. slave-serve-stale-data yes 
  23. slave-read-only yes 
  24. repl-diskless-sync no 
  25. repl-diskless-sync-delay 5 
  26. repl-disable-tcp-nodelay no 
  27. slave-priority 100 
  28. lazyfree-lazy-eviction no 
  29. lazyfree-lazy-expire no 
  30. lazyfree-lazy-server-del no 
  31. slave-lazy-flush no 
  32. appendonly yes 
  33. appendfilename "appendonly.aof" 
  34. appendfsync everysec 
  35. no-appendfsync-on-rewrite no 
  36. auto-aof-rewrite-percentage 100 
  37. auto-aof-rewrite-min-size 64mb 
  38. aof-load-truncated yes 
  39. aof-use-rdb-preamble no 
  40. lua-time-limit 5000 
  41. slowlog-log-slower-than 10000 
  42. slowlog-max-len 128 
  43. latency-monitor-threshold 0 
  44. notify-keyspace-events "" 
  45. hash-max-ziplist-entries 512 
  46. hash-max-ziplist-value 64 

4、啟動(dòng)服務(wù)

  1. mkdir -p /www/redis/data/redis/6379/ 
  2. cd ../bin/ 
  3. ./redis-server ../conf/redis_6379.conf 

5、使用客戶端鏈接

  1. ./redis-cli 

判斷是否啟動(dòng)成功

「建議收藏」手把手教你從零搭建一個(gè)redis服務(wù)

6、使用

查看數(shù)據(jù)

  1. keys * 

設(shè)置值

  1. set oneKey 測(cè)試 

獲取值

  1. get oneKey 
「建議收藏」手把手教你從零搭建一個(gè)redis服務(wù)

二、安裝中的碰到的問(wèn)題和解決辦法

問(wèn)題一:

  1. WARNING: The TCP backlog setting of 511 cannot be enforced because /proc/sys/net/core/somaxconn is set to the lower value of 128.  

臨時(shí)解決辦法:

  1. echo 511 > /proc/sys/net/core/somaxconn 

永久解決辦法

  1. vi /etc/sysctl.conf 
「建議收藏」手把手教你從零搭建一個(gè)redis服務(wù)

在里面添加net.core.somaxconn= 1024 然后執(zhí)行sysctl -p 就可以永久消除這個(gè)warning。

「建議收藏」手把手教你從零搭建一個(gè)redis服務(wù)

問(wèn)題二:

  1. WARNING overcommit_memory is set to 0! Background save may fail under low memory condition. To fix this issue add 'vm.overcommit_memory = 1' to /etc/sysctl.conf and then reboot or run the command 'sysctl vm.overcommit_memory=1' for this to take effect. 

 

「建議收藏」手把手教你從零搭建一個(gè)redis服務(wù)

可以參考問(wèn)題一的解決

問(wèn)題三:

  1. WARNING you have Transparent Huge Pages (THP) support enabled in your kernel. This will create latency and memory usage issues with Redis. To fix this issue run the command 'echo never > /sys/kernel/mm/transparent_hugepage/enabled' as root, and add it to your /etc/rc.local in order to retain the setting after a reboot. Redis must be restarted after THP is disabled 

 

「建議收藏」手把手教你從零搭建一個(gè)redis服務(wù)

執(zhí)行命令echo never>/sys/kernel/mm/transparent hugepage/enabled

永久解決添加配置文件即可。

  1. vi /etc/rc.local 

三、怎么在代碼中使用安裝的redis呢

需要引用的jar包有:

  1. commons-pool-1.6.jar 
  2. jedis-2.9.0.jar 

示例代碼:

  1. public static void main(String[] args) { 
  2.  //創(chuàng)建redis對(duì)象 
  3.  String ip = ""
  4.  Jedis jedis=new Jedis(ip,6379);//鏈接redis 
  5.  //記錄操作個(gè)數(shù) 
  6.  jedis.set("name""小明"); 
  7.  System.out.println("name已經(jīng)賦值"); 
  8.  String name = jedis.get("name"); 
  9.  System.out.println("賦值后獲取name的值為:"+name); 
  10.  jedis.del("name"); 
  11.  System.out.println("name已經(jīng)刪除"); 
  12.  String nameT = jedis.get("name"); 
  13.  System.out.println("刪除后獲取name的值為:"+nameT);  
  14.  } 
  15. //結(jié)果 
  16. name已經(jīng)賦值 
  17. 賦值后獲取name的值為:小明 
  18. name已經(jīng)刪除 
  19. 刪除后獲取name的值為:null 

四、設(shè)置用戶名和密碼

1、在配置文件中redis_6379.conf直接添加requirepass 123456

2、通過(guò)命令添加

設(shè)置密碼

  1. #設(shè)置密碼 
  2. config set requirepass 123456 
「建議收藏」手把手教你從零搭建一個(gè)redis服務(wù)

 

查看密碼

  1. config get requirepass 

需要驗(yàn)證密碼以后才可以查看

「建議收藏」手把手教你從零搭建一個(gè)redis服務(wù)

測(cè)試代碼

  1.  public static void main(String[] args) { 
  2.  //創(chuàng)建redis對(duì)象 
  3.  String ip = ""
  4.  Jedis jedis=new Jedis(ip,6379);//鏈接redis 
  5.  jedis.auth("123456"); 
  6.  //記錄操作個(gè)數(shù) 
  7.  jedis.set("name""小明"); 
  8.  System.out.println("name已經(jīng)賦值"); 
  9.  String name = jedis.get("name"); 
  10.  System.out.println("賦值后獲取name的值為:"+name); 
  11.  jedis.del("name"); 
  12.  System.out.println("name已經(jīng)刪除"); 
  13.  String nameT = jedis.get("name"); 
  14.  System.out.println("刪除后獲取name的值為:"+nameT); 
  15.   
  16.  } 
  17.  #結(jié)果 
  18. name已經(jīng)賦值 
  19. 賦值后獲取name的值為:小明 
  20. name已經(jīng)刪除 
  21. 刪除后獲取name的值為:null 

五、應(yīng)用中碰到的問(wèn)題

鏈接被拒絕或者超時(shí)問(wèn)題

「建議收藏」手把手教你從零搭建一個(gè)redis服務(wù)

redis剛開(kāi)始配置的ip是默認(rèn)ip和端口127.0.0.1:6379,這個(gè)ip只能服務(wù)的本地進(jìn)行鏈接。解決辦法:

在配置文件中把這個(gè)ip給注釋

「建議收藏」手把手教你從零搭建一個(gè)redis服務(wù)

在阿里云中配置安全組


修改好配置文件和安全組以后,可以通過(guò)阿里云服務(wù)的外網(wǎng)ip和redis的端口訪問(wèn)。

但是呢,又報(bào)一個(gè)問(wèn)題,保護(hù)模式下拒絕訪問(wèn)。

「建議收藏」手把手教你從零搭建一個(gè)redis服務(wù)

根據(jù)提示修改配置文件redis_6379.conf中屬性protected-mode no,并重啟服務(wù)。


再次測(cè)試代碼連接正常~

 

責(zé)任編輯:華軒 來(lái)源: 今日頭條
相關(guān)推薦

2022-03-14 14:47:21

HarmonyOS操作系統(tǒng)鴻蒙

2021-06-22 10:43:03

Webpack loader plugin

2019-10-29 15:46:07

區(qū)塊鏈區(qū)塊鏈技術(shù)

2011-03-25 12:45:49

Oracle SOA

2010-01-20 10:44:01

linux DHCP服務(wù)器

2023-03-22 09:00:38

2022-06-28 15:29:56

Python編程語(yǔ)言計(jì)時(shí)器

2020-11-03 14:10:29

Vue服務(wù)端渲染前端

2018-03-05 11:10:12

2010-07-06 09:43:57

搭建私有云

2010-07-06 09:38:51

搭建私有云

2022-01-04 08:52:14

博客網(wǎng)站Linux 系統(tǒng)開(kāi)源

2022-08-25 14:41:51

集群搭建

2020-12-23 09:48:37

數(shù)據(jù)工具技術(shù)

2011-01-10 14:41:26

2011-05-03 15:59:00

黑盒打印機(jī)

2025-05-07 00:31:30

2023-11-28 07:36:41

Shell腳本部署

2018-05-09 09:44:51

Java分布式系統(tǒng)

2020-06-17 07:35:57

虛擬機(jī)部署微服務(wù)
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)

主站蜘蛛池模板: 欧美精品在线一区二区三区 | 欧美亚洲网站 | 国产成人在线一区 | 一级片在线免费播放 | 亚洲视频免费一区 | 亚洲欧美日韩精品久久亚洲区 | www.狠狠干| 国产剧情一区二区三区 | 青草久久免费视频 | 久国久产久精永久网页 | 精品国产99| 黄色免费av | 日韩av大片免费看 | 一区二区三区网站 | 人人性人人性碰国产 | 伊人久久免费视频 | 亚洲一区二区三区四区五区中文 | 中文字幕成人 | 久久久久久综合 | 国产精品色一区二区三区 | 亚洲精品视频三区 | 国产一区二区在线播放 | 久久精品99国产精品日本 | 最新av在线播放 | 韩日一区二区三区 | 国产日产精品一区二区三区四区 | 91成人在线 | 日韩激情一区 | 日韩中文字幕一区 | 久久精品色欧美aⅴ一区二区 | 国产网站在线免费观看 | 99reav| 免费黄篇| 国产精品久久欧美久久一区 | 蜜桃精品在线 | 精品中文字幕在线观看 | 日韩成人在线观看 | 亚洲综合国产精品 | 五月婷婷婷 | 日韩一级黄色片 | 欧美日韩免费视频 |