简单,可复制

点点滴滴,尽在文中

  :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::
上一页 1 2 3 4 5 6 7 ··· 43 下一页

2013年10月15日

摘要: 如何使用Zookeeper 作为一个分布式的服务框架,主要用来解决分布式集群中应用系统的一致性问题,它能提供基于类似于文件系统的目录节点树方式的数据存储,但是 Zookeeper 并不是用来专门存储数据的,它的作用主要是用来维护和监控你存储的数据的状态变化。通过监控这些数据状态的变化,从而可以达到基于数据的集群管理,后面将会详细介绍 Zookeeper 能够解决的一些典型问题,这里先介绍一下,Zookeeper 的操作接口和简单使用示例。常用接口列表客户端要连接 Zookeeper 服务器可以通过创建 org.apache.zookeeper. ZooKeeper 的一个实例对象,然后调用这个 阅读全文
posted @ 2013-10-15 15:45 ggjucheng 阅读(79810) 评论(6) 推荐(13) 编辑

摘要: 译自http://zookeeper.apache.org/doc/trunk/zookeeperProgrammers.html1简介本文是为想要创建使用ZooKeeper协调服务优势的分布式应用的开发者准备的。本文包含理论信息和实践信息。本指南的前四节对各种ZooKeeper概念进行较高层次的讨论。这些概念对于理解ZooKeeper是如何工作的,以及如何使用ZooKeeper来进行工作都是必要的。这几节没有代码,但却要求读者对分布式计算相关的问题较为熟悉。这四节是:lZooKeeper数据模型lZooKeeper会话lZooKeeper观察l一致性保证接下来的四节提供了实际编程的信息。这四 阅读全文
posted @ 2013-10-15 14:55 ggjucheng 阅读(12518) 评论(0) 推荐(0) 编辑

2013年10月14日

摘要: 译自http://zookeeper.apache.org/doc/trunk/zookeeperOver.htmlZooKeeper是一个用于分布式应用的开源分布式协调服务。它提供了简单的原语集合,分布式应用可在这些原语之上构建用于同步、配置维护、分组和命名的高层服务。ZooKeeper的设计使得编程容易,并且使用类似于广泛熟知的文件系统目录树结构的数据模型。它运行在Java环境中,但是有Java和C语言绑定。分布式协调服务是出了名的难得编写正确,很容易出现竞争条件和死锁之类的错误。ZooKeeper的动机是减轻为分布式应用开发协调服务的负担。1设计目标1.1简单ZooKeeper让分布式进 阅读全文
posted @ 2013-10-14 15:45 ggjucheng 阅读(5860) 评论(0) 推荐(0) 编辑

2013年10月5日

摘要: ZooKeeper是一个高可用的分布式数据管理与系统协调框架。基于对Paxos算法的实现,使该框架保证了分布式环境中数据的强一致性,也正是基于这样的特性,使得ZooKeeper解决很多分布式问题。网上对ZK的应用场景也有不少介绍,本文将结合作者身边的项目例子,系统地对ZK的应用场景进行一个分门归类的介绍。值得注意的是,ZK并非天生就是为这些应用场景设计的,都是后来众多开发者根据其框架的特性,利用其提供的一系列API接口(或者称为原语集),摸索出来的典型使用方法。因此,也非常欢迎读者分享你在ZK使用上的奇技淫巧。ZooKeeper典型应用场景一览数据发布与订阅(配置中心)发布与订阅模型,即所谓的 阅读全文
posted @ 2013-10-05 17:27 ggjucheng 阅读(6707) 评论(0) 推荐(3) 编辑

