2个同样的微服务模块
用nginx自带的负载均衡统一端口分发请求
然后3个redis 用主从复制模式 (1主2读)
然后同时[jmeter]500个线程同时请求同一个Api 去拿redis中的200个资源
还是有重复取数据的步骤的 这是我的测试控制器
另一个服务模块也是一样的配置 然后只有启动端口不一样
2个同样的微服务模块
用nginx自带的负载均衡统一端口分发请求
然后3个redis 用主从复制模式 (1主2读)
然后同时[jmeter]500个线程同时请求同一个Api 去拿redis中的200个资源
还是有重复取数据的步骤的 这是我的测试控制器
另一个服务模块也是一样的配置 然后只有启动端口不一样
你好,我第一直觉是 tryLock 这个方法使用的问题,查阅了一下文档。
看了官方的api,这个tryLock是会返回布尔结果的。
按照你的写法,tryLock 过了三十秒,代码就会往下执行了。
建议可以延长尝试枷锁的事件,或者试试下面的写法。
// or wait for lock aquisition up to 100 seconds
// and automatically unlock it after 10 seconds
boolean res = lock.tryLock(100, 10, TimeUnit.SECONDS);
if (res) {
try {
...
} finally {
lock.unlock();
}
}