10 2018 档案
摘要:内部类 在一个Java源文件中,只能定义一个与类名完全一致的公开的类,这个类,我们称为外部类。在一个外部类中,我们可以在内部定义一个或者多个类,我们把在内部定义出来的类称为内部类。内部类的定义形式,和普通类的定义方式是一致的: ①访问权限控制符:取值可以是private、无、protected、pu
阅读全文
摘要:为什么要使用泛型 首先我们先来看一段演示代码,如下所示, 第2行,List里面的内容类型是Object类型,因此第3、4、5行可以接受String、Integer或者Class类型。然鹅,会存在两个严重的问题: ①在List集合中,增加元素时,集合不会记住元素的具体类型,对象的编译类型为Object
阅读全文
摘要:前言 学技术绝对不能好高骛远,导致内心情愫的铎动。理论是实践的基石,而实践更是对理论加深理解。因此理论和实践相结合,理论不懂就实践,实践不会就看理论,理论不会就再实践。 ZAB协议 ZAB协议 是为分布式协调服务Zookeeper专门设计的一种支持崩溃恢复的原子广播协议。ZooKeeper主要依赖Z
阅读全文
摘要:前言 注解在JDK源码、Spring源码、企业项目中都是运用的非常广泛,JDK源码中比较常见的有@Override、@Deprecated、@SuppressWarnings。我将系统性的介绍一下注解,以及注解的使用。 什么是注解 我们对@Override已经很熟悉了,下面我们点来这个注解的定义。代
阅读全文
摘要:前言 因为之前做开发也接触到ZooKeeper,是以服务注册中心的方式来使用ZooKeeper,因为现在要探索分布式事务的问题,所以系统性的学习一下ZooKeeper。ZooKeeper是什么呢?Zookeeper是一个开放源代码的分布式协调服务。它的设计目标是将那些复杂而且容易出错的分布式一致性服
阅读全文
摘要:前言 因为后面要探索分布式相关的技术,因此我在腾讯云申请了一台免费试用的云服务器。后续会续费,支持云服务。拿到的云服务器,很多的的开发所需要的环境需要我们自己去构建,因此,我在此稍微做一下分享。 Linux服务器介绍 上图中是取到云服务器时,在根目录下最初始的目录。linux系统的目录是一个树状的目
阅读全文
摘要:前言 在分布式系统设计的过程中,我们需要考虑cap理论的指导思想,如下图所示,P分区容错性,考虑到分布式系统部署在多个结点上,因此分区容错性是分布式系统的最基本要具备的。因此我们只能在一致性和可用性之间作权衡。于是就出现了很多一致性协议。著名的协议有二阶段提交协议,三阶段提交协议和Paxos算法。本
阅读全文
摘要:前言 我在《数据库事务和事务的隔离级别》和《再谈数据库事务隔离级别》两篇文章中详细介绍了数据库事务的隔离级别。本文将会从分布式的事务开始谈起,以及CAP理论和BASE理论。 分布式事务 随着分布式计算的发展,事务在分布式计算领域中也得到了广泛的应用。在单机数据库中,我们很容易能够实现一套满足ACID
阅读全文
摘要:前言 在“数据库事务和事务的隔离级别”一文中,事务的隔离级别有如下4中隔离级别, 1.未授权读取,read uncommitted 2.授权读取,read committed 3.可重复读取,repeatable read 4.串行化,serializable 这次我以mysql为例,通过实际操作演
阅读全文
摘要:前言 什么是事务?事务是由一系列对系统数据的访问与更新的操作所组成的一个程序执行逻辑单元,在狭义上,我们所说的事务指的是数据库事务。 事务的特点 当应用程序并发访问数据库中的数据时,事务能够在这些应用程序中,提供一个隔离方法,用来防止并发操作的互相干扰。另外,事务能够保证了一个从失败中回滚到操作之前
阅读全文
摘要:前言 著名学者胡适说过这么一句话:“发表是最好的记忆”,而阿里巴巴中间件负责人毕玄在《分布式java应用 基础和实战》一书中提到实践是最好的成长,发表是最好的记忆,接下一来我们来了解一下集中式系统如何向分布式系统演进。集中式系统,就是将所有的业务功能集成在同一个系统,只要部署好一台应用,就能够满足业
阅读全文