Redis及ubuntu14下搭建ssdb主從環境

jopen 10年前發布 | 18K 次閱讀 Redis NoSQL數據庫

    在工作中接觸到了redis,Redis是一個非常高效的key-value的數據庫,在項目中廣泛使用,但是redis很明顯的缺點是對 于內存的處理,在項目上線之初,必須對內存規劃合理,否則很容易出現內存爆了的現象,一般較合理的內存大小為電腦物理內存的3/5。

    redis提供了多種數據類型,我經常使用的為string 、hash、list、set、sorted set,基本能滿足項目對于數據類型的要求。我們使用的是redis的Java客戶端,提供了一系列針對redis命令對應的api。redis的持久化 提供了多種策略,但我們沒有去做持久化,自己研究了下,AOF方式感覺是最可靠的,原理和mysql的二進制日志很類似,也是將操作信息記錄下來寫到文 件,從服務器去讀取日志并執行操作。

    在平常內網開發中可能經常需要調整數據存儲細節,所以如果之前的數據依然駐留在內存中,會導致很多功能無法正常運行,所以在調整細節之后,需要對redis數據庫flushdb操作。

    redis與ssdb在某些場景很適合使用,比如某些數據在數據庫中只能殘留2分鐘,類似YY頻道T人,固定幾分鐘后才能進來,就可以使用setex key seconds value命令,之后判斷是否過期可以通過exists key 命令。

    redis常用命令網站:http://redis.readthedocs.org/en/latest/   涵蓋了redis的命令及demo.

    在搭ssdb前說redis,因為ssdb很好的兼容了redis的api。是redis的很好替代品。

    ssdb相對于redis來說有很多優點:是redis數據庫的100倍容量,可以存儲幾十億的數據量。相對redis來說,占用內存很少。所以自己也去下載了ssdb,以下是ssdb搭建的過程。

    環境:ubuntu14

    虛擬機A: 192.168.1.251 

    虛擬機B: 192.168.1.252

    網關: 192.168.1.1

    我的兩臺虛擬機是分別裝在不同的物理機上,但都采用的是橋接方式,ip地址都是在同一個ip段。

    在兩臺虛擬機下分別都在線安裝下ssdb.

    wget --no-check-certificate https://github.com/ideawu/ssdb/archive/master.zip

    unzip master

    cd ssdb-master

    make 

    sudo make install

    這些在ssdb官網都能找到,http://www.ideawu.com/ssdb/zh_cn/。

    ssdb主從搭建其實非常之簡單,你只需要在兩臺虛擬機ssdb安裝目錄下找到ssdb.conf. 

    sudo vi ssdb.conf  

    修改server 下的ip為虛擬機默認的IP地址。

    虛擬機A:

        server:

                ip:192.168.1.251

                port:8888   //我端口沒改,用默認

    虛擬機B:

          server:

                ip:192.168.1.252

                port:8888

    這是最基本的配置。

    現在只要在A的基礎上對于ssdb.conf下配置:

    replication:

             slaveof:

                 # to identify a master even if it moved(ip, port changed)

                 # if set to empty or not defined, ip:port will be used.

                 id: svc_2

                 # sync|mirror, default is sync

                 type: sync

                 ip: 192.168.1.252

                 port: 8888

    注意:在以上的配置過程中,千萬不要用空格鍵,使用tab.

    現在可以啟動ssdb了。

    ./ssdb-server ssdb.conf

    之后就可以使用ssdb提供的命令行工具來操作了。

    虛擬機A:    ./ssdb-cli -h 192.168.1.251 -p 8888

    虛擬機B:    ./ssdb-cli -h 192.168.1.252 -p 8888

Redis及ubuntu14下搭建ssdb主從環境

Redis及ubuntu14下搭建ssdb主從環境

來自:http://my.oschina.net/u/1019119/blog/263310

 本文由用戶 jopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!