- 浏览: 114637 次
- 性别:
- 来自: 北京
-
最新评论
-
撒撒旦:
63aa74de803df2b0c92d2ec44504650 ...
亿拍天下, 工作笔记 -
撒撒旦:
63aa74de803df2b0c92d2ec44504650 ...
亿拍天下, 工作笔记 -
85757916:
前来学习!!
Mysql 中的autoReconnect=true参数 -
happy.future:
3Q 转载了你的文章 http://www.daniel-jo ...
Java的远程debug -
happy.future:
3Q 转载了你的文章 http://www.daniel-jo ...
Java的远程debug
文章列表
1. 即使在创建Mysql时url中加入了autoReconnect=true参数,一但这个连接两次访问数据库的时间超出了服务器端wait_timeout的时间限制,还是会CommunicationsException: The last packet successfully received from the server was xxx milliseconds ago.
2. 服务器端的参数 ...
eclipse中的java properties文件设置编码
如果要使 新建立工程、java文件直接使UTF-8则需要做以下工作:
1、windows->Preferences...打开"首选项"对话框,左侧导航树,导航到general->Workspace,右 侧Text file encoding,选择Other,改 ...
linux下安装apache-tomcat-6.0.26.tar.gz
1. 命令
unzip pdi-ce-4.2.1-stable.zip
gzip -d apache-tomcat-6.0.26.tar.gz
tar xvf apache-tomcat-6.0.26.tar
2.设置jdk
vi /etc/profile
在文件最下增加
# java home
JAVA_HOME=/root/jdk1.6.0_19
CLASSPATH=.:$JAVA_HOME/lib:$JAVA_HOME/jre/lib
PATH=$PAT ...
tomcat 配置文件
conf/server.xml
1.utf-8支持
<Connector port="8080" protocol="HTTP/1.1"
connectionTimeout="20000" redirectPort="8443" URIEncoding="UTF-8" />
tomcat 中JNDI创建连接池
1.
<Resource name="jdbc/mysql" auth="Co ...
1. Thread t的join()方法是指调用这个方法的Context线程,等待线程t结束,而不是t等待,加入到队列中。
2. main()方法由jvm的Main线程来调用,但是Main线程并不是一个守护(Deamon)线程,这个线程的信息可以通过在main中用Thread.currentThread()来获得.
3. 在main中执行其它线程的join()时应该注意,join()后,main线程会等待在那里,直接其等待的那个线程结束才会继续执行,这样如果还有其它线程与main正在等待的线程做交互,会让程序停在那里.
1. Thread t的join()方法是指调用这个方法的Context ...
1.Lock是一个monitor object.
2.Condition由Lock创建,lock.newCondition();
3.每个condition后面的队列是单独的。
4.condition也是一个Object对象,这里千万不要把Object.wait()与Condition.await()弄混了,还有Object.notify()和Condition.signal();
5.要想调用Object对象的wait(),notify(),notifyAll()方法,必须通过内部锁的代码方式,synchronized(obj)获得对象obj的锁,而要调用Condition.await(),s ...
1.应用中创建
ExecutorService executorService=Executors.newFixedThreadPool(nThreads);
nThreads为线程池中可以创建的最大数量的线程。
2.通过Spring的配置文件创建
<bean id="executorService" class="java.util.concurrent.Executors" factory-method="newFixedThreadPool">
<constructor-arg value="5&quo ...
1. 数据的分布式存储与计算应该是基于一个数据中心内的,即使用户参与的计算也应该是基于区域内的,例如南北两个数据中心。
2. 数据应该与数据的管理信息(Meta)内容应该是分开存放的,因为meta(数据的唯一标识,路径或者key,大小,更新时间,增量更新的长度与内容)数据的量非常小,对meta信息的南北同步可以在非常短时间内来完成,通过对meta的定期扫描可以对数据做增量的更新,然后对meta对应的数据南北的同步,只要指定的数据同步完成后,再更新meta的信息。meta数据的最终一致可以在比较短的时间内完成.
3. 数据的管理应该由两部分结成,一部分是数据的存储(例如hadoop的hdfs),其 ...
java中的远程debug调试
java -Xdebug -Xnoagent -Xrunjdwp:transport=dt_socket,address=8787,server=y,suspend=y
参数 含义
Xdebug 告诉jvm运行在debug模式下
Xnoagent 不清楚
Xrunjdwp transport 指定连接方式(包括socket传输和内存传输两种,其中内存传输只支持windows,而且内存传输不支持远程调试)
address 监听端口,以接收debug客户端发起的TCP连接。
server =y 表示在remote debugging会话中作为服务端
sus ...
1. HBase根目录以下以"/hbase"作为默认目录
由hbase-default.xml中的"hbase.rootdir"定义,在hadoop中保存的推荐目录为hdfs://namenode:9000/hbase
2. HBase root 目录 ,用户表目录例如KeySpace1表下的Standard1 column family,+ 表示未打开的目录,- 表示已经打开的目录,文件没有+-标识.
- /hbase -- 对应HRegionServer和HMaster 中的rootDir
- /-ROOT- -- -RO ...
1. dfs.block.size hadoop分区块的大小,应该大于HFile文件和HLog文件的大小.
3. HRegion.blockingMemStoreSize ,MemStore中阻塞的threshold,=HRegion.memstoreFlushSize * conf.getLong("hbase.hregion.memstore.block.multiplier", 2);
4. Store.compactionThreshold = conf.getInt(&quo ...
1. HBaseServer创建后有几个重要的角色.
1.1 Listener deamon线程,负责接收HMaster,HRegionServer,HBase Client的http请求.
1.2 Responder demon线程,负责将处理完的请求,发送回调用者.
1.3 Connection listener接收到的每个Socket请求都会创建一个Connection 实例.
1.4 Call 每一个客户端的发送的请求由Connection读取到有效数据后都会生成一个Call实例
1.5 LinkedBlockingQueue<Call> callQueu ...
HMaster -- ServerManager
1. 在HMaster的构造方法中创建.
2. 作用
a. serversToServerInfo -- ConcurrentHashMap<String, HServerInfo>(),保存RegionServer的信息,server names to server info,
b. deadServers -- Collections.synchronizedSet(new HashSet<String>()),Set of known d ...
HBase 以客户端角色来调用服务器端的RPC实现
HBase 以客户端角色来调用服务器端的RPC实现
1. HBase的客户端RPC实际上是在Hadoop客户端RPC做的修改,具体的类为:
HBase org.apache.hadoop.hbase.ipc.HBaseRPC
Hadoop org.apache.hadoop.ipc.RPC
2. 大致流程
2.1 客户端(这里可以是HBase的HTable调用HMaster或者HRegionServer,HRegionServer调用HMaster,DFSClient 调用NameNode)在创建或者初始化时,通过ja ...
看了http://blog.csdn.net/TREND_CDC_SPN/archive/2010/05/04/5557626.aspx 这篇文章后才较仔细的看了下HBase的RowLock这一块,非常感谢趋势科技中国研发中心的热心者.
HBase(0.89.20100726)中的RowLock使用及实现
HBase只实现了基于row-key的锁机制。
1.客户端代码
RowLock rl = table.lockRow ("test".getBytes());
Put p = new Put(rowkey, rl );
....处理
table.u ...