`
文章列表
小记。   启动时表卡在PENDING_OPEN的原因可能有很多。不同的原因解决方法不同。这里仅针对下列场景。   HBase0.94.1   公司有个孩子在某个环境上给一张表加了"COMPRESSION=>SNAPPY", 抱歉的是这个环境上并没有SNAPPY.结果如何? HBase启动的时候其他表正常,但是这张表卡在PENDING_OPEN了。看日志,找不到SNAPPY库抛异常了。可是抛出了异常,HBase又会重试,就陷入死循环了.(这个是HBase的bug了,又可以给他们提个JIRA了吧。不过近期没有去关注他们的JIRA, 不知道更高版本的解决了没有 ...
原理相当简单。就是根据region记录的1/2进行切分。   过程: 指定要split的目的region, 获得region中的行数,算出中间值,根据regionName和这个中间值做split-point, 利用HBaseAdmin的split接口触发最终的split.   整个过程可能需要依赖几个东西: 1.region中有多少记录? 这个我不知道是否有更直接的方法获得。至少一个直观的方法就是可以利用endpoint对表做快速统计(也是我们目前的实现), 从目标region得到startRow和stopRow, 传入scan, 得到目标数据量。 2. 1/2点(中间点)对应的ro ...
PKI体系中关键的一环是消息体本身的加密传输。消息的加密可以采用非对称加密和对称加密。   1.概念: 对称密钥加密:又叫专用密钥加密,即发送和接收数据的双方必使用相同的密钥对明文进行加密和解密运算。简单的说,就是同一个密钥即可以加密也可以用来解密。常见的算法如DES,AES   非对称密钥加密:采用双钥密码系统的加密方法,在一个过程中使用两个密钥,一个用于加密,另一个用于解密,这种加密方法称为非对称加密,也称为公钥加密,因为其中一个密钥是公开的(另一个则需要保密)。常见算法如RSA   对称加密        速度快,安全性较低 非对称加密     速度较慢,安全性较高   ...
初学者,这两日对CA认证,数字签名等想要稍微了解下,从网上查了不少资料,发现很多文章中对公钥密码加密和鉴别过程(PKI体系)的某个步骤提供了具体的JAVA实现,对我的学习和了解帮助很大, 但还缺少一个完整的例子。下面就是自己动手构建完整例子的过程,如有错误或概念上的误解请指明。1.一般公钥密码加密和鉴别过程有以下步骤:1.获取证书2.计算欲发送的信息或文件message的消息摘要(比如用hash获取)3.发送消息摘要给时间戳服务器TSA, 获得服务器时间签名的时间戳摘要A和时间戳B4.将有时间戳的消息摘要用发送方的私钥加密(这里使用非对称密钥),生成数字签名   5.发送方随机产生一个对称密 ...
1.时间戳服务器TSA的概念: 作为一个权威的、可信赖的、公正的第三方数字证书颁发机构,其时间戳服务就是将经过时间戳服务器签名的一个可信赖的日期和时间与特定电子数据绑定在一起,为服务器端和客户端应用提供可信的 ...
总是听到BASE64,其实对它并不了解。此文记录一些BASE64的基本概念。   1. BASE64是加密? 不,虽然有"加密"后不是明文,但逆编码的规则明确,所以“防君子不防小人”,只是没办法一眼看出内容罢了。它是一种"编码& ...
一篇还不错的分析。网上可查到很多转载,原文系谁所作已不可考,现只能列出我看到的发布时间最早的链接: 转载自: http://dinghaoliang.blog.163.com/blog/static/12654071420098711273543/   一、GC概要: JVM堆相关知识     为什么先说JVM堆?     JVM的堆是Java对象的活动空间,程序中的类的对象从中分配空间,其存储着正在运行着的应用程序用到的所有对象。这些对象的建立方式就是那些new一类的操作,当对象无用后,是GC来负责这个无用
下面2段代码基本来自《Scala By Example》一书   正常的写法:(scala写的,但逻辑与实现和传统的JAVA排序一致)     def sort(xs: Array[Int]){ def swap(i:Int, j:Int){ val t = xs(i); xs(i) = xs(j); xs(j) = t } def sort1(l: Int, r: Int){ ...

JS全屏

JS全屏方法,此方法仅对IE有效: var wsh = new ActiveXObject( "WScript.Shell"); wsh.sendKeys("{F11}");   还有对外部框架的全屏: if(window.top.header.style.display!='none'){ window.top.hidenHeader(); } window.top.footFrame.left.showWindow(false);  
查问题过程中,仅对一些东西做下记载。   在总体事务结束前: 1.getHibernateTemplate().saveOrUpdate(o)不会提交更改 2.select操作会引发之前所有的insert,update等的提交 3.hibernate回调中的delete,update,insert会提交本身做的更改,不会提交之前堆积下来的insert,update等
很基础的东西,在运行的时候更换grid的内容(grid结构,store的记录等)     //延时5秒 (function(){ alert("pop out defer 5 seconds"); changeGrid(grid); }).defer(5000); var changeGrid = function(grid){ var index = new Ext.grid.RowNumberer(); var newColumnModel = new Ext.grid.ColumnModel([index, { ...
习惯于直接在eclipse里对本地的tomcat进行部署和调试。偶然发现远程调试也相当有意思。   Java的远程调试不仅仅限制于tomcat,基本上所有的中间件都可以。但不论是哪种中间件,远程调试都可以基于JPDA实现。(JPDA是啥?问问谷 ...
环境: Ubuntu-11.04-Server-64位     IBM WebSphere MQ 7.0.1 64位   在linux上安装mq,其实步骤很简单,不外乎解压,认证,一个一个安装rpm,具体过程可参见 http://qtlkw.iteye.com/blog/744052   在网上能找到的关于ubuntu上装mq的教程也几乎和上面这篇一模一样。大家都很顺利的一步一步的执行下来并且安装。 然而到了我这里,在执行开始的mqlicence.sh认证的时候就抛出了2个异常。即使强制改了sh的脚本绕过认证异常,MQRuntime等的安装过程中也有些小异常,最后安装出来的mq无法使 ...
问题很小,但是也很容易忽略。正如之前反反复复在websphere里设置应用的类加载顺序的时候,从来没去想这个调整真正改变了什么。   1. java的类加载器: JAVA类加载器分为3层——引导加载器、扩展加载器、应用程序加载器,类加载遵循"父委托模式". 引导加载器(Bootstrap):  加载<JAVA_HOME>/jre/lib 下的vm.jar,core.jar等核心 扩展加载器(Extensions):   加载<JAVA_HOME>/jre/lib/ext  或者通过java.ext.dirs 这个系统属性指定的路径下的代码 ...
程序上需要将数据库Clob字段转换为String,传到前台显示。因此对Pojo添加了一个String型中间字段用于Clob的转换。 问题就出在这里,我们调用了Hibernate.createClob(xxx)将一个String转为Clob用于对象的保存。 但事实上,Hibernate.createClob创建出来的Clob对象与直接从数据库查询出来的Clob对象类型是不同的。 数据库查询出来的Clob与数据库驱动实现具体相关。而createClob返回的是ClobImpl(hibernate的实现)。   翻看ClobImpl的源码,发现hibernate对一些常用的方法,如getSu ...
Global site tag (gtag.js) - Google Analytics