基于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 分钟前
启效云战略升级:本体论落地 AI 原生应用智能体,打造中国版 Palantir 数字基座
人工智能·低代码·软件开发·低代码开发·零码化编辑器
jarvisuni5 分钟前
GLM5.1 降智了?国模思考强度研究!
人工智能·ai编程
IT_陈寒20 分钟前
SpringBoot自动配置的坑差点让我加班到天亮
前端·人工智能·后端
亿信华辰软件23 分钟前
睿治Agent数据治理平台重磅发布:数据治理大脑+全栈Agent,以AI重构数据治理全流程
大数据·人工智能
源码老李25 分钟前
独立游戏AI音乐指南:用Suno AI让游戏拥有灵魂
人工智能·游戏·ai编程
:mnong39 分钟前
AI 编程理论与实践 — 课程大纲
人工智能
虹科网络安全42 分钟前
艾体宝产品|深度解读 Redis 8.4 新增功能:原子化 Slot 迁移(下)
数据库·redis·bootstrap
Luca_kill43 分钟前
深度解析 DeerFlow:字节跳动开源的长时程 AI 超级智能体架构
人工智能·智能体·大模型应用·ai架构·deerflow
PNP Robotics1 小时前
领军军者|PNP机器人包文涛:以具身智能定义机器人的“生命直觉”
人工智能·深度学习·学习·机器学习·机器人
stereohomology1 小时前
2026年人工智能技术趋势浅度解析
人工智能