2019年7月3日星期三

将文件夹中所有文件软链接到另一个文件夹

从A文件夹链接到B文件夹:
cd A
ls | sed "s:^:`pwd`/:" | xargs -i ln -s {} B

后来发现其实有一个最简单的方法:cd B & ln -s A/* .

2019年6月27日星期四

docker写日志导致压测过程中耗时严重问题

今天在用ab做服务的压测,发现用java直接启动,并发数为1、2、3差不多(30ms以内),并发数加到4、5之后性能才有一定下降(50~60ms)。用docker启动服务,并发请求数为1、2、3、4、5时,每次递增时延都有增加,从50ms一直升到了150ms。docker启动的服务性能远差于java直接启动的服务。
检查发现因为我的服务写日志比较多,docker会写/var/lib/docker/containers/container_id/xxx.json这个json格式的日志文件,加上原来java自己的日志文件,写了双份,同时docker会把日志转为json格式。这一过程特别消耗资源。
测试结果显示,关闭log后,并发数为5时,p95的性能直接降到了4ms,效果惊人。

补充:原来设置了两个日志,一个是同步的console日志,一个是异步的文件日志。docker会收集命令行的日志作为自己的日志存成json文件的log。试了下,关了console的日志,保留文件日志,就没有影响了。

2019年4月29日星期一

修改ubuntu镜像源

修改配置文件(/etc/apt/sources.list)将安装源设置为国内的镜像,例如清华Ubuntu 16.04的镜像

deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial-updates main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial-backports main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial-security main restricted universe multiverse

可选的ubuntu国内源:
阿里云:http://mirrors.aliyun.com/ubuntu/
清华:https://mirrors.tuna.tsinghua.edu.cn/ubuntu/

2019年4月16日星期二

java读取resources文件遇到的一个问题

spring中用applicationContext.getResources获取到Resource类实例之后,因为打包为jar之后resource文件在jar中,不在文件系统中,通过resource.getURI().getPath()为null,可以通过resource.getURL().getPath()获取到路径,比如:file:/Users/chenxiaoyu/project/target/project-1.0-SNAPSHOT.jar!/BOOT-INF/classes!/data/xx.txt

2019年4月9日星期二

非root用户修改hosts

参考https://unix.stackexchange.com/a/104511

vim ~/.hosts,增加hosts配置,比如:
hostname x.x.x.x

export HOSTALIASES=~/.hosts,done

2019年2月20日星期三

mac中docker资源分配的问题

在mac中安装了docker后使用-m参数设置很高的内存发现没有用,启动后的container内存依旧是限制在了最大2g。后来发现在mac的右上角docker图标中选择设置 -> advanced中,有docker资源的配置。