JDK多版本管理
在实际工作环境中经常碰到不同项目要用不同jdk版本问题,比如我的项目组现在用的是jdk8,而用spark打包的应用是用的jdk7,所以有必要记录一下版本配置和切换问题。
通过SpringXD将信息分片|文件夹存储到HDFS
kafka --topic=kafka_test --zkconnect=10.10.1.20:2181 --queueSize=64 |hdfs --inputType=application/json --idleTimeout=10000 --partitionPath=dateFormat('yyyy/MM/dd/HH/mm')
sparkApp提交到SpringXD出现错误可能情况及解决方法
编写spark代码:
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051package com.demo;import com.alibaba.fastjson.JSON;import com.alibaba.fastjson.JSONObject;import org.apache.spark.SparkConf;import org.apache.spark.api.java.JavaPairRDD;import org.apache.spark.api.java.JavaRDD;import org.apache.spark.api.java.JavaSparkContext;import org.apache.spark.api.java.function.FlatMapFunction;import org.apache.spark.api.java.function.Function2;import org.apache.spark.api ...
linux下根据端口号查询对应进程
适用于ip4
1lsof -Pnl +M -i4 | grep port
适用于ip6
1lsof -Pnl +M -i6 | grep port
golang打印错误栈信息
123456789101112131415161718192021222324package mainimport ( "runtime" "fmt")func main() { outer()}func outer() { inner()}func inner() { defer func() { if err := recover(); err != nil { trace := make([]byte, 1024) count := runtime.Stack(trace, true) fmt.Printf("Recover from panic: %s\n", err) fmt.Printf("Stack of %d bytes: %s\n", count, trace) } ...
golang容易忽略导致入坑的方面
main 函数main函数必须定义在main包里,不可导出。当main函数调用完毕,程序就会立即退出,不会等待运行中的goroutine运行完毕。
初始化函数func init() { … }
此函数无参,不需显示调用。
此函数根据依赖顺序执行初始化顺序,并且是顺序执行,如:
A 依赖 B, B 依赖 C,并且A,B,C 都有init函数,那么初始化顺序是C ,B , A
iota
iota 只能用在const定义的常量上
iota在一个const范围,不管中间的变量有没有用到iota,iota都是持续递增加1的,如
12345678910111213const ( aa = iota bb cc = 3 dd = iota)
dd 是3
如果重新定义const,那么值会是重新从0开始,如
1234567const ( ee = iota)
类型断言x.(T) x为变量, T为要判断的类型,其中有两种用法
a := x.(T) ,如果x是类型T的实现类型变量,那么可以得到转换后的值a,否则p ...
sink-hdfs
hdfs根据时间自动划分文件夹stream create --name dataset1 --definition "kafka --topic=kafka_test --zkconnect=10.10.1.20:2181 --queueSize=64 |hdfs --inputType=application/json --idleTimeout=10000 --partitionPath=dateFormat('yyyy/MM/dd/HH/mm')" --deploy其中,–partitionPath=dateFormat(‘yyyy/MM/dd/HH/mm’)用来指定划分 策略,这个是说用年(四位)/月(两位)/天(2位)/时(2位)/分(2位)这种格式来划分
golang命令
Go 提供了很多好用的命令,比如可以用go get 直接从网络上导入包,下面介绍一些常用的Go命令
go get基本用法go get 命令用来直接下载并安装网络上的包到GOPATH中。事实上它依赖于版本控制工具,比如常用的Git和Mercurial。比如我们要使用github.com/golang/text这个包,那么可以执行命令 go get github.com/golang/text,稍后片刻(依照网络情况时间长短不一),那么这个包源码就会放到 GOPATH/src对应的目录下,编译好的文件会放到GOPATH/pkg对应的目录下,如果有可执行性代码,那么会将编译好的可执行性文件放到GOPATH/bin目录下。
高级用法像刚才例子中提到的github.com/golang/text这个包下又有子包,也想get下来,该如何做呢?也许你想没办法,一个一个get吧,的确这是一个不错的方法,但是有一个更为高效和优雅的方式,那就是 ...,这个符号代表旗下子目录,那我们可以这样操作go get github.com/golang/text ...,就可以将text和其子包同时get下来了。
...
Android通话自动录音
应用介绍:通话自动录音,包括去电/来电接通录音。 启动服务之后,当电话接通之后开始录音, 录音文件保存在存储卡上My Record文件夹内。 同时可以用本软件进行查看录音文件,播放,删除等操作。 单击录音文件可以长按录音文件可以单个删除
版本:1.5百度应用地址百度应用同类搜索占位为第一位
应用截图
linux工具集锦
bcompareBeyond Compare是一套超级的文件及文件夹(目录)的比较工具,不仅可以快速比较出两个目录的不同,还可以比较每个文件的内容,而且可以任意显示比较结果。程序内建了文件浏览器,方便您对文件、文件夹、压缩包、FTP网站之间的差异比对以及资料同步。使用它可以管理源代码,保持文件夹的同步,比较程序输出,及验证光盘的复制。它还支持脚本、插件,尤其对中文支持很好。
GeanyEvincepdf阅读器
#Markdown 编辑器Farbox
tmux一款可以在原有的终端上进行分屏工作的工具。
mutate类似 mac上的alfred的软件,地址ppa安装方式
123sudo add-apt-repository ppa:mutate/ppasudo apt-get updatesudo apt-get install mutate
plank一款友好实用的dock工具。
virtualbox一款跨平台的可以安装任何操作系统的虚拟机软件。官方地址,同时最好安装扩展,可以有增强功能(拷贝,拖拽,更好的显示)。
xfce zhuti123sudo add-apt-repositor ...