Cassandra框架
Cassandra框架 Cassandra框架 Cassandra是社交网络理想的数据库,适合于实时事务处理和提供交互型数据。以Amazon的完全分布式的Dynamo为基础,结合了Google BigTable基于列族(Column Family)的数据模型,P2P去中心化的存储,目前twitter和digg中都有使用。 在CAP特性上,HBase选择了CP,Cassandra更倾向于...
Cassandra框架 Cassandra框架 Cassandra是社交网络理想的数据库,适合于实时事务处理和提供交互型数据。以Amazon的完全分布式的Dynamo为基础,结合了Google BigTable基于列族(Column Family)的数据模型,P2P去中心化的存储,目前twitter和digg中都有使用。 在CAP特性上,HBase选择了CP,Cassandra更倾向于...
Cassandra的数据存储结构 Cassandra 中的数据主要分为三种: CommitLog:主要记录下客户端提交过来的数据以及操作。这个数据将被持久化到磁盘中,以便数据没有被持久化到磁盘时可以用来恢复。 Memtable:用户写的数据在内存中的形式,它的对象结构在后面详细介绍。其实还有另外一种形式是 BinaryMemtable 这个格式目前 Cassandra 并没有使...
什么是原子操作? 原子操作(Atomic Operation),意为”不可被中断的一个或一系列操作”。 处理器使用基于对缓存加锁或总线加锁的方式,来实现多处理器之间的原子操作。 在 Java 中,可以通过锁和循环 CAS 的方式来实现原子操作。CAS操作 —— Compare & Set ,或是 Compare & Swap ,现在几乎所有的 CPU 指令都支持...
@Valid: @Valid注解用于校验,所属包为:javax.validation.Valid。 首先需要在实体类的相应字段上添加用于充当校验条件的注解,如:@Min,如下代码(age属于Girl类中的属性): @Min(value = 18,message = "未成年禁止入内") private Integer age; 其次在controller层的方法的要校验的参数上添加...
EL表达式+JSON写法 @Value("#{'${scio.cloud.list}'.split(',')}") private List<String> list; @Value("#{${scio.cloud.maps}}") private Map<String,String> maps; yml文件 scio.cloud.list: topic1,...
我还记得我刚工作那一段时间, 项目 Code Review 的时候,我经常因为变量命名不规范而被 “diss”! 究其原因还是自己那会经验不足,而且,大学那会写项目的时候不太注意这些问题,想着只要把功能实现出来就行了。 但是,工作中就不一样,为了代码的可读性、可维护性,项目组对于代码质量的要求还是很高的! 前段时间,项目组新来的一个实习生也经常在 Code Review 因为变量命名不...
🏭 单例模式 (Singleton Pattern) 深度解析 1. 模式动机与定义 1.1. 模式动机:保证唯一实例与全局访问 对于系统中的某些类来说,只有一个实例至关重要,例如: 一个系统只能有一个窗口管理器、文件系统或ID(序号)生成器。 一个系统可以有多个打印任务,但只能有一个正在工作的打印任务。 如果使用全局变量,虽然可以确保对象随时被访问,但不能阻止用户实例...
第1章:并发编程线程基础 wait() 如果调用wait()方法的线程没有实现获取该对象的监视器锁,则调用wait()方法时线程会抛出IllegalMonitorStateException异常。 一个线程获取一个共享变量的监视器锁的方法 执行synchronized同步代码块时,使用该共享变量作为参数: synchronized (共享变量) { // do so...
可能是最全的命名规范,建议收藏,文末抽奖福利。 合格的程序员不仅仅是让代码跑起来,而是要做到代码整洁,只满足为了能让编译器通过编译,机器能跑就行而写代码的程序会算不上开发者,码农都不算。 好的命名能体现出代码的特征,含义或者是用途,让阅读者可以根据名称的含义快速厘清程序的脉络。 本篇分享如下代码命名套路来提高我们代码命名: 勿模糊,准确达意 避免误导 做有意义的区分 ...
本文整合了原有的锁相关笔记(Java锁、java中的锁、锁的使用、jvm内置锁优化升级过程),统一从”概念 -> 机制 -> 实战”梳理。 1. 锁的整体认知 Java 里常见的并发控制手段: synchronized:JVM 内置监视器锁,语法简单,自动释放。 Lock(典型是 ReentrantLock):可中断、可超时、可尝试获取锁,能力更灵活。 Rea...