05 2014 档案

ThreadLocal分析
摘要:我们再介绍一个在多线程环境中经常使用的类ThreadLocal,它是java为解决多线程程序的并发问题提供了一种新的方向,使用这个ThreadLocal类可以帮助开发者很简单地编写出简洁的程序,并且是线程安全的。ThreadLocal很容易让人误解,认为是一个“本地线程”,其实ThreadLocal... 阅读全文

posted @ 2014-05-15 14:03 cloudkiller 阅读(944) 评论(0) 推荐(0)

BlockingQueue(阻塞队列)分析
摘要:如果读者还有一点印象,我们在实现线程池时,用了队列这种数据结构来存储接收到的任务,在多线程环境中阻塞队列是一种非常有用的队列,在介绍BlockingQueue之前,我们先解释一下Queue接口。Queue接口 boolean offer(E e); 将指定的元素插入此队列,当使用有容量限制的队列时,... 阅读全文

posted @ 2014-05-14 10:30 cloudkiller 阅读(3915) 评论(0) 推荐(0)

CopyOnWriteArrayList分析
摘要:ArrayList是比较常用的一个可变大小的数组集合,但是是不能同步的。如果多个线程同时访问一个ArrayList实例,其中至少一个线程从结构上修改了列表,那么它必须保持外部同步。一般通过加锁对象进行同步操作来完成,如果不存在这样的对象,则应该使用 Collections.synchronizedL... 阅读全文

posted @ 2014-05-14 10:14 cloudkiller 阅读(2481) 评论(0) 推荐(0)

java锁和同步
摘要:Java 语言设计中的一大创新就是:第一个把跨平台线程模型和锁模型应用到语言中去,Java 语言包括了跨线程的关键字synchronized和volatile,使用关键字和java类库就能够简单的实现线程间的同步。在简化与平台无关的并发程序开发时,它没有使并发程序的编写工作变得繁琐,反而使它变得更容... 阅读全文

posted @ 2014-05-13 21:02 cloudkiller 阅读(3026) 评论(0) 推荐(0)

线程池原理
摘要:在面向对象编程中,对象创建和销毁是很费时间的,因为创建一个对象要获取内存资源或者其它更多资源。在Java中更是如此,虚拟机将试图跟踪每一个对象,以便能够在对象销毁后进行垃圾回收。所以提高服务程序效率的一个手段就是尽可能减少创建和销毁对象的次数,特别是对一些很耗资源的对象创建和销毁。如何利用已有对象来... 阅读全文

posted @ 2014-05-13 17:47 cloudkiller 阅读(35699) 评论(1) 推荐(2)

Hadoop1的安装
摘要:目前hadoop1的稳定版本是1.2.1,我们以版本1.2.1为例详细的介绍hadoop1的安装,此过程包括OS安装与配置,JDK的安装,用户和组的配置,这些过程在hadoop2也有可能用到。Hadoop 版本:1.2.1OS 版本: Centos6.4Jdk 版本: jdk1.6.0_32环境配置... 阅读全文

posted @ 2014-05-13 11:03 cloudkiller 阅读(498) 评论(0) 推荐(0)

Hadoop2的HA安装(high availability):JournalNode+ zookeeper
摘要:前面介绍过使用NFS+zookeeper来解决namenode单点失败问题,因为NFS可能也会存在单点问题,所以hadoop提供了一种叫做JournalNode技术,这项技术可以在JournalNode节点间共享数据我们来介绍这一种技术:JournalNode+ zookeeperHadoop 版本... 阅读全文

posted @ 2014-05-13 10:13 cloudkiller 阅读(5799) 评论(3) 推荐(0)

Hadoop2的HA安装(high availability):nfs+zookeeper
摘要:前面介绍过hadoop的简单安装和FA安装,在这里将介绍几种hadoop2中HA(高可用性)安装,HA技术使hadoop不再存在单点namenode的故障。先来第一种:nfs+zookeeperHadoop 版本:2.2.0OS 版本: Centos6.4Jdk 版本: jdk1.6.0_32环境配... 阅读全文

posted @ 2014-05-13 09:56 cloudkiller 阅读(1300) 评论(0) 推荐(0)

Hadoop2的FN安装(federated namespace)
摘要:尝试了简单的安装hadoop2后,我们再来尝试一下hdfs的一项新功能:FN。这项技术可以解决namenode容量不足的问题。它采用多个namenode来共享datanode的方式,每个namenode属于不同的namespace。下面是我们的安装信息Hadoop 版本:2.2.0OS 版本: Ce... 阅读全文

posted @ 2014-05-13 09:31 cloudkiller 阅读(692) 评论(0) 推荐(0)

Hadoop2的简单安装
摘要:前面花了很多时间来介绍hadoop1的安装,随着hadoop的发展,hadoop2的应用也越来越普及,hadoop2解决了hadoop1中的很多问题,比如单点故障,namenode容量小的问题。我们先来安装最简单的版本Hadoop 版本:2.2.0OS 版本: Centos6.4Jdk 版本: jd... 阅读全文

posted @ 2014-05-12 23:56 cloudkiller 阅读(633) 评论(0) 推荐(0)

hadoop的ganglia数据监控
摘要:如果我们想知道当前运行的hadoop集群的状态,可以通过hadoop的客户端和web页面来获得,但是如果我们想知道当前集群的繁忙程度,如读写次数,这些工具就办不到了。幸运的是hadoop提供了一种ganglia的数据采集方式。在这篇文章里,将介绍一下hadoop与ganglia的配置方式。Hadoo... 阅读全文

posted @ 2014-05-12 23:25 cloudkiller 阅读(3250) 评论(0) 推荐(0)

hadoop的kerberos认证
摘要:言归正传,介绍过hadoop的simple认证和kerberos后,我们在这一章介绍hadoop的kerberos认证我们还使用hadoop集群的机器。OS 版本: Centos6.4Kerberos版本: krb5-1.10.3环境配置机器名Ip地址功能安装模块ganglia.localdomai... 阅读全文

posted @ 2014-05-12 22:52 cloudkiller 阅读(10341) 评论(0) 推荐(1)

kerboros安装
摘要:尽管前面尝试了hadoop的simple认证方式,这种方法不是特别安全,在介绍一下hadoop的kerberos方式之前,下面我们尝试一下kerberos。首先介绍一下Kerboros安装OS 版本: Centos6.4Kerberos版本: krb5-1.10.3环境配置机器名Ip地址功能安装模块... 阅读全文

posted @ 2014-05-12 22:12 cloudkiller 阅读(2963) 评论(1) 推荐(2)

hadoop的simple认证
摘要:目前Hadoop的稳定版本为1.2.1,我们的实验就在hadoop-1.2.1上进行Hadoop 版本:1.2.1OS 版本: Centos6.4环境配置机器名Ip地址功能用户Hadoop1192.168.124.135namenode, datanode,secondNameNodejobtrac... 阅读全文

posted @ 2014-05-12 21:42 cloudkiller 阅读(7594) 评论(0) 推荐(1)

导航