##xhttpcache是什麼?
xhttpcache 是乙個http高速資料快取服務,也可以做為k-v儲存的nosql資料庫
支援redis協議介面,支援http協議的rest介面;
##xhttpcache有哪些功能?
* 提供http資料快取服務,支援儲存二進位制資料;
* 完整的k-v儲存實現, 支援資料持久化儲存(rocksdb);
* 支援資料超時機制,提供毫秒級精度。
* 現實完整redis協議介面,支援redis的set/get/del/exire/ttl命令;
* 實現http/https協議介面,支援通過rest命令訪問;
* 實現http cache相關協議,支援etage,支援304 not modified, 支援對傳輸內容gzip壓縮;
* 自帶web後台編輯器,可以直接新增(上傳)/修改/刪除資料;
###編譯安裝
編譯依賴庫:
需要先編譯安裝好:
##使用方法:
xhttpcache被設計為http資料加速伺服器:通過提供的寫介面向xhttpcache寫入的資料,
可以直接通過瀏覽器訪問.
同時也提供了redis的協議介面,可以直接通過redis的client(支援各種語言介面)進行讀寫,
使之也可以當做簡單的nosql資料庫使用;
通過redis介面建立的k-v資料,可以直接通過http介面在瀏覽器裡訪問檢視
####通過http介面訪問:
xhttpcache 有兩個http服務埠,可以配置檔案裡配置;
httpd_frontend_port 為開放訪問埠,只支援讀請求;
httpd_backend_port 為後端資料操作埠,支援全部rest讀寫請求(get/post/put/delete);
後端資料介面訪問可以設定登陸賬號密碼;
curl -d "testdata"
通過post請求向 xhttpcache 提交建立一條kv格式的資料:testkey -- testdata
curl
通過get請求訪問testkey的資料
通過前端埠訪問,不需要密碼驗證,當然也可以通過後端介面帶上密碼訪問:
curl
這兩種方式通過get請求訪問的資料是完全一樣的。
curl -i -x delete
通過http協議的delete請求刪除testkey
通過以下命令可以上傳本地檔案到 xhttpcache
curl -f file=@/tmp/me.txt
####通過redis命令使用示例:
以下示例顯示了所有的支援的redis命令
```通過redis命令新增檔案到 xhttpcache:
##特性說明:
xhttpcache對通過http訪問的uri會進行型別判斷,返回對應檔案字尾的content-type,
使得xhttpcache的http介面像乙個真正的web伺服器,
通過瀏覽器訪問時,資料會直接以頁面的形式顯示。而不是像通常的資料介面一樣。
這樣,通過瀏覽器直接訪問 test.htm 對應該的資料內容時,可以以html的形式顯示。
對於/test.jpg 形式的key,如果對應該的value內容是jpg資料,通過瀏覽器訪問/test.jpg時,就直接正常顯示為;
並且後台還支援對的預覽與上傳;
根據以上特點,可以很容易的將靜態**檔案全部載入到cache裡,全部記憶體化.
##感激
感謝以下的專案,排名不分先後
* [libevent](
* [libevhtp](
* [rocksdb](
* [ssdb](
##關於作者
* [xhttpcache 主頁](
* [xsky blog](
* xhttpcache qq群: 195957781
BEDTools使用詳細說明
1 概述 bedtools是可用於genomic features的比較,相關操作及進行注釋的工具。而genomic features通常使用browser extensible data bed 或者 general feature format gff 檔案表示,用ucsc genome bro...
Linux Crontab 安裝使用詳細說明
crontab命令常見於unix和linux的作業系統之中,用於設定週期性被執行的指令。該命令從標準輸入裝置讀取指令,並將其存放於 crontab 檔案中,以供之後讀取和執行。通常,crontab儲存的指令被守護程序啟用。crond 常常在後台執行,每一分鐘檢查是否有預定的作業需要執行。這類作業一般...
Linux Crontab 安裝使用詳細說明
crontab命令常見於unix和linux的作業系統之中,用於設定週期性被執行的指令。該命令從標準輸入裝置讀取指令,並將其存放於 crontab 檔案中,以供之後讀取和執行。通常,crontab儲存的指令被守護程序啟用。crond 常常在後台執行,每一分鐘檢查是否有預定的作業需要執行。這類作業一般...