宅男在线永久免费观看网直播,亚洲欧洲日产国码无码久久99,野花社区在线观看视频,亚洲人交乣女bbw,一本一本久久a久久精品综合不卡

全部
常見(jiàn)問(wèn)題
產(chǎn)品動(dòng)態(tài)
精選推薦

redis簡(jiǎn)介、用途以及使用場(chǎng)景

管理 管理 編輯 刪除

Redis 簡(jiǎn)介

Redis 是完全開(kāi)源的,遵守 BSD 協(xié)議,是一個(gè)高性能的 key-value 數(shù)據(jù)庫(kù)。

Redis 與其他 key - value 緩存產(chǎn)品有以下三個(gè)特點(diǎn):

  • Redis支持?jǐn)?shù)據(jù)的持久化,可以將內(nèi)存中的數(shù)據(jù)保存在磁盤(pán)中,重啟的時(shí)候可以再次加載進(jìn)行使用。
  • Redis不僅僅支持簡(jiǎn)單的key-value類(lèi)型的數(shù)據(jù),同時(shí)還提供list,set,zset,hash等數(shù)據(jù)結(jié)構(gòu)的存儲(chǔ)。
  • Redis支持?jǐn)?shù)據(jù)的備份,即master-slave模式的數(shù)據(jù)備份。

一、為什么使用redis


1. 解決應(yīng)用服務(wù)器的cpu和內(nèi)存壓力
2. 減少io的讀操作,減輕io的壓力
3.關(guān)系型數(shù)據(jù)庫(kù)的擴(kuò)展性不強(qiáng),難以改變表結(jié)構(gòu)

二、優(yōu)點(diǎn)


1.性能極高 – Redis能讀的速度是110000次/s,寫(xiě)的速度是81000次/s 。

2.豐富的數(shù)據(jù)類(lèi)型 – Redis支持二進(jìn)制案例的 Strings, Lists, Hashes, Sets 及 Ordered Sets 數(shù)據(jù)類(lèi)型操作。

3.原子 – Redis的所有操作都是原子性的,意思就是要么成功執(zhí)行要么失敗完全不執(zhí)行。單個(gè)操作是原子性的。多個(gè)操作也支持事務(wù),即原子性,通過(guò)MULTI和EXEC指令包起來(lái)。

4.豐富的特性 – Redis還支持 publish/subscribe, 通知, key 過(guò)期等等特性。

三、適用場(chǎng)景


1.    數(shù)據(jù)高并發(fā)的讀寫(xiě)
2.    海量數(shù)據(jù)的讀寫(xiě)
3.    對(duì)擴(kuò)展性要求高的數(shù)據(jù)

四、不適場(chǎng)景


1.    需要事務(wù)支持(非關(guān)系型數(shù)據(jù)庫(kù))
2.    基于sql結(jié)構(gòu)化查詢(xún)儲(chǔ)存,關(guān)系復(fù)雜

五、Redis結(jié)構(gòu)


Redis是一個(gè)開(kāi)源的key—value型數(shù)據(jù)庫(kù),支持string、list、set、zset和hash類(lèi)型數(shù)據(jù)。對(duì)這些數(shù)據(jù)的操作都是原子性的,redus為了保證效率會(huì)定期持久化數(shù)據(jù)。

六、使用場(chǎng)景


1.    配合關(guān)系型數(shù)據(jù)庫(kù)做高速緩存 ,緩存高頻次訪問(wèn)的數(shù)據(jù),降低數(shù)據(jù)庫(kù)io, 分布式架構(gòu),做session共享
2.    可以持久化特定數(shù)據(jù)。利用zset類(lèi)型可以存儲(chǔ)排行榜 利用list的自然時(shí)間排序存儲(chǔ)最新n個(gè)數(shù)據(jù)

七、Linux下redis


1.redis目錄:usr/local/bin
2.linux下redis常用命令:
redis-benchmark:性能測(cè)試工具
redis-server:?jiǎn)?dòng)redis服務(wù)器
redis-cli:?jiǎn)?dòng)redis客戶端,操作入口

