千鋒教育-做有情懷、有良心、有品質(zhì)的職業(yè)教育機構(gòu)

手機站
千鋒教育

千鋒學習站 | 隨時隨地免費學

千鋒教育

掃一掃進入千鋒手機站

領(lǐng)取全套視頻
千鋒教育

關(guān)注千鋒學習站小程序
隨時隨地免費學習課程

當前位置:首頁  >  技術(shù)干貨  > redis教程詳解rubyonrails:Redis詳解黑馬

redis教程詳解rubyonrails:Redis詳解黑馬

來源:千鋒教育
發(fā)布人:xqq
時間: 2023-07-23 11:57:15 1690084635

Redis(來自REmote DIctionary Server)是一個基于內(nèi)存的非關(guān)系型數(shù)據(jù)庫管理系統(tǒng),它可以用作數(shù)據(jù)庫、緩存和消息隊列。Redis擁有高性能和豐富的數(shù)據(jù)類型,最重要的是它支持持久化,即使機器故障,數(shù)據(jù)也能夠得到保存。

Redis最初是一個遠程字典服務(wù)器,它使用鍵值對存儲數(shù)據(jù),可以支持字符串,哈希表,列表,集合和有序集合等方式存儲數(shù)據(jù)。Redis還支持訂閱和發(fā)布消息。它使用C語言編寫,但支持多種語言的客戶端。

在 Ruby on Rails應(yīng)用中,Redis的出色表現(xiàn)使其成為一個非常有用的工具。使用 Redis緩存數(shù)據(jù)可以大幅提高應(yīng)用的性能,而 Redis的發(fā)布和訂閱功能則可以使開發(fā)人員輕松地在應(yīng)用程序之間傳輸消息。

Redis如何在Ruby on Rails中工作?

Ruby on Rails通過gem包中的redis-rb和hiredis進行Redis的客戶端支持。使用Redis-Cli進行交互式連接到Redis服務(wù)器時,可以使用命令清單操作鍵值存儲,內(nèi)置哈希表,列表,集合,有序集合,bitmap和其他數(shù)據(jù)結(jié)構(gòu)。

在Rails中,需要在Gemfile中增加gem 'redis',然后使用 bundle install安裝gem包以便使用redis。可以使用redis.rb等自定義文件訪問redis數(shù)據(jù)庫。這些文件定義了任何必需變量或常量,如redis數(shù)據(jù)庫密碼、主機端口和連接對象。

我們可以在控制器或模型中使用以下幾個庫文件來添加Redis支持:

Redis activesupport

Redis objects

Redis store

在Rails中使用Redis實現(xiàn)緩存

在Rails中使用Redis來作為應(yīng)用程序的緩存可以減少查詢數(shù)據(jù)庫的次數(shù),提高應(yīng)用的性能。我們可以使用 rails cache方法使用Redis來存儲緩存數(shù)據(jù),cache方法可以在應(yīng)用的任何位置使用,例如控制器或視圖模板文件中。cache方法采用了鍵值對的方式進行數(shù)據(jù)存儲,其中data變量是存儲在Redis中的數(shù)據(jù)。

需要了解的是,當使用 Rails的緩存機制時,系統(tǒng)內(nèi)部實際上代表調(diào)用了 ActiveSupport::Cache::RedisCacheStore類。在Redis中緩存存儲中,存儲鍵和值的過程非常重要。每當緩存鍵運行到過期時間,存儲值就會自動從緩存數(shù)據(jù)庫中移除。這是因為Redis緩存中每個鍵都伴隨有生存時間的概念。

使用 redis-rails提供的幫助器需要將其添加到 config/initializers 之中。在添加 Redis作為緩存后,如果您的許多操作由于爆炸轉(zhuǎn)變而出現(xiàn),可以使用 Rails.cache.clear指令移除Redis緩存。

聲明:本站稿件版權(quán)均屬千鋒教育所有,未經(jīng)許可不得擅自轉(zhuǎn)載。
10年以上業(yè)內(nèi)強師集結(jié),手把手帶你蛻變精英
請您保持通訊暢通,專屬學習老師24小時內(nèi)將與您1V1溝通
免費領(lǐng)取
今日已有369人領(lǐng)取成功
劉同學 138****2860 剛剛成功領(lǐng)取
王同學 131****2015 剛剛成功領(lǐng)取
張同學 133****4652 剛剛成功領(lǐng)取
李同學 135****8607 剛剛成功領(lǐng)取
楊同學 132****5667 剛剛成功領(lǐng)取
岳同學 134****6652 剛剛成功領(lǐng)取
梁同學 157****2950 剛剛成功領(lǐng)取
劉同學 189****1015 剛剛成功領(lǐng)取
張同學 155****4678 剛剛成功領(lǐng)取
鄒同學 139****2907 剛剛成功領(lǐng)取
董同學 138****2867 剛剛成功領(lǐng)取
周同學 136****3602 剛剛成功領(lǐng)取
相關(guān)推薦HOT
久久亚洲中文字幕精品一区四,亚洲日本另类欧美一区二区,久久久久久久这里只有免费费精品,高清国产激情视频在线观看
亚洲字幕中文在线乱码AV | 欧美日韩国产一区二区三区地区 | 亚洲精品影视免费在线观看 | 久久深夜福利亚洲网站 | 欧洲国产伦久久久久久久 | 亚洲国产福利精品 |