redis下处理并发问题,通过使用setnx进行加锁,在操作系统以及数据库中处理并发都会用到锁机制,虽然加锁可以解决并发问题,但是会降低并发量,所以它们都会通过读写锁来降低锁的粒度. 加锁实际上就是把并行读写改成串行读写的方式来避免资源竞争$redis = new Redis();$redis->connect('127.0.0.1', 6370);if(!$redis->setnx('lock',1)){ usleep(500000); //等待一段时间 if(!$redis->setnx('lock',1)){exit(); }}redis->EXPIREAT('lock', 2); //设置一个过期时间,避免进程挂掉导致锁不能释放//业务处理$redis->del('lock');