3
我正在用nodejs,express和node_redis構建一個應用程序。我想創建一個模塊來封裝所有與redis相關的操作,這樣我就不必在任何地方處理redis密鑰。在nodejs中使用redis的最佳做法是什麼?
|- app.js
|- models
| |- db.js <-- All redis-related operations here
.....
然後我在這裏有兩個問題。
我想創建Redis的連接,然後選擇一個數據庫:
var redis = require('redis'); var client = redis.createClient(); client.select(config.database, function() { // actual db code });
由於
select
是一個異步調用,我怎麼能在一個單獨的模塊(db.js
)使用它呢?看起來像
client.quite()
必須在腳本結束之前調用,否則腳本不會退出。我怎樣才能在db.js
之外做到這一點,而client
被封裝爲db.js
的局部變量?
感謝您的回答。我認爲在每個方法中放置客戶端'select'命令是一個好主意,但直接執行此操作會導致每次調用方法時發出'select'命令。可能一些可以重用當前連接的包裝可以。 – charlee