摘要: 本文以ZooKeeper3.4.3版本的官方指南为基础:http://zookeeper.apache.org/doc/r3.4.3/zookeeperAdmin.html,补充一些作者运维实践中的要点,围绕ZK的部署和运维两个方面讲一些管理员需要知道的东西。本文并非一个ZK搭建的快速入门,关于这方面,可以查看《ZooKeeper快速搭建》。1.部署本章节主要讲述如何部署ZooKeeper,包括以下三部分的内容:系统环境集群模式的配置单机模式的配置系统环境和集群模式配置这两节内容大体讲述了如何部署一个能够用于生产环境的ZK集群。如果仅仅是想在单机上将ZK运行起来,进行一些开发与测试,那么第三部 阅读全文
posted @ 2013-10-05 17:08 ggjucheng 阅读(33433) 评论(1) 推荐(1) 编辑

摘要: hadoop作业提交时可以指定相应的队列,例如:-Dmapred.job.queue.name=queue2通过对mapred-queue-acls.xml和mapred-site.xml配置可以对不同的队列实现不同用户的提交权限.先编辑mapred-site.xml,修改配置如下(增加四个队列): mapred.queue.names default,queue1,queue2,queue3,queue4 修改生效后通过jobtrack界面可以看到配置的队列信息。要对队列进行控制, 还需要编辑mapred-queue-acls.xml文件 mapred.queue.queue1.... 阅读全文
posted @ 2013-10-05 16:55 ggjucheng 阅读(4406) 评论(0) 推荐(0) 编辑

摘要: hadoop是一个分布式存储和分布式计算的框架。在日常使用hadoop时,我们会发现hadoop不能完全满足我们的需要,我们可能需要修改hadoop的源代码并重新编译、打包。下面将详细描述如何从svn上导入并对hadoop进行eclipse下编译。因项目使用的hadoop版本是0.20.2,所以我们基于hadoop-0.20.2来进行二次开发。(1)首先从svn上签出源代码,svn地址:http://svn.apache.org/repos/asf/hadoop/common/tags/release-0.20.2/ (2)在下载的过程中,准备开发和编译环境。windows下至少需要安装如下. 阅读全文
posted @ 2013-10-05 16:44 ggjucheng 阅读(5539) 评论(0) 推荐(0) 编辑

摘要: 1 Map side tuning参数1.1 MapTask运行内部原理当map task开始运算,并产生中间数据时,其产生的中间结果并非直接就简单的写入磁盘。这中间的过程比较复杂,并且利用到了内存buffer来进行已经产生的部分结果的缓存,并在内存buffer中进行一些预排序来优化整个map的性能。如上图所示,每一个map都会对应存在一个内存buffer(MapOutputBuffer,即上图的buffer in memory),map会将已经产生的部分结果先写入到该buffer中,这个buffer默认是100MB大小,但是这个大小是可以根据job提交时的参数设定来调整的,该参数即为:io. 阅读全文
posted @ 2013-10-05 16:25 ggjucheng 阅读(2341) 评论(0) 推荐(0) 编辑

摘要: 一个很典型的泛型(generic)代码。T是类型变量,可以是任何引用类型:public class Pair{ private T first=null; private T second=null; public Pair(T fir,T sec){ this.first=fir; this.second=sec; } public T getFirst(){ return this.first; } pu... 阅读全文
posted @ 2013-10-05 16:13 ggjucheng 阅读(10234) 评论(2) 推荐(1) 编辑

摘要: Ant真是太方便了,以前都没注意到它。功能很强大,能创建数据库,配置服务器,部署发布应用……只需要写好build.xml文件,剩下的就交给ant来“安装”你的WEB应用了。Appfuse的第一个ant命令是ant new,其任务是建立一个新命名的project,少不了会复制很多文件。build.xml中也有很多copy操作,为了搞清楚ant new到底干了些什么事,还是先把copy操作了解一下。看了会ant的DOCS,网上也找了些文章,发现copy这部分都是一带而过,讲得很浅,于是我就只有自己实验下,发现还有点收获。 ant版本为1.6.5。1. 拷贝单个文件到指定目录下。 将${basedi 阅读全文
posted @ 2013-10-05 15:56 ggjucheng 阅读(2840) 评论(0) 推荐(0) 编辑

上一页 1 2 3 4 5 6 7 ··· 43 下一页