八、Redis基礎(chǔ)知識(shí)


1.    端口:6379
2.    默認(rèn)16個(gè)數(shù)據(jù)庫(kù),下標(biāo)從0開(kāi)始
3.    單線程:redis是單線程+io多路復(fù)用:檢查文件描述的就緒狀態(tài) ,Memchached:多線程+鎖

1.    redis數(shù)據(jù)類(lèi)型:String set list hash zset

九、Redis命令


1.    key操作

3bef6202212241653085827.png

String類(lèi)型:String是二進(jìn)制安全的,可以包含任何數(shù)據(jù)源,最大512m

f0b94202212241653195217.png

String批量處理:

648e5202212241653283858.png

1.    List:鏈表
特點(diǎn):?jiǎn)捂I多值
Redis列表是簡(jiǎn)單的字符串列表,從左或者從右插入
底層是雙向鏈表,對(duì)兩端的操作性能很高,通過(guò)下標(biāo)查詢(xún)性能很低
7941d202212241653371744.png

Set:類(lèi)似list的無(wú)序集合,保證列表中不會(huì)有重復(fù)數(shù)據(jù),底層是一個(gè)value為null的hash表

af80b202212241653463888.png

hash:鍵值對(duì)集合,類(lèi)似map

63308202212241653542086.png

zset:與set集合非常相似,每個(gè)成員都關(guān)聯(lián)了score,可以用來(lái)排序

9b9d3202212241654035152.png

十、redis持久化


1.    兩種方式:rdb(redis database)和aof(append of file)
2.    RDB:在指定時(shí)間間隔內(nèi),將內(nèi)存中的數(shù)據(jù)作為一個(gè)快照文件(snapshot)寫(xiě)入到磁盤(pán),讀取的時(shí)候也是直接讀取snapshot文件到內(nèi)存中
①持久化過(guò)程:redis單獨(dú)創(chuàng)建(fork)一個(gè)進(jìn)程來(lái)持久化,會(huì)先將數(shù)據(jù)寫(xiě)入臨時(shí)文件中,待上次持久化結(jié)束后,會(huì)將該臨時(shí)文件替換上次持久化文件,比aof高效,但是最后一次數(shù)據(jù)可能會(huì)丟失
②Fork:在linux中,fork()會(huì)產(chǎn)生一個(gè)跟主進(jìn)程一樣的子進(jìn)程,出于效率考慮,主進(jìn)程和子進(jìn)程會(huì)公用一段物理內(nèi)存,當(dāng)發(fā)生改變的時(shí)候,才會(huì)把主進(jìn)程“”寫(xiě)時(shí)復(fù)制”一份給子進(jìn)程
③Redis備份的文件:在redis.conf中設(shè)置,dbfilename默認(rèn)為:dump.rdb
④ Rdb保存策略:
1.    900s 1 file change
2.    300s 10file change
3.    60s 10000file change

⑤Rdb的備份:      
1.    config get dir 得到備份的文件夾
2.    復(fù)制備份文件
 
⑥Rdb恢復(fù):
1.    關(guān)閉redis
2.    將備份文件復(fù)制到工作目錄下
3.    啟動(dòng)redis,自動(dòng)加載
5.

1.    AOF : 以日志形式記錄每個(gè)寫(xiě)操作,啟動(dòng)時(shí)通過(guò)日志恢復(fù)操作 , 開(kāi)啟AOF:默認(rèn)不開(kāi)啟,進(jìn)入redis.conf找到appendonly yes打開(kāi)
2.    修復(fù)AOF:redis-check-aof –fix appendonly.aof
3.    同步頻率:每秒記錄一次,如果宕機(jī)該秒記可能失效
4.    Rewrite:bgrewriteaof 因?yàn)槿罩臼亲芳臃绞?,文件?huì)越來(lái)越大,當(dāng)超過(guò)了設(shè)置的閾值時(shí),日志文件會(huì)壓縮,保留僅可以恢復(fù)的日志

RDB和AOF對(duì)比 1.    節(jié)省磁盤(pán)空間 2恢復(fù)速度快

