Wesley13 Wesley13
3年前
volatile的两大性质
一、可见性publicclassSynctestApplication{//底层使用了lock指令实现锁缓存行//XX:UnlockDiagnosticVMOptionsXX:PrintAssemblyXcompprivatevo
Easter79 Easter79
3年前
springboot操作redis基础说明
软件环境:springboot1.5.2,redis3.2.1配置在application.properties,增加redis的配置,主要配置项包括redis的ip,端口,密码等,具体如下:\redisRedis数据库索引(默认为0)spring.redis.database0Redis服务器地址spring
Easter79 Easter79
3年前
synchronized在jdk1.6之后引入的一些优化方案
自旋锁    jdk1.6之后默认开启,可以使用参数XX:UseSpinning控制,自旋等待不能代替阻塞,且先不说对处理器数量的要求,自旋等待本身虽然避免了线程切换的开销,但它是要占用处理器时间的,因此,如果锁被占用的时间很短,自旋等待的效果就会非常好,反之,如果锁被占用的时候很长,那么自旋的线程只会白白消耗处理器资源,而不会做任何有用的工
亚瑟 亚瑟
4年前
php操作redis哨兵模式,主从切换后自动获取master
本文将介绍如何使用PHP来连接redis哨兵模式。哨兵模式:大概的原理就是监听redis主库心跳包,如果心跳断开,则枚举一个从库推举成为新的主库,防止redis宕机不能使用。为了增强redis的性能,防止其挂掉,引用redis哨兵监控redis集群是个不错的选择。下面三步简单记录php连接redis哨兵。第一步、获取哨兵模式连接redis句柄对象/
Stella981 Stella981
3年前
Discuz 7.2坑爹集锦
Discuz7.2坑爹集锦SQL篇DZ使用的是MySQL的MyISAM引擎,特点是简单快速,非常适合网络扁平数据。当数据量超过一定规模(大概300万),数据关联复杂(表连接增多)后性能急剧下降。并且在高读写并发时锁表严重(MyISAM是表锁,InnoDB有行锁),甚至导致表损坏。DZ7.2代码中SQL写法存在不标准的问题,虽然不影响执行但对维
Stella981 Stella981
3年前
Redis高级命令操作大全
redis安装和使用redis安装wgethttp://download.redis.io/redisstable.tar.gztarzxvfredisstable.tar.gzcdredisstable.tar.gzmakemakeinst
Wesley13 Wesley13
3年前
JAVA对象布局之对象头(Object Header)
由于Java面向对象的思想,在JVM中需要大量存储对象,存储时为了实现一些额外的功能,需要在对象中添加一些标记字段用于增强对象功能。在学习并发编程知识synchronized时,我们总是难以理解其实现原理,因为偏向锁、轻量级锁、重量级锁都涉及到对象头,所以了解java对象头是我们深入了解synchronized的前提条件,以下我们使用64
Wesley13 Wesley13
3年前
Java多线程优化
\以下文章来源于51CTO技术栈 ,作者崔皓今天,我们从Java内部锁优化,代码中的锁优化,以及线程池优化几个方面展开讨论。Java 内部锁优化当使用Java多线程访问共享资源的时候,会出现竞态的现象。即随着时间的变化,多线程“写”共享资源的最终结果会有所不同。为了解决这个问题,让多线程“写”资源的时候有先后顺序,引入
Stella981 Stella981
3年前
Redis主从、哨兵
之前安装了redis,但是单节点redis不可靠,现在搭建redis主从,提高可用性。一、搭建一主二从  redis主从其实是读写分离,主节点写数据,从节点读数据。  1、准备三台redis机器。redis的密码需要一致,否则主从切换时会有问题。  2、选择两台,作为从机,编辑redis核心配置文件。vim/us
Stella981 Stella981
3年前
Linux 上安装 Redis
Linux上安装redisredis下载下载链接http://download.redis.io/releases/Redis中国用户组http://www.redis.cn/Redis中国用户组(ChinaRedisUserGrou