本篇內(nèi)容介紹了“使用redis能解決什么問題”的有關(guān)知識,在實(shí)際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領(lǐng)大家學(xué)習(xí)一下如何處理這些情況吧!希望大家仔細(xì)閱讀,能夠?qū)W有所成!
創(chuàng)新互聯(lián)建站專注于企業(yè)全網(wǎng)整合營銷推廣、網(wǎng)站重做改版、龍海網(wǎng)站定制設(shè)計(jì)、自適應(yīng)品牌網(wǎng)站建設(shè)、成都h5網(wǎng)站建設(shè)、商城系統(tǒng)網(wǎng)站開發(fā)、集團(tuán)公司官網(wǎng)建設(shè)、外貿(mào)網(wǎng)站制作、高端網(wǎng)站制作、響應(yīng)式網(wǎng)頁設(shè)計(jì)等建站業(yè)務(wù),價格優(yōu)惠性價比高,為龍海等各大城市提供網(wǎng)站開發(fā)制作服務(wù)。
有memcached使用經(jīng)驗(yàn)的人可能知道,用戶只能用APPEND命令將數(shù)據(jù)添加到已有字符串的末尾。memcached的文檔中聲明,可以用APPEND命令來管理元素列表。這很好!用戶可以將元素追加到一個字符串的末尾,并將那個字符串當(dāng)作列表來使用。但隨后如何刪除這些元素呢?memcached采用的辦法是通過黑名單(blacklist)來隱藏列表里面的元素,從而避免對元素執(zhí)行讀取、更新、寫入(包括在一次數(shù)據(jù)庫查詢之后執(zhí)行的memcached寫入)等操作。相反地,Redis的LIST和SET允許用戶直接添加或者刪除元素。
使用Redis而不是memcached來解決問題,不僅可以讓代碼變得更簡短、更易懂、更易維護(hù),而且還可以使代碼的運(yùn)行速度更快(因?yàn)橛脩舨恍枰ㄟ^讀取數(shù)據(jù)庫來更新數(shù)據(jù))。除此之外,在其他許多情況下,Redis的效率和易用性也比關(guān)系數(shù)據(jù)庫要好得多。
數(shù)據(jù)庫的一個常見用法是存儲長期的報(bào)告數(shù)據(jù),并將這些報(bào)告數(shù)據(jù)用作固定時間范圍內(nèi)的聚合數(shù)據(jù)(aggregates)。收集聚合數(shù)據(jù)的常見做法是:先將各個行插入一個報(bào)告表里面,之后再通過掃描這些行來收集聚合數(shù)據(jù),并根據(jù)收集到的聚合數(shù)據(jù)來更新聚合表中已有的那些行。之所以使用插入行的方式來存儲,是因?yàn)閷τ诖蟛糠謹(jǐn)?shù)據(jù)庫來說,插入行操作的執(zhí)行速度非常快(插入行只會在硬盤文件末尾進(jìn)行寫入)。不過,對表里面的行進(jìn)行更新卻是一個速度相當(dāng)慢的操作,因?yàn)檫@種更新除了會引起一次隨機(jī)讀(random read)之外,還可能會引起一次隨機(jī)寫(random write)。而在Redis里面,用戶可以直接使用原子的(atomic)INCR命令及其變種來計(jì)算聚合數(shù)據(jù),并且因?yàn)镽edis將數(shù)據(jù)存儲在內(nèi)存里面2,而且發(fā)送給Redis的命令請求并不需要經(jīng)過典型的查詢分析器(parser)或者查詢優(yōu)化器(optimizer)進(jìn)行處理,所以對Redis存儲的數(shù)據(jù)執(zhí)行隨機(jī)寫的速度總是非常迅速的。
使用 Redis 而不是關(guān)系數(shù)據(jù)庫或者其他硬盤存儲數(shù)據(jù)庫,可以避免寫入不必要的臨時數(shù)據(jù),也免去了對臨時數(shù)據(jù)進(jìn)行掃描或者刪除的麻煩,并最終改善程序的性能。雖然上面列舉的都是一些簡單的例子,但它們很好地證明了“工具會極大地改變?nèi)藗兘鉀Q問題的方式”這一點(diǎn)。
除了第6章提到的任務(wù)隊(duì)列(task queue)之外,本書的大部分內(nèi)容都致力于實(shí)時地解決問題。本書通過展示各種技術(shù)并提供可工作的代碼來幫助讀者消滅瓶頸、簡化代碼、收集數(shù)據(jù)、分發(fā)(distribute)數(shù)據(jù)、構(gòu)建實(shí)用程序(utility),并最終幫助讀者更輕松地完成構(gòu)建軟件的任務(wù)。只要正確地使用書中介紹的技術(shù),讀者的軟件就可以擴(kuò)展至令那些所謂的“Web擴(kuò)展技術(shù)(web-sacle technology)”相形見絀的地步。
“使用Redis能解決什么問題”的內(nèi)容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業(yè)相關(guān)的知識可以關(guān)注創(chuàng)新互聯(lián)網(wǎng)站,小編將為大家輸出更多高質(zhì)量的實(shí)用文章!