`
badqiu
  • 浏览: 674443 次
  • 性别: Icon_minigender_1
  • 来自: 珠海
社区版块
存档分类
最新评论

增强jedis连接池功能

 
阅读更多

maven 依赖

 

<dependency>
        <groupId>com.duowan.common</groupId>
        <artifactId>duowan-common-redis</artifactId>
        <version>1.0.1</version>
</dependency>

 

spring配置

 

        <bean id="redisPoolConfig" class="redis.clients.jedis.JedisPoolConfig">
                <property name="maxActive" value="20" />
                <!-- 等待时长,单位:毫秒 -->
                <property name="maxWait" value="10000" />
                <property name="testWhileIdle" value="true" />
        </bean>

        <bean id="udbRedisParent" abstract="true">
                <property name="jedisPool">
                        <bean class="com.duowan.common.redis.JedisPoolFactoryBean">
                                <property name="poolConfig" ref="redisPoolConfig" />
                                <!-- <property name="server" value="${udb_redis_server}" /> -->
                                <property name="server" value="127.0.0.1:6379" />
                        </bean>
                </property>
        </bean>
     
       <!-- redis dao -->
       <bean id="udbRedisDao" class="com.duowan.usercenter.dao.redis.UdbDaoRedisImpl" parent="udbRedisParent"></bean>

 

reids Dao示例代码

 

 

import com.duowan.common.redis.RedisDaoSupport;


public class UdbRedisDao extends RedisDaoSupport {
        
        // 单条操作
        public void setUser(String username,String pwd) {
                getRedisTemplate().set("pwd_"+username, pwd);
        }
                
        // 通过RedisTransactionCallback 批量操作redis
        public void delUser(final List<String> userList) {
                getRedisTemplate().execute(new RedisTransactionCallback<Object>() {
                        public Object doInTransaction(Transaction tran) {
                                for(String key : userList) {
                                        tran.del(key);
                                }
                                tran.exec();
                                return null;
                        }
                });
        }
        
}
0
2
分享到:
评论

相关推荐

    jedis-2.9.0.jar+commons-pool2-2.4.2.jar

    2. **初始化连接池**:通过`new JedisPool(config, host, port)`创建Jedis连接池。这里的`config`是上面配置好的JedisPoolConfig,`host`和`port`是Redis服务器的地址和端口。 3. **获取和归还连接**:在需要操作...

    jedis jedis.jar

    另外,2.1.0可能也增强了连接池管理,提供了更灵活的配置选项,以适应不同规模的应用需求。 使用Jedis,开发者可以轻松实现以下功能: 1. 数据缓存:利用Redis的高速读写能力,存储和检索频繁访问的数据,提升应用...

    jedis-3.3.0.jar文件

    Jedis 3.3.0与`commons-pool2-2.9.0.jar`一起使用,意味着使用了Apache Commons Pool 2库来管理连接池,这个版本的连接池库提供了更好的性能和资源管理。 **Apache Commons Pool 2** Apache Commons Pool 2是...

    jedis-jedis-3.3.0.zip

    - **连接池管理**:Jedis提供了一个连接池功能,允许开发者高效地管理和重用连接,避免了频繁创建和销毁连接带来的开销。 - **SSL支持**:3.3.0版本增加了对SSL连接的支持,增强了与Redis服务器之间的安全通信。...

    jedis-3.0.0源码

    二、Jedis连接管理 Jedis的连接管理是其核心功能之一。它支持连接池(Pool)管理,通过连接池可以有效地复用已建立的连接,减少网络开销,提高系统效率。JedisPool类实现了连接池的创建、获取和归还连接的逻辑,...

    jedis-2.4.2版本

    1. **连接池使用**:为了提高性能和资源利用率,推荐使用连接池来管理Jedis实例。 2. **合理配置**:根据应用的并发量和Redis服务器的性能调整Jedis的超时时间、重试策略等参数。 3. **错误处理**:正确捕获并处理...

    jedis不同版本的架包

    再者,Jedis 2.7.2是一个更成熟的版本,它进一步增强了Jedis的功能和性能。例如,可能引入了更好的连接池管理策略,如Lettuce连接池的集成,以提高资源利用率。2.7.2也可能增加了对Redis新特性的支持,比如 pub/sub...

    jedis共享接口+单机版集群版功能实现扩展

    在高并发的环境下,为了提高性能和资源利用率,通常会使用连接池管理Jedis实例。连接池如Apache Commons Pool2可以提供线程安全的连接管理,允许多个线程复用已建立的连接,避免频繁创建和销毁连接带来的开销。`...

    jedis-jedis-2.6.0.zip

    2. **连接池支持**:Jedis 2.6.0提供了连接池功能,通过PooledJedis和JedisPool类实现资源复用,有效管理Redis连接,提高系统性能。 3. **命令支持**:增加了对新版本Redis中新增命令的支持,如HyperLogLog、Bit...

    jedis-2.9.0源码+jar包

    2. **连接池支持**:为了优化性能,Jedis提供了连接池功能,允许在多个请求之间重用TCP连接,避免了频繁的创建和销毁连接的开销。 3. **事务支持**:Jedis支持Redis的事务功能,可以批量执行多个操作,并且保证原子...

    redis3.2.1+jedis2.8.0+jedis.api.rar一站下载

    Redis是一款高性能的键值对数据库,它以内存存储为主,数据持久化为辅,支持多种数据结构,如字符串、哈希...同时,Jedis的连接池管理、事务支持以及分布式锁等功能,使得在分布式环境中使用Redis变得更加便捷和安全。

    jedis-2.8-src

    2. **连接池管理**:Jedis 提供了连接池功能,允许开发者在多线程环境中有效地管理和复用连接,提高性能并减少资源消耗。 3. **线程安全**:Jedis 实例不是线程安全的,推荐每个线程使用单独的实例,或者在使用后...

    jedis-2.7.0.jar安装包

    5. **连接池管理**:为了提高性能和资源利用率,Jedis支持连接池功能,如Apache Commons Pool2,可配置连接池大小、超时时间等参数。 6. **脚本支持**:Jedis允许执行Lua脚本,这些脚本可以在服务器端运行,减少...

    jedis-2.1.0

    3. **连接池支持:** Jedis提供JedisPool,这是一个连接池,可以有效地管理和复用与Redis服务器的连接,提高性能并减少资源消耗。 4. **多线程安全:** Jedis对象不是线程安全的,因此在多线程环境中,每个线程应...

    redis-pool-jedis需要的jar包

    以下是一个简单的示例代码,展示如何配置和使用Jedis连接池: ```java import redis.clients.jedis.JedisPool; import redis.clients.jedis.JedisPoolConfig; public class RedisClient { private static Jedis...

    jedis,java连接redis数据库的工具

    5. **连接池管理**:为了提高性能和资源利用率,Jedis支持连接池,比如使用`JedisPool`和`JedisPoolConfig`类进行配置和管理,这样可以避免频繁地创建和关闭连接。 6. **集群支持**:Jedis还提供了对Redis集群的...

    common-pool2

    而`common-pool2`就是Apache Commons提供的一个通用对象池库,它是Jedis连接池的必备组件。 `common-pool2`是Apache Commons Pool的第二个主要版本,它提供了对对象池的实现,允许开发者高效地管理和重用对象,避免...

    jedis-3.0.0.7z

    - 使用连接池管理连接,提高并发性能。 - 在多线程环境中,每个线程应有自己的Jedis实例,避免并发问题。 - 对于大量数据操作,考虑使用Redis的pipeline或transactions以减少网络延迟。 总之,Jedis 3.0.0提供了...

    jedis.2.9.jar

    5. **连接池管理**:优化了连接池的管理,支持更高效的资源复用和释放,降低了资源消耗。 使用Jedis时,首先需要将其引入到项目中。如果是Maven项目,可以在pom.xml文件中添加如下依赖: ```xml &lt;groupId&gt;redis....

    jedis-jedis-2.9.1.zip

    - **连接池**:Jedis支持连接池管理,通过`JedisPool`类可以创建一个连接池,有效地复用连接,提高性能。 - **配置参数**:Jedis允许设置连接超时、读取超时、最大空闲连接数等参数,以优化连接性能。 3. **基本...

Global site tag (gtag.js) - Google Analytics