Web服务中的容错Aerospike连接
本文关键字:Aerospike 连接 容错 服务 Web | 更新日期: 2023-09-27 18:13:43
我需要在Web服务中与Aerospike noSQL DB进行持久连接。
在非web应用程序中,连接直接为
using (AerospikeClient client = new AerospikeClient("127.0.0.1", 3000))
{
...
}
但是在Web服务应用程序中,为每个请求创建新的客户端是非常昂贵的。最佳实践也这样说:"在程序中每个集群只使用一个客户端实例,并在多个线程之间共享该实例。AerospikeClient和asynclient是线程安全的。"
我可以创建一个静态对象,但是如果客户端断开连接,无论是错误还是超时(24小时最大连接生存时间)怎么办?谁能提供容错代码片段?(可能类似于redis模式ConnectionMultiplexer如何处理断开连接?)
客户端管理套接字池。如果发生套接字错误或超时,则处理套接字。