安裝服務端
服務端下載地址:http://www.couchbase.com/download 選擇適合自己的進行下載安裝就可以了,我這裡選擇的是Win7 64。
在安裝服務端如果發生如下所示的錯誤,我在win7 64安裝的過程中就遇到了。
這個時候可以先撤銷安裝。通過CMD命令運行regedit。展開HKEY_LOCAL_MACHINE\Software\Microsoft\ Windows\ CurrentVersion分支,在窗口的右側區域找到名為“ProgramFilesDir”的鍵值,將其原鍵值“C:\Program Files”改為“X:\Program Files”,關閉注冊表。
我這裡修改的時E盤,因為我E盤剩下的空間還蠻多的。
服務端安裝完後,如果成功了,那麼在浏覽器中可以看到。如果沒有那麼需要手動進行訪問http://localhost:8091/index.html。我是在本機安裝的所以可以用localhost,可以用IP或者hostname。
點擊SETUP,默認設置,然後點擊Next,Next,Next,然後到了下面
簡單的輸入基本信息,繼續Next。
在此我輸入密碼123456,繼續Next,最終完成配置到達頁面。
當然安裝完之後也可以在服務中查看了。
客戶端調用
創建一個控制台應用程序,然後通過Nuget進行安裝。
引用之後,編譯項目,查看到已引用的dll文件
引用完畢通過代碼進行簡單的調用
復制代碼 代碼如下:
using Couchbase;
using Couchbase.Configuration;
using Enyim.Caching;
using Enyim.Caching.Configuration;
using Enyim.Caching.Memcached;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace MemcachedTest
{
class Program
{
static void Main(string[] args)
{
//配置服務器
var mbcc = new CouchbaseClientConfiguration();
//設置各種超時時間
mbcc.SocketPool.ReceiveTimeout = new TimeSpan(0, 0, 2);
mbcc.SocketPool.ConnectionTimeout = new TimeSpan(0, 0, 4);
mbcc.SocketPool.DeadTimeout = new TimeSpan(0, 0, 10);
//使用默認的數據庫
mbcc.Urls.Add(new Uri("http://127.0.0.1:8091/pools/default"));
//建立一個Client,裝入Client的配置
var client = new CouchbaseClient(mbcc);
//添加一條數據
var item = client.Cas(StoreMode.Add, "Test", "Hello World!");
//獲取剛添加的數據
Console.WriteLine(client.Get("Test"));
Console.WriteLine("完成!");
Console.ReadLine();
}
}
}
首次運行獲取設置的緩存值肯定沒問題。
現在我們將這句設置值的進行注釋
復制代碼 代碼如下:
var item = client.Cas(StoreMode.Add, "Test", "Hello World!");
修改後的代碼如下
復制代碼 代碼如下:
//配置服務器
var mbcc = new CouchbaseClientConfiguration();
//設置各種超時時間
mbcc.SocketPool.ReceiveTimeout = new TimeSpan(0, 0, 2);
mbcc.SocketPool.ConnectionTimeout = new TimeSpan(0, 0, 4);
mbcc.SocketPool.DeadTimeout = new TimeSpan(0, 0, 10);
//使用默認的數據庫
mbcc.Urls.Add(new Uri("http://127.0.0.1:8091/pools/default"));
//建立一個Client,裝入Client的配置
var client = new CouchbaseClient(mbcc);
//添加一條數據
//var item = client.Cas(StoreMode.Add, "Test", "Hello World!");
//獲取剛添加的數據
Console.WriteLine(client.Get("Test"));
Console.WriteLine("完成!");
Console.ReadLine();
再次運行值還是被獲取到了。