Wesley13 Wesley13
3年前
java CAS compareAndSet, compareAndSwap 区别
之前看源代码的时候,发现了有两个方法。一个是compareAndSet,一个是compareAndSwap,傻傻分不清这两个到底哪个是CAS呢。我看了java并发编程实战找到了答案。CAS是一种计算机的指令。CAS包含3个操作数,需要读写的内存位置V,进行比较的值A和拟写入的新值B。当且仅当V的值等于A时,C
Wesley13 Wesley13
3年前
java之jvm
1.JVM内存模型_线程独占:栈,本地方法栈,程序计数器线程共享:堆,方法区_回答以上问题是需回答两个要点:1\.各部分功能2\.是否是线程共享2.JMM与内存可见性JMM是定义程序中变量的访问规则,线程对于变量的操作只能在自己的工作内存中进行,而不能直接对主内存操作.由于指令重排序,读写的顺序会被打乱,因此JMM需要
Stella981 Stella981
3年前
Spring Boot 从入门到精通(十)整合 MongoDB 实现读写非关系型数据库
来源:素文宅博客地址:https://blog.yoodb.com/yoodb/article/detail/1578(https://www.oschina.net/action/GoToLink?urlhttps%3A%2F%2Fblog.yoodb.com%2Fyoodb%2Farticle%2Fdetail%2F1578)MongoDB
Stella981 Stella981
3年前
Linux 下的两种分层存储方案
背景介绍随着固态存储技术(SSD),SAS技术的不断进步和普及,存储介质的种类更加多样,采用不同存储介质和接口的存储设备的性能出现了很大差异。SSD相较于传统的机械硬盘,由于没有磁盘的机械转动,寻址速度大大提高,尤其在随机读写较多的应用环境下,性能会大大提升,但这些高性能存储设备的单位存储价格相对于传统的磁带和SATA硬盘也高出很多,
Stella981 Stella981
3年前
ConcurrentHashMap之实现细节
ConcurrentHashMap是Java5中支持高并发、高吞吐量的线程安全HashMap实现。在这之前我对ConcurrentHashMap只有一些肤浅的理解,仅知道它采用了多个锁,大概也足够了。但是在经过一次惨痛的面试经历之后,我觉得必须深入研究它的实现。面试中被问到读是否要加锁,因为读写会发生冲突,我说必须要加锁,我和面试官也因此发生了冲突
Stella981 Stella981
3年前
Redis pipeline(12)
常规的连接客户端一般有3种请求方式:1.Client2.Pipeline3.事务三中模式的区别Client模式:就是客户端发送一个命令,阻塞等待服务端执行,然后读取返回结果。Pipeline模式:是一次性发送多个命令,最后一次取回所有的返回结果,这种模式通过减少网络的往返时间和io读写次数,大幅度提高通信性能。事
Stella981 Stella981
3年前
Akka
在实际应用中,集群环境里共用一些数据是不可避免的。我的意思是有些数据可以在任何节点进行共享同步读写,困难的是如何解决更改冲突问题。本来可以通过分布式数据库来实现这样的功能,但使用和维护成本又过高,不值得。分布式数据类型distributeddata(ddata)正是为解决这样的困局而设计的。akka提供了一组CRDT(ConflictFreeReplic
Wesley13 Wesley13
3年前
Android 解析包出错问题
Android解析包出错问题app上线后经常会遇到安装包解析出错问题,今天刚好做个不完整的总结,解决问题1.检测系统是否开启“USB设备读写保护”,关闭后就可能可以正常安装APK了。2.安装包在下载过程中被破坏了,不完整,重新下载一次试试。或者换个应用市场下载3.如果是使用RE文件管理器
Wesley13 Wesley13
3年前
MySQL Cluster实现SQL&NoSQL组合使用
在MySQLCluster集群,应用数据均保存在数据节点。因此不仅MySQL实例可以对其进行访问,通过NDB的API其他应用也可以访问数据。  利用这个特性,开发者可以实现以下功能:1.进行跨应用的复杂查询2.简单的Key/Value绕过SQL层实现快速读写3.微秒级的实时响应利用以上功能,通过灵活配置应用环境,可提高生产效率和灵活性,在不改动数据库结
如何实现数据库读一致性
1导读数据的一致性是数据准确的重要指标,那如何实现数据的一致性呢?本文从事务特性和事务级别的角度和大家一起学习如何实现数据的读写一致性。2一致性1.数据的一致性:通常指关联数据之间的逻辑关系是否正确和完整。举个例子:某系