springboot使用lock4j实现并发控制
一般情况下,我们使用乐观锁来处理并发超发的情况,但是,乐观锁在某些情况下,并不能彻底解决超发情况,于是只能上悲观锁(synchroized, 独占线程),特别是在分布式的情况下分布试锁就更为常见了。 下以使用一种基于redis的分布试锁来实现并发控制。 pom.xml增加: <!--若使用redisson作为分布式锁底层,则需要引入--> <dependency> <groupId>com.baomidou</groupId> <artifactId>lock4j-redisson-spring-boot-starter</artifactId> <version>2.2.2</version...
mybatis 乐观锁解决并发并回滚
1、并发问题 update tb set count=10 where id=1 and count=9 //9为修改前的数量 2、回滚问题 2、代码里在方法上设置@Transactional注解 3、只有继承自RuntimeException的异常才会被事务捕获然后回滚(这个是重点) @Transactional public void insertLog() throws Exception{ logDao.insertTest(); Log log = new Log(); log.setDesc("1111111"); logDao.insert(log); if(true){ throw new RuntimeException("1111"); } }
让Windows Server 2008 + IIS 7+ ASP.NET 支持10万并发请求
让Windows Server 2008 + IIS 7+ ASP.NET 支持10万并发请求 今天下午17点左右,博客园博客站点出现这样的错误信息: Error Summary: HTTP Error 503.2 - Service Unavailable The serverRuntime@appConcurrentRequestLimit setting is being exceeded. Detailed Error Information: Module IIS Web Core Notification BeginRequest Handler StaticFile Error Code 0x00000000 由于之前使用的是默认配置,服务器最多只能处理5000个同时请求,今天下午由于某种情况造成同时请求超过5000,从而出现了上面的错误...