日本搞逼视频_黄色一级片免费在线观看_色99久久_性明星video另类hd_欧美77_综合在线视频

國內最全IT社區平臺 聯系我們 | 收藏本站
阿里云優惠2
您當前位置:首頁 > 數據庫 > 數據庫應用 > Redis的高級應用-事務處理、持久化、發布與訂閱消息、虛擬內存使用

Redis的高級應用-事務處理、持久化、發布與訂閱消息、虛擬內存使用

來源:程序員人生   發布時間:2015-02-28 08:34:55 閱讀次數:4258次

   3、事務處理

           Redis的事務處理比較簡單。只能保證client發起的事務中的命令可以連續的履行,而且不會插入其他的client命令,當1個client在連接中發出multi命令時,這個連接就進入1個事務的上下文,該連接后續的命令不會履行,而是寄存到1個隊列中,當履行exec命令時,redis會順序的履行隊列中的所有命令。如果其中履行出現錯去,履行正確的不會回滾,次不同于關系型數據庫的事務。

                  

             回滾后age的值已改變。

          取消1個事務用discard,取消事務隊列,數據全部回滾。

          Redis樂觀鎖:使用watch監視指定的key,當exec時如果監視的key從調用watch后產生過變化,這全部事務會失敗。可調用watch屢次監視多個key。watch和事務對全部連接有效,如果斷開了連接監視和事務都會清除(exec,discard,unwatch也不例外)。


     4、持久化機制

           Redis是1個支持持久化的內存數據庫,Redis需要常常將內存中的數據同步到磁盤來保證持久化。

           Redis支持兩種持久化方式:

                  1、snapshotting(快照),將數據寄存到文件里,默許方式。

                             是將內存中的數據已快照的方式寫入到2進制文件中,默許文件dump.rdb,可以通過配置設置自動做快照持久化的方式。可配置Redis在n秒內如果超過m

                       個key被修改就自動保存快照。


                            save 900 1       #900秒內如果超過1個key被修改,者發起快照保存

                            save 300  10   #300秒內如果超過10個key被修改,這快照保存

                            save  60    10000  #60秒內如果超過10000個數據被修改,發起快照保存


                  2、 Append-only file(縮寫為aof),將讀寫操作寄存到文件中。

                            由于快照方式在1定間隔時間做1次,所以如果Redis意外down掉的話,就會丟失最后1次快照后的所有修改。

                            aof比快照方式有更好的持久化性,是由于使用aof時,redis會將每個收到的寫命令都通過write函數住家到文件中當redis啟東市會通太重新履行文件中保存    

                     的寫命令來在內存中重新建立全部數據庫的內容。

                             由于os會在內核中緩存write做的修改,所以可能不是立即寫到磁盤上,這樣aof方式的持久化也還是有可能會丟失1部份數據。

                             可以通過配置文件告知redis我們想要通過fsync函數強迫os寫入到磁盤的時機。

                             

                             appendonly   yes  #啟用aof持久化方式

                             #appendfsync    always //收到寫命令就立即寫入磁盤,最慢,但是保證了數據的完全持久化

                             appendfsync       everysec  //每秒中寫入磁盤1次,在性能和持久化方面做了很好的折衷

                             #appendfsync      no     //完全依賴os,性能最好,持久化沒有保證


                  開啟以后,在bin文件夾中會多兩個存儲文件,以下:

                       

       

         5、發布與定閱信息

               發布定閱(pub/sub)是1種消息通訊模式,主要的目的是消除消息發布者和定閱者之間的耦合,Redis作為1個pub/sub的server,在定閱者和發布者之間起到消息路由的功能。定閱者通過subscribe和psubscribe命令向redis定閱自己感興趣的消息類型,redis將信息類型成為通道(channel)。當發布者通過關publish命令向redis server發送特定類型的信息時,定閱該消息類型的全部client都會接收到此消息。

            例如開啟3個客戶端,1個發布消息,另外兩個定閱消息,以下

                       

 

           6、虛擬內存的使用

                    Redis的虛擬內存是暫時吧不常常訪問的數據從內存交換到磁盤中,從而騰出內存空間用于其他的訪問數據,特別對redis這樣的內存數據庫,內存總是不夠用的。除分隔到多個redis server外,提高數據庫的容量的方法就是使用虛擬內存,把那些不常訪問的數據交換到磁盤上。

          通過配置vm相干的redis.config配置:

               vm-enable  yes                                      #開啟vm功能

               vm-swap-file    /tmp/redis.swap          #交換出來的value保存的文件路徑

               vm-max-memory    10000000              #redis使用的最大內存上線

               vm-page-size           32                           #每一個頁面的大小32字節

               vm-pages                  123217729          #最多使用多小個頁面

               vm-max-threads        4                            #用于履行value對象換入的工作線程數量

        虛擬內存管理在2.6及之上版本取消了


         

                

生活不易,碼農辛苦
如果您覺得本網站對您的學習有所幫助,可以手機掃描二維碼進行捐贈
程序員人生
------分隔線----------------------------
分享到:
------分隔線----------------------------
關閉
程序員人生
主站蜘蛛池模板: 99精品一区 | 日韩 国产 在线 | 午夜亚洲 | 国产一区在线播放 | 色婷婷影院 | 久久黄色免费网站 | 亚洲欧美日韩国产 | 91豆麻精品91久久久久久 | 欧美三级韩国三级日本三斤 | 日韩福利 | 国产精品国产三级国产aⅴ原创 | 91av视频在线播放 | 国产一区二区黄 | av午夜| 男女爱爱免费视频 | 国产精品久久久久久久 | 国产一区二区精品在线 | 国产理论一区二区三区 | 欧美一级免费大片 | 欧美视频一区二区 | 久久久久久影院 | 国产一区二区免费 | 国产99久久精品一区二区永久免费 | 久久久久97 | 欧美白人做受xxxx视频 | 久久九九久久九九 | 国产精品成人3p一区二区三区 | 亚洲一区二区三区四区精品 | 免费在线观看黄色网 | 日本精品在线 | 一区视频免费观看 | 中文字幕精品久久一区二区三区 | 福利视频网 | 国产婷婷色一区二区三区 | 精品久久久久久久久久岛国gif | 91精品久久久久久久91蜜桃 | 色综合久久88色综合天天 | 久久久精选| 久久性生活免费视频 | 久久精品资源 | 麻豆精品国产91久久久久久 |