- 浏览: 753309 次
- 性别:
- 来自: 北京
最新评论
-
萨琳娜啊:
Java读源码之Netty深入剖析网盘地址:https://p ...
使用JAVA操作netty框架 -
小灯笼:
Netty源码剖析视频教程网盘地址:https://pan.b ...
使用JAVA操作netty框架 -
luckywind:
请问怎么下载那个svn上的源码啊?
本地调试Hbase源码详解 -
heng123:
Netty视频教程https://www.douban.com ...
使用JAVA操作netty框架 -
kongdong88:
Netty简单应用与线上服 ...
使用JAVA操作netty框架
文章列表
请见附件!!!
以下链接是我以前写的一个简单例子,也能给大家提供帮助。
http://flychao88.iteye.com/blog/1990520
另外同时也推荐给大家看看Apache chain责任链工具,这个非常好用,效率也较高。
Firebug:不用多介绍了吧https://chrome.google.com/webstore/detail/bmagokdooijbeehmkpknfglimnifenchChromeSnifferPlus:Chrome 探测器,可以探测正在使用的开源软件或者 js 类库https://chrome.google.com/webstore/detail/chrome-sniffer-plus/fhhdlnnepfjhlhilgmeepgk
32位jvm还是64位jvm?
- 博客分类:
- java基础
在早期,JVM只有32位的,众所周知,32位有4G的内存限制。需要注意的是,32位jvm的堆内存实际可设的大小还受操作系统的限制。Hotspot VM,在Windows下,最大的堆内存大约在1.5G左右;在基于较新的linux kernel的Linux系统下,其限制在2.5到3G之间,在早前的linux kernel下,大约在2G左右;在Solaris下,为3.3G左右。64位的hotspot VM允许使用更大的堆内存。
但是,64位JVM会有一些性能损失。主要在于普通对象指针(ordinary object pointers或oops)的size增大了,由32位增加到64位,这导致CPU ...
【转】使用Netty实现多路复用的client
- 博客分类:
- 开发框架
Netty只提供的异步传输数据的方式,但是并没有实现多路复用的client。
一个分布式的客户端代码基本是这个样子的:
?
JAVA 线程池源码分析
- 博客分类:
- java基础
java5之后为我们提供了线程池,只需要使用API,不用去考虑线程池里特殊的处理机制。
Java5的线程池分好多种:固定尺寸的线程池、可变尺寸连接池等。
常用的是ThreadPoolExecutor,它的继承关系如下:
下面详细说明一下自定 ...
Redis分布式中间件TwemProxy
- 博客分类:
- 开发框架
twemproxy,也叫nutcraker。是一个twtter开源的一个redis和memcache代理服务器。 redis作为一个高效的缓存服务器,非常具有应用价值。但是当使用比较多的时候,就希望可以通过某种方式 统一进行管理。避免每个应用每个客户端管理连接 ...
-淘宝HSF服务框源码解析
- 博客分类:
- 开发框架
最近在学习淘宝HSF框架,目前已经看完60%左右的源码,为了与大家共享信息,先分享我看完的这部分源码。废话少说,来吧!!!!
一、背景
随着网站访问量增加,仅仅靠增加机器已不能满足系统的要求,于是 ...
如何用Java编写一段代码引发内存泄露
- 博客分类:
- java基础
本文来自StackOverflow问答网站的一个热门讨论:如何用Java编写一段会发生内存泄露的代码。
Q:刚才我参加了面试,面试官问我如何写出会发生内存泄露的Java代码。这个问题我一点思路都没有,好囧。
A1:通过以下步骤可以很容易产生内存泄露(程序代码不能访问到某些对象,但是它们仍然保存在内存中)
1、应用程序创建一个长时间运行的线程(或者使用线程池,会更快地发生内存泄露)。 2、线程通过某个类加载器(可以自定义)加载一个类。 3、该类分配了大块内存(比如new byte[1000000]),在某个静态变量存储一个强引用,然后 ...
SharedHashMap是开源工具OpenHFT一个子项目,SharedHashMap提供ConcurrentHashMap更低延迟无JVM的GC暂停的实现。两个特点是:1.所有元素都保存在Java heap之外,这样就不受GC影响,没有GC暂停。2.所有元素都在一个共享内存区域,对所有进程都是可视的。SharedHashMap采取的是"no-copy"模型,能够提供off-heap堆内存之外内存空间,让应用程序获得更低延迟更快性能。它不是普通HashMap,而是一个特殊的,只有在你特殊需要时才使用,如果你想使用JVM堆之外内存可以使用它,如果想持久化Map中项目,也 ...
RPC(Remote Procedure Call Protocol)远程过程调用协议,它是一种通过网络从远程计算机程序上请求服务,而不需要了解底层网络技术的协议。Hadoop底层的交互都是通过 rpc进行的。例如:datanode和namenode 、tasktracker和jobtracker、secondary namenod ...
简介
提供了一个基于FIFO队列,可以用于构建锁或者其他相关同步装置的基础框架。该同步器(以下简称同步器)利用了一个int来表示状态,期望它能够成为实现大部分同步需求的基础。使用的方法是继承,子类通过继承同步器并需要实现它的方法来管理其状态,管理的方式就是通过类似acquire和release的方式来操纵状态。然而多线程环境中对状态的操纵必须确保原子性,因此子类对于状态的把握,需要使用这个同步器提供的以下三个方法对状态进行操作:
java.util.concurrent.locks.AbstractQueuedSynchronizer.getState()
java.util.con ...
Thread的run方法是不抛出任何检查型异常(checked exception)的,但是它自身却可能因为一个异常而被终止,导致这个线程的终结。最麻烦的是,在线程中抛出的异常即使使用try...catch也无法截获,因此可能导致一些问题出现,比如异常的时候无法回收一些系统资源,或者没有关闭当前的连接等等。 JDK5.0之前,不能为单独的Thread设置UncaughtExceptionHandler,也不能指定一个默认的UncaughtExceptionHandler。为了可以设置一个UncaughtExceptionHandler,需要去继承ThreadGroup ...
备注:
我一个哥们最近一直在看Hbase源码,前几天他针对Hbase写了源码分析体会,我本来也是要写的,但是看到他写的比较好,所以我决定引用他的4篇系列文章到我们博客中。
原文如下地址:
http://www.cnblogs.com/cenyuhai/p/3650943.html
看源码很久了,终于开始动手写博客了,为什么是先写负载均衡呢,因为一个室友入职新公司了,然后他们遇到这方面的问题,某些机器的硬盘使用明显比别的机器要多,每次用hadoop做完负载均衡,很快又变回来了。
首先我们先看HMaster当中怎么初始化Balancer的,把集群的状 ...
由于工作关系,近期需要对Hbase源码有一定了解,我想能够在本地调试hbase,于是乎下载源码开始干活,废话不多讲说干就干!
一、准备工作
本地环境:Windows7,Cygwin和Maven3。
IDE:IntelliJ IDEA12.1.4
HBase版本:0.94.16
二、SVN下载代码
SVN地址:https://svn.apache.org/repos/asf/hbase/tags/0.94.16
...
Hadoop添加节点datanode
- 博客分类:
- hadoop系列
1.部署hadoop
和普通的datanode一样。安装jdk,ssh
2.修改host
和普通的datanode一样。添加namenode的ip
3.修改namenode的配置文件conf/slaves
添加新增节点的ip或host
4.在新节点的机器上,启动服务
[root@slave-004 hadoop]# ./bin/hadoop-daemon.sh start datanode
[root@slave-004 hadoop]# ./bin/hadoop-daemon.sh start tasktracker
5.均衡block
[root@slav ...