Linux下查看cron不能执行的原因

有的时候,我们明明在/etc/cron.d下创建了cron文件,却没法执行,此时可以如下排查:

这个是分钟级别的cron执行日志,检查下你的脚本是否执行有错误,或者权限问题。

例如:

可以看到,是cron文件必须为root。

Hive自定义UDF/UDAF/UDTF中,如何获得List的ObjectInspector

在Hive中,在使用GenercU**F实现自定义UDF/UDAF/UDTF时,经常要制定输出类型,其中要获得一个ObjectInspector。

对于基础类型:

对于List等复合类型,要2步:

 

 

 

Java HttpClient 4.x的用法(Get篇)

HttpClient是一个经典的Java的HTTP客户端,当升级到4.x后,其API发生了很大变化,下面以带参数的HTTP Get为例,说说如何使用。

 

Java对象的深拷贝和克隆

在有的时候,我们希望对Java对象执行“深拷贝”。

在Java中,没有提供类似的C++的拷贝构造函数,但是提供了默认的”克隆”接口 Clonable。

如果我们要对一个只包含基础类型(int / long /String)的对象进行克隆,只需要实现Clonable并实现clone()函数即可。

如下:

如果要克隆一个引用了其他对象的Object,就要复杂一些了。
[crayon-5496cac4d9c2b6[......]

继续阅读

使用异步HTTP提升客户端性能(HttpAsyncClient)

大家都知道,应用层的网络模型有同步、异步之分。

同步,意为着线程阻塞,只有等本次请求全部都完成了,才能进行下一次请求。
异步,好处是不阻塞当前线程,可以“万箭齐发”的将所有请求塞入缓冲区,然后谁的请求先完成就处理谁。

大家也注意到了,同步模式阻塞的只是“线程”。实际上,在异步模式流行之前,人们也经常用多线程的方式处理并发请求。然而,随着数据规模的不断加大,线程开销所带来的CPU、内存剧增,因此这种方法的应用比较有限。

近几年来,随着异步处理方案在node.js、Nginx等系[......]

继续阅读