自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(61)
  • 资源 (1)
  • 收藏
  • 关注

原创 关于实时消息推送系统的架构之浅见

最近,有一个朋友问了一个问题:如何实现实时消息推送架构,当时只是说了比较笼统的概念,并没有进行深入的探讨。再加上时间比较也就没有进行一个归总。刚好今天进行一个梳理。具体内容如下 那么整体的设计如上。接下来我们针对每一块进行剖析1、协议的选择   关于协议的选择这块,现在比较常用的方式:XMPP、MQTT、自定义协议等,那么关于每种协议的优缺点,这里面我们不进行细致描述。只要知道最...

2016-04-26 10:37:59 833

原创 jstorm源码之TransactionalState

一、作用 主要是通过结合zookeeper,在zookeeper指定的目录下创建不同的自己 代表不同的transaction state,并赋予不同的内容;通过zookeeper完成对partitions的transaction的管理二、源码分析package storm.trident.topology.state;import backtype.storm.Confi...

2016-03-21 19:31:57 150

原创 jstorm源码之RotatingTransactionalState

一、作用 构建一个Rotationg transaction的state类 用于完成partition的state管理及操作二、源码分析package storm.trident.topology.state;import backtype.storm.utils.Utils;import org.apache.zookeeper.KeeperException;...

2016-03-21 19:29:30 146

原创 jstorm源码之PartitionedTridentSpoutExecutor

一、作用 Partition Spout对应的executor二、源码分析package storm.trident.spout;import backtype.storm.task.TopologyContext;import backtype.storm.tuple.Fields;import java.util.ArrayList;import java...

2016-03-21 19:28:34 125

原创 jstorm源码之RotatingMap

一、作用 基于LinkedList + HashMap实现一个循环Map二、源码// 通过结合LinkedList 和 HashMap 构成一个循环Map数据结构 public class RotatingMap { // this default ensures things expire at most 50% past the expiration tim...

2016-03-21 19:27:23 116

原创 jstorm源码之 RichSpoutBatchExecutor

一、作用RichSpoutBatchExecutor是IRichSpout及其子类Spout的executor执行器;主要包括: 1、RichSpoutEmitter :用户tuple的emit 2、RichSpoutCoordinator:用于spout的调度 3、CaptureCollector: 用于获取spout的collect的f...

2016-03-21 19:24:44 151

原创 jstorm源码之TridentTopology

在jstorm中对应TridentTopology的源码如下,TridentTopology的主要作用是用来创建trident的一、一般使用的方式如下// 1、创建一个topology对象TridentTopology topology = new TridentTopology();// 2、设置相关参数: each分片、group by分组、聚合aggregate// 返...

2016-03-16 18:12:12 263

原创 jstorm操作命令

启动ZOOPKEEPERzkServer.sh start启动NIMBUSjstorm nimbus &启动SUPERVISORjstorm supervisor &启动UIjstorm ui &部署TOPOLOGYjstorm jar /opt/hadoop/loganalyst/storm-dependend/data/teststorm-1.0.jar t...

2016-03-15 18:04:06 704

原创 JStorm之Supervisor简介

一、简介Supervisor是JStorm中的工作节点,类似于MR的TT,subscribe zookeeper的任务调度结果数据,根据任务调度情况启动/停止工作进程Worker。同时Supervisor需要定期向zookeeper写入活跃端口信息以便Nimbus监控。Supervisor不执行具体处理工作,所有的计算任务都交Worker完成。从整个架构上看,Supervisor处在整个JSto...

2016-03-15 18:02:30 201

原创 JStorm介绍

