本月博客排行
-
第1名
龙儿筝 -
第2名
lerf -
第3名
paulwong - fantaxy025025
- johnsmith9th
- xiangjie88
- zysnba
年度博客排行
-
第1名
青否云后端云 -
第2名
宏天软件 -
第3名
gashero - wy_19921005
- vipbooks
- benladeng5225
- e_e
- wallimn
- javashop
- ranbuijj
- fantaxy025025
- jickcai
- gengyun12
- zw7534313
- qepwqnp
- 解宜然
- ssydxa219
- zysnba
- sam123456gz
- sichunli_030
- tanling8334
- arpenker
- gaojingsong
- xpenxpen
- kaizi1992
- jh108020
- wiseboyloves
- ganxueyun
- xyuma
- xiangjie88
- wangchen.ily
- Jameslyy
- 龙儿筝
- luxurioust
- mengjichen
- lemonhandsome
- jbosscn
- zxq_2017
- nychen2000
- lzyfn123
- forestqqqq
- wjianwei666
- ajinn
- zhanjia
- siemens800
- Xeden
- hanbaohong
- java-007
- 喧嚣求静
- mwhgJava
企业架构专栏最新文章
Hadoop学习二十七:Hadoop-Hdfs 权限相关 源码
一.Linux文件/目录权限
http://hi.baidu.com/skyforum/item/9946ef57b371789608be1747,不了解的需要做一个基本的了解。
二. FsAction
FsAction对应着文件/目录 ...
Hadoop学习二十六:Hadoop-Hdfs Lease源码
一. Lease
A Lease governs all the locks held by a single client. * For each client there's a corresponding lease, whose * timestamp is updated when the client periodically * checks in. If th ...
请不要再使用低级别的AOP API
在iteye上,咨询我Spring问题中最多的一个就是:AOP方面的问题,我之前也写过类似的帖子解答那些疑问:
注入FactoryBean失败分析+解决方案
spring的二次代理原因及如何排查
struts2+spring集成bug——使用AOP时可能遇到的问题分析
关于spring的aop拦截的问题 protected方法代理问题
Spring事务不起作用 问题汇总
...
如何测试@Async异步任务
spring3支持@Async注解的异步任务,之前大家都是通过使用如线程池来完成,spring3也是使用这种方式,但更简单。
其具体实现在:org.springframework.aop.interceptor.AsyncExecutionInterceptor,是一个方法拦截器,其invoke方法的部分代码如下:
Future<?> result = determineA ...
如何测试REQUIRES_NEW事务
在使用spring进行集成测试时,一般会使用@TransactionConfiguration(transactionManager = "transactionManager", defaultRollback = true)自动回滚事务,但是如果遇到REQUIRES_NEW事务,那么这个事务是不会回滚的。
1、通过覆盖其事务传播属性来完成,即如开发环境的事务属性配置 ...
使用Aop工具类诊断常见问题
在实际开发过程中,我见过问的最多的两个问题是:
1、为什么事务不起作用 ---->Spring事务不起作用 问题汇总
2、为什么注入不了 ---->spring的二次代理原因及如何排查
我专门写了一个hack工具来诊断这些问题,因为是hack,目前只在现有版本中可用,不保证新版本可用,不过主要是诊断时使用,能用即可。
主要提供以下方法:
isMu ...
Hadoop学习二十五:Hadoop-Hdfs FSImage源码
一. FSImage作用
加载硬盘镜像文件fsimage到内存。
加载硬盘日志文件edits到内存。这个本来是类FSEditlog的事情,但是是由FSImage负责调用。
保存内存中文件层次结构到硬盘文件fsimage中。
保存内存中操作日志到硬盘文件edits上。按照对应关系,觉得是应该有这么一步吧。但遗憾的告诉你,这一步在整个文件系统中不存在。也就是FSImage可以分为内存和硬盘 ...
Hadoop学习二十四:Hadoop-Hdfs FSEditLog 源码
一. FSEditLog类图
二. FSEditLog
FSEditLog提供了对editlog文件的操作方法。简单的类,方法一个个看。
editStreams保存着一个fsimage下所有的editlog文件对应的输出流EditLogOutputStream。
三. FSEditLog方法
void open():Create empty edit log f ...
Hadoop学习二十三:Hadoop-Hdfs FSDirectory 源码
一. FSDirectory
上文Hadoop学习二十二:Hadoop-Hdfs INode源码讲到INode是文件层次结构的反应。那文件层次结构由谁去维护,就是由FSDirectory维护。
我把从客户端发起一个操作到最终完成这一操作所经过的类,依次划分为外层-底层。那FSNamesystem算的上底层的东西,FSDirectory就是更底层的东西。
所有会导致文件层次结构变化的操作 ...
注入FactoryBean失败分析+解决方案
如果有朋友 遇到Spring疑难杂症,小弟愿意帮忙分析及提出解决方案。
通过spring注入FactoryBean时可能会遇到找不到依赖的异常“Caused by: org.springframework.beans.factory.NoSuchBeanDefinitionException:”,但是很多朋友会说明明我配置了,怎么找不到呢?或者如果直接从Spring容器去getBean是 ...
spring的二次代理原因及如何排查
最近一个朋友使用javamelody时遇到一个二次代理的问题,即一个Bean被代理了两次。
我还原了一下问题,并简化出一个工程方便大家观察。可以下载附件代码还原场景。
代码如下:
1、接口及目标类
package com.sishuok.proxy;
public interface Interface {
public void sayHello();
...
Hadoop学习二十二:Hadoop-Hdfs INode源码
一. INode类图
二. INode
We keep an in-memory representation of the file/block hierarchy.This is a base INode class containing common fields for file and directory inodes.INode是文件层次结构的反应。
INo ...
springmvc绑定Set的解决方案
1、模型
public class Vote {
private Integer id;
private String title;
private Set<VoteItem> voteItems;
private VoteSubject voteSubject;
}
public class VoteItem {
priv ...
Hadoop学习二十一:Hadoop-Hdfs DataNode 源码
一. DataNode类图
二. DateNode属性说明
DatanodeProtocol namenode:RPC代理类。RPC.getProxy(nameNodeAddress)得到远程NameNode代理类。后续的versionRequest(),register(),sendHeartbeat(),blockReceived(),blockReport()都是nam ...
struts2+spring集成bug——使用AOP时可能遇到的问题分析
之前一朋友问我strut2和spring集成时使用aop后造成注入失败:关于struts2-spring整合的问题,我就分析一下struts2如果和spring集成的,并解决这个问题。
此问题已经提交到struts2的JIRA,2.3.16将修复;https://issues.apache.org/jira/browse/WW-4110。
问题:
但是当我对action类加了s ...
SpringMVC内置的精准数据绑定2
之前写过一篇《扩展SpringMVC以支持更精准的数据绑定1》用于完成类似于struts2的数据绑定;有朋友可能觉得自己写个参数解析器扩展比较麻烦,在此再介绍下springmvc内置的支持。
代码片段如下:
//http://localhost:9080/es-web/binder/test1?user1.id=1&user2.id=2
@RequestMa ...
Hadoop学习二十:Hadoop-Hdfs 通信机制VersionedProtocol接口方法
一. VersionedProtocol
//使用Hadoop RPC机制的所有协议的超类
//所有子类所以自己的协议号static final long versionID
public interface VersionedProtocol {
/**
* 返回与指定协议protocol相关的协议版本
* @param protocol 协议接口的类名 ...
Hadoop学习十九:Hadoop-Hdfs 通信机制VersionedProtocol工作原理
一.RPC
在http://zy19982004.iteye.com/blog/1875969里曾经提到VersionedProtocol v = RPC.getProxy(...);得到一个Java代理类。实际上RPC就是建立在VersionedProtocol的基础上的。
二.VersionedProtocol类图
三.工作原理
以Client与NameNo ...
Hadoop学习十八:Hadoop-Hdfs DataXceiverServer源码其它操作及总结
一. 其它操作
public static final byte OP_REPLACE_BLOCK = (byte) 83;
public static final byte OP_COPY_BLOCK = (byte) 84;
public static final byte OP_BLOCK_CHECKSUM = (byte) 85;
二.REPLACE_BLOCK ...
Hadoop学习十七:Hadoop-Hdfs DataXceiverServer源码写数据
一.写数据
DataXceiver的writeBlock方法用于客户端(Client或DataNode)的写数据请求。
二.单一流程
读取客户端发送过来的消息(下文称之为“请求参数”)
blockId:要写入块的block id。
generationStamp:要写入块的block generationStamp。
pipelineSize:num o ...
企业架构热门文章
博客专栏评论
只有@AspectJ支持命名切入点,而Schema风格不支持命名切入点。有一个问题不太明白Schema ...
dagger9527 评论了 【第六章】 AOP 之 6.5 AspectJ切入点语法 ...
dagger9527 评论了 【第六章】 AOP 之 6.5 AspectJ切入点语法 ...