- 浏览: 252919 次
- 性别:
-
最新评论
文章列表
ARP(地址转换协议)
格式如下:
以太网的数据包是46-1500字节,加上头部14字节,一个以太网包最少要60字节,所以ARP请求/应答包需要再补充18字节以达到最小要求的60字节
ARP工作原理
1.目的主机知道需要访问主机的IP,但是不知道MAC,于是发送一个ARP请求
源MAC地址是自己,目的MAC是广播,源IP和目的IP都是已知的。
2.发送的ARP包是一个广播,网段内的所有主机都会收到。如果没有目的主机收到,源主机会继续发送ARP请求,以指数退避算法方式发送,即每隔几秒到每隔十几秒发送一次。
3.如果有目的主机收到,目的主机发送一个响应给源主机。同 ...
python语法总结
- 博客分类:
- 编程语言
Python3的关键字有:
and, as, assert, break, class, continue, def, del,
elif, else, except, False, finally, for, from, global,
if, import, in, is, lambda, None, nonlocal, not, or, pass,
raise, return, True, try, while, with, yield
列表和元组
#列表是可变的,元组是不可变的,列表用中括号表示,元组用圆括号表示
x = [1,2,3,4,5 ...
HBase-服务端处理请求的过程
- 博客分类:
- hadoop
Region的架构
HRegionServer:
配置:
hbase.client.retries.number (默认10) 客户端的重试次数
hbase.regionserver.msginterval (默认3*1000) ???
hbase.regionserver.checksum.verify(默认false) 是否启用checksum
hbase.server.thread.wakefrequency(默认10*1000) 线程检查频率
hbase.regionserver.numregionstoreport(默认10) ???
hbase ...
HBase-打印日志内容分析
- 博客分类:
- hadoop
WARN org.apache.hadoop.hbase.regionserver.HRegion: Failed getting lock in batch put, row=0001558252
这个是因为有一个Delete或Put操作,已经将rowkey锁住了,之后又有Delete或Put操作这个rowkey触发了一个CountDownLatch等待超时抛出的异常。
HBase-遇到的问题
- 博客分类:
- hadoop
rowlock release problem with thread interruptions in batchMutate
在region server的log中有大量的WARN日志:
WARN org.apache.hadoop.hbase.regionserver.HRegion: Failed getting lock in batch put,
row=0001558252
搜索关键字"Failed getting lock in batch put"整个hbase代码中只有一个地方出现了这个关键字
1.HRegionServer# ...
java-各种引用介绍
- 博客分类:
- java
java中有四种类型的引用,关于引用的类在java.lang.ref包下,其类图如下:
各种引用类型介绍
⑴强引用(StrongReference)
强引用是使用最普遍的引用。如果一个对象具有强引用,那垃圾回收器绝不会回收它。当内存空间 ...
HBase-HFile的读写操作
- 博客分类:
- hadoop
写入数据:
public class TestWrit {
private static Configuration cfg = new Configuration();
private static final int BLOCK_INDEX_SIZE = 60;
private static final int BLOOM_BLOCK_INDEX_SIZE = 10;
public TestWrit() {
cfg.setInt("hfile.index.block.max.size", BLOCK_INDEX_SIZE);
c ...
分布式系统领域经典论文翻译集
http://duanple.blog.163.com/blog/static/709717672011330101333271/
Facebook相关论文:
经典论文翻译导读之《Finding a needle in Haystack: Facebook’s photo storage》
http://www.importnew.com/3292.html
Hadoop相关论文:
hadoop HA----Quorum Journal 设计
https://issues.apache.org/jira/browse/HDFS-3077
http ...
zookeeper笔记
- 博客分类:
- 学习笔记
分布式编程中可能会有一部分失效,zookeeper就是为了解决这种问题的,其特点
1.简单(一个精简的文件系统)
2.富有表现力(可用于实现分布式队列,分布式锁,分布式选举)
3.具有高可用性
4.采用松散耦合交互方式
5.是一个资源库
zookeeper中没有文件和目录,而是统一使用"节点"的概念,成为znode
可以直接在windows下运行
实例
1.创建组
public class CreateGroup implements Watcher {
private static final int SESION_TIMEOUT = 5000;
private ...
Hadoop操作手册
- 博客分类:
- 学习笔记
第一章 简介 在hadoop之上的流行项目 HivPig Sqoop Flume Oozie Whirr HBase ZooKeeper HCatalog
第二章 HDFS 大型存储区域网络(Storage Area Network SAN) 网络附加存储(NetWork Attached Storage NAS) 这些技术给TB级的块设备或文件系统提供了一种集中式低延迟的解决方案,但是对于超大并发的读取 仍然有些无力,而HDFS就是为了解决这个问题的,它的目标: 1.可以存储几百万个大型文件,每个文件超过几十GB,文件系统的容量可达数十PB 2.利用横向扩展(s ...
第一章 大型网站架构演化
大型网站软件系统的特点:
1.高并发,大流量
2.高可用
3.海量数据
4.用户分布广泛,网络情况复杂
5.安全环境恶劣
6.需求快速变更,发布频繁
7.渐进式发展
大型网站架构演化发展历程
1.初始阶段
一个物理机器,应用程序,数据库和文件放在一个机器上
2.应用服务和数据服务分离
根据对CPU,磁盘内存的需求不同分为 应用服务器机器,文件服务器,数据库服务器
3.使用缓存改善网站性能
用于缓解数据库压力,缓存分两种:
a.直接缓存在本地机器上,这样速度快,但是容量有限
b.远程分布式缓存集群,理论上可以无限扩展
4.使用应用服务器集群改 ...
HBase-WAL相关线程处理逻辑
- 博客分类:
- hadoop
日志同步线程 HLog$LogSyncer
hbase.regionserver.optionallogflushinterval默认1秒
配置log syncer线程扫描间隔
更新、增加、删除操作会触发一次WAL,而WAL是同步写入到hadoop的,也就是先写WAL,再做更新(或者删除)
这些操作是在handle线程 ...
HBase-RegionServer架构
- 博客分类:
- hadoop
RegionServer的整体结构
一个region server包含了五部分功能:
1.和zookeeper相关的线程
MasterAddressTracker负责捕获master节点的状态
ClusterStatusTracker追踪hbase集群的状态
CatalogTracker跟踪root表meta表和region的状态
SplitlogWorker竞争获取znode上的splitlog,并切分HLog按照region分组,放到相应region
的recovered.edits目录下
2.region相关的线程
...
可能与不可能的边界 P/NP问题趣史
- 博客分类:
- 学习笔记
第一章 金券
假如我们想在数以万计的巧克力中找到一张含有金券的巧克力需要怎么做?(一共有5张金券)
有大量的时间,请大量的人,大量的金钱(买下非常非常多的巧克力),然后人工筛选
Mary的公司定制了一个计划 ...
HBase-HLog分析
- 博客分类:
- hadoop
HLog的全部实现在包:
org.apache.hadoop.hbase.regionserver.wal 中
相关的配置为
参数名
默认值
含义
hbase.regionserver.hlog.enabled
true
是否启用WAL
hbase.regionserver.hlog.writer.impl
SequenceFileLogWriter
HLog.Writer实现类
hbase.regionserver.hlog.reader.impl
SequenceFileLogReader
HLog.Reader实现类
hbase. ...