一、简介Storm是开源的分布式容错实时计算系统,目前被托管在GitHub上,遵循 Eclipse Public License 1.0。最初由BackType开发,现在已被Twitter收入麾下。Storm最新版本是Storm 0.9,核心采用Clojure实现。Storm为分布式实时计算提供了一组通用原语,可被用于“流处理”之中,实时处理消息;Storm也可被用于“连续计算”(continu...

2016-03-15 17:56:59 148

原创 mycat的使用---sqlserver和mysql

数据库中间件mycat的使用一、环境 windows server 2008r2(8核 16G内存) 、 sqlserver 、 mysql 、 mycat1.5.2二、测试前端代码(只提供C#,为了解决公司原有老项目  java的到mycat的github上面自行查找)   数据库操作如下using MySql.Data.MySqlClient;using System;using Syste...

2016-01-11 14:33:48 2040 1

原创 分布式------NWR

NWR是一种在分布式存储系统中用于控制一致性级别的一种策略。在Amazon的Dynamo云存储系统中,就应用NWR来控制一致性。让我们先来看看这三个字母的含义:N:同一份数据的Replica的份数W:是更新一个数据对象的时候需要确保成功更新的份数R: 读取一个数据需要读取的Replica的份数NWR值的不同组合会产生不同的一致性效果,当W+R>N的时候,整个系统对于客户...

2016-01-07 10:20:13 492

原创 lua

1、网络允许的情况下,可以利用自身curl下载器下载curl -R -O http://www.lua.org/ftp/lua-5.3.2.tar.gz或者直接到http://www.lua.org/ftp/下载2、tar zxf lua-5.3.2.tar.gz3、cd lua-5.3.24、make linux test5、make install(*******)...

2015-12-25 10:54:55 72

原创 nginx tcp的使用

安装说明系统环境:CentOS-6.7软件:nginx-1.9.9.tar.gz安装方式:源码编译安装 安装位置:/usr/local/nginx 下载地址:http://nginx.org/en/download.html安装依赖yum install gcc-c++yum -y install zlib zlib-devel openssl openssl--d...

2015-12-24 12:39:51 245

原创 jstorm安装

关于jstorm单机安装可以参看如下http://hexiaoqiao.sinaapp.com/2014/06/jstorm%E7%8E%AF%E5%A2%83%E6%90%AD%E5%BB%BA/https://github.com/alibaba/jstorm/wiki/%E5%A6%82%E4%BD%95%E5%AE%89%E8%A3%85这些是本人在安装过程具体的安装过程以及问...

2015-12-03 19:43:07 189

原创 HBase系列四--计数器

一、计数器 在hbase中,由于针对同一行的记录进行操作时,已经提供行级锁;这样的功能会带来大量资源竞争的后果;那么在hbase里面提供一个将列当做计数器的功能 1、计数器 计数器默认不用进行初始化默认值即为0;在计数器进行具体操作时可以添加对应的值;若是用户直接操作则需要使用 Bytes.toLong()--->解码 Bytes.toB...

2015-12-02 10:58:39 380

原创 HBase系列三

关于spring-hbase中scan + filter的操作;通过HbaseTemplate + HTableInterface完成如下操作一、测试源码@Componentpublic class HbaseUtil implements InitializingBean { private String tableName = "users"; // table byte...

2015-12-01 16:51:18 111

原创 HBase系列一

关于hbase 一、客户端类 HTable 和 HTablePool: (1)、HTable用于一个线程创建一个HTable;最好只创建唯一一个HTable对象;因为每次创建HTable实例都需要付出代价;检查meta.表对应的表是否存在,是否可用以及其他 的一些操作;对性能的损耗不可忽视的;同时HBase所有的修改操作都是保证...

2015-11-30 16:17:32 93

原创 spring hadoop系列(六)---HbaseSystemException

一、源码/** * HBase Data Access exception. * @author Costin Leau */@SuppressWarnings("serial")public class HbaseSystemException extends UncategorizedDataAccessException { public HbaseSyste...

2015-11-30 09:13:42 308

原创 spring hadoop系列(五)---spring hadoop hbase之HbaseSynchronizationManager

一、源码如下/** * Synchronization manager handling the tracking of Hbase resources (specifically tables). Used either manually or through {@link HbaseInterceptor} to bind a table to the thread. * Each...

2015-11-27 18:16:39 125

原创 spring hadoop系列(四) --- spring hadoop hbase

一、源码分析/** * * hbase 采用aop的拦截器,将hbase table绑定对应的线程在被调用之前; * 一旦对应的调用方法获取结果之后将关闭并移除 * 如果有一个已经绑定的table(来自前面的call或者transaction), * 那么 interceptor 只是简单的操作 * 同时interceptor经常与HbaseSynchronizati...

2015-11-27 17:27:39 92

原创 spring hadoop 系列(三)--spring hadoop hbase HbaseConfigurationFactoryBean

一、源码分析/** * 设定Hbase指定Configuration;在默认情况是删除当前配置管理的连接信息 * 有参数deleteConnection 控制 */public class HbaseConfigurationFactoryBean implements InitializingBean, DisposableBean, FactoryBean { ...

2015-11-27 16:28:26 219

原创 spring hadoop 系列(二)

一、源码分析/** * * HbaseAccessor作为HbaseTemplate以及HbaseIntercepter的基类;同时也定义 * 公共的HBase Configuration 以及 HTableInterfaceFactory * */public abstract class HbaseAccessor implements Initializin...

2015-11-27 15:26:46 98

原创 spring-hadoop系列源码(一)

源码如下:/** * HTableInterface工具类 * 用于create table 和 release table * @since 0.21.0 */@[email protected] interface HTableInterfaceFactory { /**...

2015-11-27 14:39:45 232

原创 spring hadoop之batch处理(二)

一、测试public class MrBatchApp { // Log private static final Log log = LogFactory.getLog(MrBatchApp.class); // public static void main(String[] args) throws JobParametersInval...

2015-11-24 18:10:45 283

原创 spring hadoop之mapreduce batch

一、测试// 定义hadoop configurationConfiguration conf = new Configuration();// 指定hdfs上获取分析文件目录和输出分析结果目录// 格式:hdfs://10.33.96.241:8020/user/tweets/input// hdfs://10.33.96.241:8020/user/tweets...

2015-11-24 15:51:39 179

原创 spring hadoop

一、源码// 如下代码实现 读取指定hdfs路径下tmp文件夹下面所有的文件(包括子文件)@SpringBootApplicationpublic class DemoApplication implements CommandLineRunner { // 构建FsShell对象 @Autowired private FsShell shell; ...

2015-11-24 10:19:08 90

原创 centos6.7 64位 伪分布 安装 cdh5.4.8 + jdk 8

一、安装JAVA# 创建JAVA的目录mkdir -p /usr/java cd /usr/java#将下载的rpm包移到此目录#执行安装rpm -ivh jdk-8u65-linux-x64.rpm (对应你的rpm)#增加环境变量vim /etc/profile修改profile 最后面加入export JAVA_HOME=/usr/java/jdk1...

2015-11-09 00:37:17 113

原创 了解 Nginx 的 7 个原因(转)

Nginx (“engine x”)是一个高性能的HTTP和反向代理服务器,也是一款轻量级的Web 服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器1 负载均衡实现可扩展的浏量管理通过Nginx实现负载均衡将给你所需要的控制权,用来管理并扩展您的Web和移动应用。它提供了一个完整的基于软件应用的分发平台的解决方案,只消耗一小部分的硬件来平衡HTTP和TCP应用的负载...

2015-11-08 21:13:46 105

原创 spring hadoop系列二(MapReduce and Distributed cache)

关于MapReduce and Distributed Cache一、创建Hadoop Job在前面的系列一里面我们已经知道如何配置hadoop了,在完成配置工作之后,我们如何提交job,并运行这些job将是接下来我们讲述的使用SHDP创建job是相当简单的<hdp:job id="mr-job" 指定jod id ...

2015-11-06 15:22:50 102

原创 spring hadoop系列一

 一、要求1、对于spring hadoop2.1构建在jdk7上面(最低要求:jdk6及其以上),hadoop 2.6 默认构建在spring framework 4.1上。2、spring for Apache hadoop2.1支持如下hadoop版本  Apache Hadoop 2.4.1  Apache Hadoop 2.5.2  Apache Hadoop 2...

2015-11-05 23:18:37 205

原创 数据库深度解析 | 从NoSQL历史看未来(转)

http://mp.weixin.qq.com/s?__biz=MzAwMDU1MTE1OQ==&mid=209738332&idx=1&sn=de7b83e00b80a487a02072d5bb521838&scene=20#rd

2015-11-04 23:40:00 94

原创 Liquibase

一、LiquibaseLiquibase是一个用于跟踪、管理和应用数据库变化的开源的数据库重构工具。它将所有数据库的变化(包括结构和数据)都保存在XML文件中,便于版本控制。Liquibase具备如下特性:    * 不依赖于特定的数据库,目前支持包括Oracle/Sql Server/DB2/MySql/Sybase/PostgreSQL/Caché等12种         数据库,这样在数据...

2015-10-25 16:57:24 278

原创 Hadoop+Hbase+Zookeeper(独立)环境搭建 ---(转)

准备的机器信息:192.168.247.128  dengnn(master)   192.168.247.129 dengdn1 (slave1)   192.168.247.130 dengdn2 (slave2)集群搭建 参考资料 cloudera hadoop 搭建http://heylinux.com/archives/1980.htmlhttp://www.ibm.com/deve...

2015-10-23 08:34:48 125

原创 hadoop2.6.1单机安装

centos6.6安装hadoop2.6.1操作步骤 大致如下1.安装JDK1.1下载上传jdk-7u79-linux-i586.rpm1.2安装rpm -ivh jdk-7u79-linux-i586.rpm1.3将java添加到环境变量中vim /etc/profile#在文件最后添加export JAVA_HOME=/usr/java/jdk1.7...

2015-10-22 17:12:31 111

原创 mysql linux安装

Linux安装mysql——源码安装1.假设已经有mysql-5.5.10.tar.gz以及cmake-2.8.4.tar.gz两个源文件(1)先安装cmake(mysql5.5以后是通过cmake来编译的)[root@ rhel5 local]#tar -zxv -f cmake-2.8.4.tar.gz[root@ rhel5 local]#cd cmake-2.8.4...

2015-09-23 11:31:17 76

原创 jdk1.7 + ant1.9 + tomcat7 + nutch2.3 + solr5.3 + mysql5.6安装

一、安装jdk 地址:https://www.oracle.com/downloads/index.html 下载:jdk-7u79-linux-x64.gz(根据实际情况下载) 解压:tar -zvxf jdk-7u79-linux-x64.gz 创建目录: mkdir java 将解压文件夹移动指定目录下: mv jdk1.7.0_79 /java 配置环...

2015-09-22 18:07:39 136

原创 使用消息系统避免分布式事务

首先举个栗子:比如通过支付宝向余额宝转账1000元,这样一种生活中很平凡的事情,却可以引出很多问题:如果系统宕机挂掉,交易没有完成?那么数据就出现了不一致。等等类似的事情,在各类系统中都能找到类似情形。那么也可以换句专业的说法:当一个表update之后,如何保证另外一个与之关联的表也能完成update。1、本地事务: 支付宝账户表:A id uid amount ...

2015-09-22 09:24:16 152

原创 浅谈大数据平台演变(转)

一说到开源大数据处理平台,就不得不说此领域的开山鼻祖Hadoop,它是GFS和MapReduce的开源实现。虽然在此之前有很多类似的分布式存储和计算平台,但真正能实现工业级应用、降低使用门槛、带动业界大规模部署的就是Hadoop。得益于MapReduce框架的易用性和容错性,以及同时包含存储系统和计算系统,使得Hadoop成为大数据处理平台的基石之一。Hadoop能够满足大部分的离线存储和离线...

2015-09-21 22:51:53 124

原创 Hadoop分布式文件系统HDFS

Hadoop分布式文件系统HDFS 是一种被设计运行在任何通用硬件上的分布式文件系统。是一个高度容错性的系统,适合部署在廉价的机器上,能够提供高吞吐量的数据访问,非常适合大规模数据集上的应用。1、分布式文件系统    N台计算机联网协同工作,就像单台系统一样解决问题,也就是说它们可以横跨多台计算机的存储系统,存储在分布式系统上的数据自动分布在不同的节点上。分布式文件系统在大数据时代...

2015-09-16 07:03:56 108

ext js 源码及开发教程

上传有限, 先上传一部分! ext js 源码及开发教程 ext js 源码及开发教程

2012-09-22

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除