基于deepseek的智能语音客服【第四讲】封装milvus数据库连接池封装

通过工厂模式创建链接

java 复制代码
 static {
	        // 创建连接池工厂
	        BasePooledObjectFactory<MilvusServiceClient> factory = new BasePooledObjectFactory<MilvusServiceClient>() {
	            @Override
	            public MilvusServiceClient create() throws Exception {
	                return new MilvusServiceClient(
	                        ConnectParam.newBuilder()
	                                .withHost(Consist.MILVUS_HOST)
	                                .withPort(Consist.MILVUS_PORT)
	                                .withAuthorization(Consist.MILVUS_USERNAME, Consist.MILVUS_PASSWORD) 
	                                .build()
	                );
	            }

	            @Override
	            public PooledObject<MilvusServiceClient> wrap(MilvusServiceClient obj) {
	                return new DefaultPooledObject<>(obj);
	            }
	        };

配置连接池

java 复制代码
  // 配置连接池
	        GenericObjectPoolConfig<MilvusServiceClient> config = new GenericObjectPoolConfig<>();
	        config.setMaxTotal(Consist.MAX_TOTAL);
	        config.setMaxIdle(Consist.MAX_IDLE);
	        config.setMinIdle(Consist.MIN_IDLE);
	        config.setMaxWaitMillis(Consist.MAX_WAIT_MILLIS);

	        pool = new GenericObjectPool<>(factory, config);

从连接池中获取连接,并设置超时设置

java 复制代码
 public static MilvusServiceClient borrowClient(long timeout) throws Exception {
	    	
	        return pool.borrowObject(timeout);
	    }

归还连接

java 复制代码
  public static void returnClient(MilvusServiceClient client) {
	        pool.returnObject(client);
	    }

关闭链接池

java 复制代码
  public static void close() {
	        pool.close();
	    }
相关推荐
算法打盹中5 分钟前
深入解析 Transformer 模型:以 ChatGPT 为例从词嵌入到输出预测的大语言模型核心工作机制
人工智能·深度学习·语言模型·chatgpt·transformer·1024程序员节
Jet45057 分钟前
玩转ChatGPT:Kimi OK Computer PPT制作
人工智能·powerpoint·kimi·ok computer
许泽宇的技术分享17 分钟前
当 AI Agent 遇上工作流编排:微软 Agent Framework 的 Workflow 深度解析
人工智能·microsoft
TMT星球25 分钟前
AI重构兴趣内容与营销生态,驱动消费全链路升级
大数据·人工智能·重构
文火冰糖的硅基工坊26 分钟前
[人工智能-大模型-105]:模型层 - 为什么需要池化层,池化层的物理意义
人工智能
新加坡内哥谈技术28 分钟前
DeepSeek正在探索一种可能显著提升AI“记忆力”的新方法:用图像而非传统的文本token来存储信息
人工智能
Dev7z33 分钟前
肝脏肿瘤MRI图像分类数据集
人工智能·分类·数据挖掘
寒月霜华37 分钟前
JavaWeb后端-MySQL
数据库·mysql
NOVAnet202342 分钟前
应对AI全球化部署挑战:南凌科技云连接服务实现算法模型全球稳定传输
网络·人工智能·科技·网络安全
程序员大雄学编程44 分钟前
《程序员AI之路:从Python起步》完全学习导航
人工智能·python