Tôi đang sử dụng thư viện Booksleeve trong ứng dụng C#/ASP.NET 4. Hiện tại đối tượng RedisConnection là một đối tượng tĩnh trên lớp MonoLink của tôi. Tôi có nên giữ kết nối này mở hay tôi nên mở/đóng nó sau mỗi truy vấn/giao dịch (như tôi đang làm bây giờ)? Chỉ hơi bối rối. Dưới đây là cách tôi đang sử dụng tính năng này, kể từ bây giờ:Tôi nên mở/đóng kết nối Booksleeve của mình bao lâu một lần?
public static MonoLink CreateMonolink(string URL)
{
redis.Open();
var transaction = redis.CreateTransaction();
string Key = null;
try
{
var IncrementTask = transaction.Strings.Increment(0, "nextmonolink");
if (!IncrementTask.Wait(5000))
{
transaction.Discard();
throw new System.TimeoutException("Monolink index increment timed out.");
}
// Increment complete
Key = string.Format("monolink:{0}", IncrementTask.Result);
var AddLinkTask = transaction.Strings.Set(0, Key, URL);
if (!AddLinkTask.Wait(5000))
{
transaction.Discard();
throw new System.TimeoutException("Add monolink creation timed out.");
}
// Run the transaction
var ExecTransaction = transaction.Execute();
if (!ExecTransaction.Wait(5000))
{
throw new System.TimeoutException("Add monolink transaction timed out.");
}
}
catch (Exception ex)
{
transaction.Discard();
throw ex;
}
finally
{
redis.Close(false);
}
// Link has been added to redis
MonoLink ml = new MonoLink();
ml.Key = Key;
ml.URL = URL;
return ml;
}
Cảm ơn trước, cho mọi phản hồi/thông tin chi tiết. Ngoài ra, có bất kỳ loại tài liệu chính thức nào cho thư viện này không? Cảm ơn bạn S.O.^_ ^.
này nên là câu trả lời được chấp nhận – welegan