JAVA
文章平均质量分 88
学无止境zZ
这个作者很懒,什么都没留下…
展开
-
Zookeeper
云计算越来越流行的今天,单一机器处理能力已经不能满足我们的需求,不得不采用大量的服务集群。服务集群对外提供服务的过程中,有很多的配置需要随时更新,服务间需要协调工作,这些信息如何推送到各个节点?并且保证信息的一致性和可靠性?众所周知,分布式协调服务很难正确无误的实现,它们很容易在竞争条件和死锁上犯错误。如何在这方面节省力气?Zookeeper是一个不错的选择。 Zookeeper背后的动机原创 2015-11-24 10:31:02 · 458 阅读 · 0 评论 -
java自定义类加载器(findClass和loadClass这两个方法的差别)
package huang.de.wei;import java.io.File;import java.io.FileInputStream;import java.io.IOException;import java.lang.reflect.InvocationTargetException;import java.lang.reflect.Method;public cla原创 2018-01-23 19:13:44 · 11008 阅读 · 0 评论 -
Java内存模型
1. 概述 多任务和高并发是衡量一台计算机处理器的能力重要指标之一。一般衡量一个服务器性能的高低好坏,使用每秒事务处理数(Transactions Per Second,TPS)这个指标比较能说明问题,它代表着一秒内服务器平均能响应的请求数,而TPS值与程序的并发能力有着非常密切的关系。在讨论Java内存模型和线程之前,先简单介绍一下硬件的效率与一致性。2.硬件的效率与一致性原创 2016-11-30 16:49:26 · 455 阅读 · 0 评论 -
内存屏障与JVM并发
内存屏障,又称内存栅栏,是一组处理器指令,用于实现对内存操作的顺序限制。本文介绍了内存屏障对多线程程序的影响。我们将研究内存屏障与JVM并发机制 的关系,如易变量(volatile)、同步(synchronized)和原子条件式(atomic conditional)。本文假定读者已经充分掌握了相关概念和Java内存模型,不讨论并发互斥、并行机制和原子性。内存屏障用来实现并发编程中称为 可见性(v原创 2016-11-30 11:16:16 · 509 阅读 · 0 评论 -
JTA 深度探险
利用 JTA 处理事务什么是事务处理事务是计算机应用中不可或缺的组件模型,它保证了用户操作的原子性 ( Atomicity )、一致性 ( Consistency )、隔离性 ( Isolation ) 和持久性 ( Durabilily )。关于事务最经典的示例莫过于信用卡转账:将用户 A 账户中的 500 元人民币转移到用户 B 的账户中,其操作流程如下 1. 将 A 账户转载 2016-08-10 10:07:32 · 343 阅读 · 0 评论 -
异地多活问题
摘要: 1. 引言 有幸参与了阿里游戏的一个高可用方案的设计,并且在网上发表了方案(面向业务的立体化高可用架构设计),后来参加GOPS全球运维大会深圳站,与众多行业高手交流,发现大家对"异地多活"这个方案设计非常感兴趣,毕竟"异地多活"的方案价值非常大1. 引言有幸参与了阿里游戏的一个高可用方案的设计,并且在网上发表了方案(面向业务的立体化高可用架构设计),后来参加GOPS全球转载 2016-08-09 16:36:39 · 6177 阅读 · 0 评论 -
spring 高度解析
Spring 的骨骼架构Spring 总共有十几个组件,但是真正核心的组件只有几个,下面是 Spring 框架的总体架构图:图 1 .Spring 框架的总体架构图从上图中可以看出 Spring 框架中的核心组件只有三个:Core、Context 和 Beans。它们构建起了整个 Spring 的骨骼架构。没有它们就不可能有 AOP、Web 等上层的特性功能。下面也将主转载 2016-08-03 18:44:34 · 423 阅读 · 0 评论 -
Maven 发布项目到Jetty服务器
官网:http://www.eclipse.org/jetty/documentation/current/jetty-maven-plugin.html1.安装配置插件2. 运行 命令: jetty:run 完成部署 访问:转载 2016-03-21 12:33:50 · 627 阅读 · 0 评论 -
Maven 发布项目到Jetty服务器
官网:http://www.eclipse.org/jetty/documentation/current/jetty-maven-plugin.html1.安装配置插件2. 运行 命令: jetty:run 完成部署 访问:转载 2016-03-21 12:33:21 · 416 阅读 · 0 评论 -
如何使用Disruptor(一)Ringbuffer的特别
如何使用Disruptor(一)Ringbuffer的特别2013-06-19 11:21 Trisha 寒桐译 ifeve.com 字号:T | T首先介绍ringbuffer。我对Disruptor的最初印象就是ringbuffer。但是后来我意识到尽管ringbuffer是整个模式(Disruptor)的核心,但是Disruptor对ringbuffer的访问转载 2016-03-21 12:28:57 · 486 阅读 · 0 评论 -
HTTP 加密
一、关键词HTTP,HTTPS,AES,SHA-1,MD5,消息摘要,数字签名,数字加密,Java,Servlet,Bouncy Castle 二、名词解释 数字摘要:是将任意长度的消息变成固定长度的短消息,它类似于一个自变量是消息的函数,也就是Hash函数。数字摘要就是采用单项Hash函数将需要加密的明文“摘要”成一串固定长度(128位)的密文这一串密文又称为转载 2016-02-21 15:46:48 · 3359 阅读 · 0 评论 -
INVOKE 实现
在写代码的时候,发现Method可以调用子类的对象,但子类即使是改写了的Method,方法名一样,去调用父类的对象也会报错,虽然这是很符合多态的现象,也符合java的动态绑定规范,但还是想弄懂java是如何实现的,就学习了下Method的源代码。 Method的invoke方法 1.先检查 AccessibleObject的override属性是否为true。Accessibl转载 2016-02-19 12:45:35 · 932 阅读 · 0 评论 -
高并发(1)
本文一共分析了三个案例,分别介绍并发系统中的共享资源并发访问、计算型密集型任务缓存访问 、单一热点资源峰值流量问题和解决方案。Q1:订票系统,某车次只有一张火车票,假定有1w个人同时打开12306网站来订票,如何解决并发问题?A1: 首先介绍数据库层面的并发访问,解决的办法主要是乐观锁和悲观锁。乐观锁假设不会发生并发冲突,只在提交操作时检查是否违反数据完整性。转载 2016-02-17 14:06:22 · 428 阅读 · 0 评论 -
RMI通讯2
RMI 相关知识RMI全称是Remote Method Invocation-远程方法调用,Java RMI在JDK1.1中实现的,其威力就体现在它强大的开发分布式网络应用的能力上,是纯Java的网络分布式应用系统的核心解决方案之一。其实它可以被看作是RPC的Java版本。但是传统RPC并不能很好地应用于分布式对象系统。而Java RMI 则支持存储于不同地址空间的程序级对象之间彼此进行通转载 2015-11-26 13:54:32 · 673 阅读 · 0 评论 -
RMI通讯
RMI(远程接口调用) 1. RMI的原理: RMI系统结构,在客户端和服务器端都有几层结构。 方法调用从客户对象经占位程序(Stub)、远程引用层(Remote Reference Layer)和传输层(Transport Layer)向下,传递给主机,然后再次经传 输层,向上穿过远程调用层和骨干网(Skeleton),到达服务器对象。 占位程序扮演着远程服务器对象的代理的角色,转载 2015-11-26 13:40:39 · 443 阅读 · 0 评论 -
Zookeeper的事件驱动和订阅模式
1 watcher种类和事件种类Watcher种类1. zookeeper实例化时注入的默认Watcher2. dataWatchers 一个Map>数据结构,保存调用getData时 注入的Watcher或者调用exist时path指定的节点存在3. existWatchers 一个Map>数据结构,保存调用exits时对应的path节点不存在条件下注入的Watcher原创 2015-11-25 11:15:25 · 1423 阅读 · 0 评论 -
Zookeeper 基础
在前面的文章里我多次提到zookeeper对于分布式系统开发的重要性,因此对zookeeper的学习是非常必要的。本篇博文主要是讲解zookeeper的安装和zookeeper的一些基本的应用,同时我还会教大家如何安装伪分布式,伪分布式不能在windows下实现,只能在linux下实现,我的伪分布式是通过电脑的虚拟机完成了,好了,不废话了,具体内容如下: 首先我们要下载一个zookeep转载 2015-11-19 14:15:54 · 469 阅读 · 0 评论 -
dubbo通讯生产消费调用
1. Dubbo是什么?Dubbo是一个分布式服务框架,致力于提供高性能和透明化的RPC远程服务调用方案,以及SOA服务治理方案。简单的说,dubbo就是个服务框架,如果没有分布式的需求,其实是不需要用的,只有在分布式的时候,才有dubbo这样的分布式服务框架的需求,并且本质上是个服务调用的东东,说白了就是个远程服务调用的分布式框架(告别Web Service模式中的WSdl,以服务者转载 2015-11-23 11:31:47 · 2919 阅读 · 1 评论 -
探险threadLocal
概述相信读者在网上也看了很多关于ThreadLocal的资料,很多博客都这样说:ThreadLocal为解决多线程程序的并发问题提供了一种新的思路;ThreadLocal的目的是为了解决多线程访问资源时的共享问题。如果你也这样认为的,那现在给你10秒钟,清空之前对ThreadLocal的错误的认知!more看看JDK中的源码是怎么写的:This class provides t原创 2018-01-23 18:52:49 · 261 阅读 · 0 评论