- 博客(26)
- 资源 (10)
- 收藏
- 关注
原创 InvocationHandler中invoke方法中的第一个参数proxy的用途
https://stackoverflow.com/questions/22930195/understanding-proxy-arguments-of-the-invoke-method-of-java-lang-reflect-invoca There's in fact little you can do with the actual proxy. Nevertheles...
2018-04-27 14:31:16 428
原创 InvocationHandler中invoke方法中的第一个参数proxy的用途
ss it's part of the invocation context, and you can use it to gain information on the proxy using reflection, or use it in subsequent calls (when calling another method with that proxy, or as a result.Example: an acccount class, which allows to deposit m
2018-04-27 14:31:16 587
原创 debug模式下所有变量有volatile的效果?
java中非volatile变量读取是从工作内存中读取,不一定可以读到主内存的最新数据。volatile变量保证每次读取都要从主内存中拿。 写了一段代码来验证这一点 public class MemoryMode { private volatile boolean flag = false;//这个类型是volatile的时候,结果是conditionChang...
2017-02-12 14:56:37 299 1
原创 为什么不把所有的class文件编译成机器码
jvm执行方法有两种方式:解释执行和编译执行。编译执行是直接执行本地的机器码,编译执行的效率要高于解释执行的效率。 那么,为什么不直接把java代码编译成机器码呢,这样运行起来会更快? 直接编译成机器码的话,那不就是C语言的做法了么。java有一个特性,是可以运行中动态加载类。要支持运行中动态加载类这个特性,就没法做到全部编译成机器码,编译的时候都不知道运行时的类是什么,...
2017-02-11 16:39:41 1468
原创 静态方法执行未成功抛出NoClassDefFoundError
Intellij上面起一个web服务,从浏览器请求的时候,页面出不来,看后台日志,发现一个方法抛了NoClassDefFoundError错误。怀疑是类依赖的包没有在classpath下,查看了maven依赖,包是依赖进去的。然后怀疑是依赖的包损坏了,导致类加载不到。mvn clean一下,清除后重新下载,发现问题仍然存在。依赖包损坏加载的的时候会报什么错?知道的同学告诉一下。写...
2017-02-11 12:47:26 668
原创 静态方法执行未成功抛出NoClassDefFoundError
Intellij上面起一个web服务,从浏览器请求的时候,页面出不来,看后台日志,发现一个方法抛了NoClassDefFoundError错误。怀疑是类依赖的包没有在classpath下,查看了maven依赖,包是依赖进去的。然后怀疑是依赖的包损坏了,导致类加载不到。mvn clean一下,清除后重新下载,发现问题仍然存在。依赖包损坏加载的的时候会报什么错?知道的同学告诉一下。
2017-02-10 20:22:51 1457
原创 为什么major gc要比minor gc慢很多
能想到的原因有两个: 1. major gc使用的算法复杂度比minor gc高;major gc 采取的是mark-sweept或者mark-conpact,minor gc也要标记,但minor gc是标记后复制。将要被复制到的survivor区又是一个连续的内存区。major gc的清除可能快一些,但是整理操作这个复杂度就要高很多了。 2.major
2017-02-10 20:17:08 1013
原创 对jvm卸载class条件的理解
类需要满足以下3个条件才能算是“无用的类” 1. 该类所有的实例已经被回收 2. 加载该类的ClassLoder已经被回收 3. 该类对应的java.lang.Class对象没有任何对方被引用 第2个条件有一些费解。可能是因为ClassLoder保存了类加载到jvm方法区的位置信息,保存了类的引用。但是ClassLoader又不具备主动卸载
2017-02-10 20:15:36 3910 2
原创 为什么major gc要比minor gc慢很多
能想到的原因有两个: 1. major gc使用的算法复杂度比minor gc高; major gc 采取的是mark-sweept或者mark-conpact,minor gc也要标记,但minor gc是标记后复制。将要被复制到的survivor区又是一个连续的内存区。major gc的清除可能快一些,但是整理操作这个复杂度就要高很多了。 2.major gc要处理的...
2017-02-09 22:17:24 429
原创 对jvm卸载class条件的理解
类需要满足以下3个条件才能算是“无用的类” 1. 该类所有的实例已经被回收 2. 加载该类的ClassLoder已经被回收 3. 该类对应的java.lang.Class对象没有任何对方被引用 第2个条件有一些费解。可能是因为ClassLoder保存了类加载到jvm方法区的位置信息,保存了类的引用。但是ClassLoader又不具备主动卸载类的功能,所以类加载后,引...
2017-02-07 23:38:27 438
Hadoop IPC源码分析(一)
Hadoop IPC源码分析(一) 类RPC RPC包含了一系列的静态类和静态方法。使用PROTOCOL_ENGINES = new HashMap<Class,RpcEngine>();作为实现的接口—>RPCEngine的一个缓存 使用PROXY_ENGINES = new HashMap<Class,RpcEngine>();...
2012-07-23 22:32:01 78
Hadoop IPC源码分析(一)
ine的一个缓存 使用PROXY_ENGINES = new HashMap<Class,RpcEngine>();作为实现的接口代理->PPCEngine的一个缓存 接口代理使用JDK的Proxy.getProxyClass获取对应接口的代理类。默认的RpcEngine的实现为 WritableRpcEngine.class ; waitForProxy方法是在时间限制内周期的调用getProxy方法,而getProxy是从缓存中
2012-07-23 22:32:01 63
原创 nosql数据库技术
nosql数据库 软件的变化:1.用户数量的变化:以前的用户数量少,并且变化量不大;现在的用户数量大,并且随着时间增长; 2.应用需求的变化:以前的软件解决流程固定的问题,把人工做的事情映射给计算机做,达到完成业务流程的速度更快,犯得错误更少,业务流程早就一文本的形式规定好了,如取款机业务,机票预订业务等等。 现在软件解决的问题业务流程是未知的,没有现有的模型去模仿的,业务...
2012-05-19 16:54:41 209
原创 Hadoop Yarn NodeManager源码分析①
从NodeManager.java开始分析。 NodeManager类完成的工作就是启动一系列的服务(Service),Service是具有状态的类,状态有 NOTINITED, INITED, STARTED,STOPPED; Service有一系列改变这些状态的方法,并且可以注册监听器监听自身状态的变化。 NodeManager本身继承...
2011-12-17 16:34:02 268
原创 Hadoop Yarn NodeManager源码分析①
,STOPPED; Service有一系列改变这些状态的方法,并且可以注册监听器监听自身状态的变化。 NodeManager本身继承自Service,是一种CompositeService,也就是说NodeManager这个Service又由一些列的Service组成。同时NodeManager实现了监听器接口,可以监听自己的Service的状态变换情况。 组成NodeManager的Service有: DeletionService 用于删除特定用户特定文件夹下的文件
2011-12-17 16:34:02 87
原创 物理主机不能连kvm虚拟机
kxvemn 20:39:54使用virt-manger在物理主机host1上建立了虚拟机vm,使用默认网络default,vm可以连接host1和外网。host1也可以连接vm。但是从物理主机host2连接不到vm,请问怎么设置网络,使得其他的物理主机能够连通虚拟机。谢谢。kxvemn 20:40:16虚拟机使用的kvm、江南浪子 20:42:50echo 1>/proc/s...
2011-11-21 20:58:52 342
MapReduce NextGen
Yahoo二月份在博客上发表的一篇关于Hadoop MapReduce框架改进的文章,大概翻译了一下。原帖地址:http://developer.yahoo.com/blogs/hadoop/posts/2011/02/mapreduce-nextgen/========================================重构后的框架架构如下图所示: ...
2011-08-12 19:18:27 175
MapReduce NextGen
n/========================================重构后的框架架构如下图所示: 重构MapReduce框架的基本的思想是将JobTracker的两个主要功能,资源管理和作业调度监控,分解为独立的模块。ResourceManager负责对应用(application)计算资源的分配,对于每一个应用,ApplicationMaster负责应用的调度和协作。一个应用可以是一个传统的MapReduce作业,也可以是又作业组成的DAG。Resource
2011-08-12 19:18:27 120
Machine Learning with TensorFlow (tensorflow机器学习实战)
2018-04-19
Cloud Design Pattern(微软出品)
2018-01-10
go语言实战
2017-12-17
香港科技大学tensorflow三天速成课件
2017-12-13
Fraud Detection Using GraphDB 基于图数据库的反欺诈
2017-09-14
笨方法学python
2012-07-30
100 SOA Questions: Asked and Answered
2011-07-20
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人