摘要: 在分布式系统中通常存在着多个机器节点,每个节点只能控制自己事务的成功与失败而无法获知其他节点的事务执行结果,这时当事务操作跨越多个节点时就会存在无法满足分布式系统ACID中的数据一致性(Consistency)问题,这时就需要一个协调节点了统一调到分布式系统中其他节点的事务操作。 在分布式系统... 阅读全文
posted @ 2015-08-18 00:39 AiFly 阅读(2248) 评论(0) 推荐(0)
摘要: 虽然JVM有着Scala 、Groovy 、Clojure 等依赖于JVM的函数语式语言,但直到Java8才算是java正式支持**函数式编程**; Java8中加入了Lambda的支持标志着Java正式加入了混合式编程语言(支持命令式编程与函数式编程)的行列;像C#、Python都是同时支持... 阅读全文
posted @ 2015-08-05 22:20 AiFly 阅读(437) 评论(0) 推荐(0)
摘要: 序列化在高性能网络编程、分布式系统开发中是举足轻重的之前有用过Java序列化、ProtocolBuffer等,在这篇文章这里中简单分析序列化后的byte数组观察各种序列化的差异与性能,这里主要分析Java序列化、Kryo、ProtocolBuffer序列化;* Java序列化为jdk自带的序列化实现... 阅读全文
posted @ 2015-07-17 02:16 AiFly 阅读(5305) 评论(0) 推荐(0)
摘要: ##Docker是什么##相信我们很多人都使用多VM(Virtual Machine),也就是虚拟机,简单的来说Docker就是类是于VM的容器,但Docker要轻量得多,VM(Virtual Machine)是重量级的;VM是硬件级别的虚拟化技术,而Docker只是内核级别的虚拟化技术,Docke... 阅读全文
posted @ 2015-06-07 17:18 AiFly 阅读(1138) 评论(0) 推荐(0)
摘要: ## Markdown是什么* 是一种极其简单的标记语言,写的时候只需要普通编辑器即可;* 它可以使文本内存具有某种格式;* Markdown设计理念使文本易读、易写* 文件后缀名:.md 、 .markdown、 .mdown Markdown可以让你像编程一样写文章,没错就是这么神奇!不要听到... 阅读全文
posted @ 2015-05-22 01:32 AiFly 阅读(675) 评论(0) 推荐(0)
摘要: 共享内存模型,顾名思义就是通过共享内存来实现并发的模型,当多个线程在并发执行中使用共享资源时如不对所共享的资源进行约定或特殊处理时就会出现读到脏数据、无效数据等问题;而为了决解共享资源所引起的这些问题,Java中引入了同步、锁、原子类型等这些用于处理共享资源的操作; 在本篇文章中,将通过几个De... 阅读全文
posted @ 2015-05-21 00:21 AiFly 阅读(1525) 评论(0) 推荐(0)
摘要: 这里我们使用Java的线程与锁来解析共享内存模型;做过java开发并且了解线程安全问题的知道,要使某段代码是线程安全的那必须要满足两个条件:内存可见性、原子性; 内存可见性 在JVM规定多个线程进行通讯是通过共享变量进行的,而Java内存模型规定了有主内存是所有线程共享的,而各个线程又有自... 阅读全文
posted @ 2015-05-03 22:09 AiFly 阅读(4029) 评论(0) 推荐(0)
摘要: 从很久之前在学校到现在我们编程的时候经常都有听说到并发编程,偶尔也会听到说并行,但我们很多人其实都不太清除并发与并行具体的区别在哪;我们刚开始学习编程语言的时候我相信我们写的都是串行程序,一步接着一步来,可以说这比并发程序更不容易出错,但在性能上要远不如并发;还有一种并发具有很强容错性:分布式程... 阅读全文
posted @ 2015-04-29 23:37 AiFly 阅读(916) 评论(0) 推荐(0)
摘要: 最近有接触通讯协议有碰到字节序,记得上学的时候有说过不过太久了不怎么记得了,现在我在这里说说字节序; 我们都知道计算机存储数据的时候都是把数据转换成字节进行存储,而日常我们的程序或存储的数据通常都是由多个字节组成的,而不同的计算机或设备存储的规则又不一致,导致我们在多计算机、设备间传输数据时就要了解... 阅读全文
posted @ 2015-04-13 22:09 AiFly 阅读(1185) 评论(0) 推荐(0)
摘要: 在IntelliJ IDEA 14.1中使用在java项目中使用Maven时当没有在Maven中配置JDK编译版本、源码版本时,IDEA将默认的编译版本、源码版本设置为jdk5。在IDEA中Language level将使用默认的JDK5级别目标版本也是默认为JDK5当手动改为其他版本如:JDK8,... 阅读全文
posted @ 2015-04-06 13:17 AiFly 阅读(7823) 评论(0) 推荐(0)