ROD缺點(diǎn):
1.      數(shù)據(jù)太大時(shí),比較消耗性能
2.    一段時(shí)間保存一次快照,宕機(jī)時(shí)最后一次可能沒(méi)有保存

AOF優(yōu)點(diǎn):
1.備份機(jī)制更加穩(wěn)健
2.可讀的日志文件,通過(guò)aof恢復(fù)更加穩(wěn)健,可以處理失誤

AOF缺點(diǎn):
1.比RDB更占磁盤(pán)
2.備份速度較慢
3.iii每次都同步日志,有性能壓力

RDB和AOF哪個(gè)好
1.    官方推薦都啟用
2.    對(duì)數(shù)據(jù)不敏感,單獨(dú)用RDB
3.    不建議單獨(dú)使用AOF
4.    若作為純緩存使用,可以都不開(kāi)啟

十一、Redis事務(wù):

輸入multi,輸入的命令都會(huì)依次進(jìn)入到隊(duì)列中,但不會(huì)執(zhí)行,直到輸入exec,redis會(huì)將之前命令隊(duì)列中的命令依次執(zhí)行,通過(guò)discard可以放棄組隊(duì)。
1. 主要作用:序列化操作,串聯(lián)多個(gè)命令防止別的命令插隊(duì)
2. 悲觀鎖:每次拿到數(shù)據(jù)的時(shí)候都會(huì)上鎖,或者等待別人處理完再去拿鎖,傳統(tǒng)的關(guān)系型數(shù)據(jù)庫(kù)里邊很多用到了這種鎖機(jī)制,比如行鎖、表鎖、讀鎖、寫(xiě)鎖
3. 樂(lè)觀鎖:每次拿數(shù)據(jù)的時(shí)候總認(rèn)為別人不會(huì)修改數(shù)據(jù),所以不會(huì)上鎖。但是更新的時(shí)候回去判斷別人有沒(méi)有更改數(shù)據(jù),使用版本號(hào)機(jī)制。樂(lè)觀鎖適用于多讀的應(yīng)用類(lèi)型,可以提高吞吐量。
4. Redis使用樂(lè)觀鎖:redis就是利用check-and-set機(jī)制實(shí)現(xiàn)事務(wù)

5.三大特性: 1.單獨(dú)的隔離操作:事務(wù)中的所有命令都會(huì)序列化,按順序執(zhí)行。不會(huì)被其他客戶端打斷
2.沒(méi)有隔離級(jí)別概念:隊(duì)列中的命令沒(méi)有提交之前不會(huì)被執(zhí)行,事務(wù)外不能查看事務(wù)內(nèi)的更新
3.不能保證原子性:跳過(guò)錯(cuò)誤,依舊執(zhí)行,沒(méi)有回滾

十二、Redis訂閱/發(fā)布


是進(jìn)程中的一種消息通信模式,發(fā)送者pub發(fā)送消息,訂閱者sub接收消息

十三、Redis主從復(fù)制


1.   是什么:主從復(fù)制就是主機(jī)數(shù)據(jù)更新后根據(jù)配置和策略,自動(dòng)同步到備份機(jī)的master/slaver機(jī)制,master寫(xiě)為主,slave讀為主
2.用處:
1. 讀寫(xiě)分離,性能拓展。
2. 容災(zāi)快速恢復(fù)

3.  配置服務(wù)器(配從不配主):
1.    拷貝多個(gè)redis.conf文件
2.    開(kāi)啟daemonize yes
3.    Pid文件名字
4.    指定端口
5.    Log文件名字
6.    Dump.rdb名字
7.    Appendonly 關(guān)掉或者換名字

十四、Jedis


1.   所需jar包:

1.   common-pool-1.6jar包
2.   jedis-2.1

  1. 獲取jedis對(duì)象:Jedis jedis = new Jedis(“ip” ,端口號(hào));

十五、集群分布:


實(shí)現(xiàn)對(duì)redis的水平拓展,啟動(dòng)n’的redis節(jié)點(diǎn),將整個(gè)數(shù)據(jù)分布在這n個(gè)節(jié)點(diǎn)中

