摘要: 分布式应用对业务逻辑复用的需求十分强烈。上层业务都想借用底层服务,来搭建更多、更丰富的应用。 将公共业务拆分出来,形成可共用的服务,最大程度的保障代码和逻辑的复用,这种设计成为SOA(面向服务架构)。 在SOA中,服务消费者通过服务名称,在服务列表中找到需要调用的服务,这称为服务的路由。 而对于负载 阅读全文
posted @ 2017-05-11 17:40 知己一生 阅读(685) 评论(0) 推荐(0) 编辑
摘要: 事务具有四个特征,即我们通常所说的ACID,原子性(Automicity),一致性(Consistency),隔离性(Isolation),持久性(Durability)。 隔离性方面,标准SQL定义了四个事务的隔离级别。 这些级别的判断标准为:1.是否存在脏数据读取。(也就是可以读取到事务处理时的 阅读全文
posted @ 2017-05-09 20:41 知己一生 阅读(136) 评论(0) 推荐(0) 编辑
摘要: 1.随着多线程的兴起,为系统的性能带来了卓越的提升。但也带来了另一个最大的副作用,那就是并发。 2.在分布式系统中,另一个需要解决的问题就是数据的复制。常见的场景如下: 1)增加系统可用性,防止单点故障。 2)提高系统性能,通过负载均衡,让分布在不同地方的数据副本都能够为用户提供服务。 所谓分布式一 阅读全文
posted @ 2017-05-08 20:27 知己一生 阅读(374) 评论(0) 推荐(0) 编辑
摘要: 控制反转是spring的重要概念。而实现控制反转的IoC容器具体又是如何实现呢。 IoC容器的目的是能够管理系统中各个对象之间的关系和依赖,为了实现这个功能,spring框架对Bean做了进一步抽象 BeanDefinition。 IoC容器的种类当然不止一种,定义IoC容器的规范则是 BeanFa 阅读全文
posted @ 2017-05-06 16:18 知己一生 阅读(187) 评论(0) 推荐(0) 编辑
摘要: 虚拟机把描述类的Class文件加载到内存,并进行校验、准备、解析、初始化,形成jvm可以直接使用的类型,这被称为jvm的类加载机制。 1. 加载:根据全限定名加载二进制文件到jvm内存。 2.校验: 根据java虚拟机规范,对文件进行验证。 3. 准备: 为类变量分配初始值,在方法区分配。 4. 解 阅读全文
posted @ 2017-05-03 20:18 知己一生 阅读(101) 评论(0) 推荐(0) 编辑
摘要: java中为了解决多线程并发带来的线程安全问题,引入了锁机制。 一、公平锁和非公平锁 1、公平锁:按照申请锁的顺序(FIFO队列)来获取锁。 2、非公平锁:所有线程都会竞争,获取的锁的顺序和申请顺序无关。 二、共享锁和独占锁 1、共享锁:又称读锁,支持多个线程同时获取锁,可以读数据,无法更新。 2、 阅读全文
posted @ 2017-05-03 11:50 知己一生 阅读(271) 评论(0) 推荐(0) 编辑
摘要: 反射机制是什么概念?大多都有介绍,指的是程序在运行状态中,能够加载一个只有类名的类,加载完之后会在堆上产生一个Class对象。通过这个 Class对象可以获得类的属性、方法和其他类信息。之前对反射的应用场景感到比较模糊,今天才发现自己原来不知不觉早已经在使用着它了。 说两个场景吧: 1. sprin 阅读全文
posted @ 2017-04-28 09:12 知己一生 阅读(188) 评论(0) 推荐(0) 编辑