配置conf文件:
1.    拷貝多個(gè)redis.conf文件
2.    開(kāi)啟daemonize yes
3.    Pid文件名字
4.    指定端口
5.    Log文件名字
6.    Dump.rdb名字
7.    Appendonly 關(guān)掉或者換名字

配置cluster文件:

  1. cluster-enable yes 打開(kāi)集群模式
  2. cluster-config-file xxx.conf 設(shè)置生成的節(jié)點(diǎn)配置文件名
  3. cluster-node-timeout 15000設(shè)置節(jié)點(diǎn)失聯(lián)時(shí)間,超多該時(shí)間(毫秒),集群自動(dòng)進(jìn)入主從切換
請(qǐng)登錄后查看

CRMEB-慕白寒窗雪 最后編輯于2022-12-24 16:54:07

快捷回復(fù)
回復(fù)
回復(fù)
回復(fù)({{post_count}}) {{!is_user ? '我的回復(fù)' :'全部回復(fù)'}}
排序 默認(rèn)正序 回復(fù)倒序 點(diǎn)贊倒序

{{item.user_info.nickname ? item.user_info.nickname : item.user_name}} LV.{{ item.user_info.bbs_level || item.bbs_level }}

作者 管理員 企業(yè)

{{item.floor}}# 同步到gitee 已同步到gitee {{item.is_suggest == 1? '取消推薦': '推薦'}}
{{item.is_suggest == 1? '取消推薦': '推薦'}}
沙發(fā) 板凳 地板 {{item.floor}}#
{{item.user_info.title || '暫無(wú)簡(jiǎn)介'}}
附件

{{itemf.name}}

{{item.created_at}}  {{item.ip_address}}
打賞
已打賞¥{{item.reward_price}}
{{item.like_count}}
{{item.showReply ? '取消回復(fù)' : '回復(fù)'}}
刪除
回復(fù)
回復(fù)

{{itemc.user_info.nickname}}

{{itemc.user_name}}

回復(fù) {{itemc.comment_user_info.nickname}}

附件

{{itemf.name}}

{{itemc.created_at}}
打賞
已打賞¥{{itemc.reward_price}}
{{itemc.like_count}}
{{itemc.showReply ? '取消回復(fù)' : '回復(fù)'}}
刪除
回復(fù)
回復(fù)
查看更多
打賞
已打賞¥{{reward_price}}
1905
{{like_count}}
{{collect_count}}
添加回復(fù) ({{post_count}})

相關(guān)推薦

快速安全登錄

使用微信掃碼登錄
{{item.label}} 加精
{{item.label}} {{item.label}} 板塊推薦 常見(jiàn)問(wèn)題 產(chǎn)品動(dòng)態(tài) 精選推薦 首頁(yè)頭條 首頁(yè)動(dòng)態(tài) 首頁(yè)推薦
取 消 確 定
回復(fù)
回復(fù)
問(wèn)題:
問(wèn)題自動(dòng)獲取的帖子內(nèi)容,不準(zhǔn)確時(shí)需要手動(dòng)修改. [獲取答案]
答案:
提交
bug 需求 取 消 確 定
打賞金額
當(dāng)前余額:¥{{rewardUserInfo.reward_price}}
{{item.price}}元
請(qǐng)輸入 0.1-{{reward_max_price}} 范圍內(nèi)的數(shù)值
打賞成功
¥{{price}}
完成 確認(rèn)打賞

微信登錄/注冊(cè)

切換手機(jī)號(hào)登錄

{{ bind_phone ? '綁定手機(jī)' : '手機(jī)登錄'}}

{{codeText}}
切換微信登錄/注冊(cè)
暫不綁定
CRMEB客服

CRMEB咨詢(xún)熱線 咨詢(xún)熱線

400-8888-794

微信掃碼咨詢(xún)

CRMEB開(kāi)源商城下載 源碼下載 CRMEB幫助文檔 幫助文檔
返回頂部 返回頂部
CRMEB客服