- 博客(245)
- 收藏
- 关注
原创 vim 精确匹配查找单词
1、从头搜索:/hello2、从尾搜索:?hello3、精确搜搜:"<“表示匹配单词开头,”>“表示匹配单词末尾,匹配完整单词”?<hello>“或者”/<hello>"如输入"/hel"、"/<hel"、"/llo>",可能搜索到hello...
2018-11-06 20:36:18
13466
1
原创 etcd键值操作
etcd 删除键值1、查询所有键值curl http://10.0.2.255:9001/v2/keys/services/?recursive=true2、删除键值curl http://10.0.22.39:9001/v2/keys/key?recursive=true -XDELETE如查询到的key是:/services/clock/0/10611/255:10611cur...
2018-10-25 20:42:14
4078
原创 揭开golang中defer的坑
揭开golang中defer的坑defer执行顺序,后进先出,是个栈函数在执行最后的RET返回指令前,会先检查是否存在defer语句,如果有从栈中依次取出匿名返回值在return执行时被声明然后给他赋值,所以并不会返回在defer中修改后的值,有名返回值在函数声明时即被声明,在defer中修改即是修改返回值return内部有两个步骤,一是给返回值赋值(有名返回值直接赋值,匿名返回值则先...
2018-09-12 21:25:43
1519
原创 golang通过代理访问url
直接上实例package mainimport ( "fmt" "io/ioutil" "net/http" "net/url" "net" "time")func main() { proxyAddr := &quo
2018-09-10 21:15:17
10040
原创 protoc-gen-go生成的pb协议tag去掉omitempty
有很多种方法,公司级的最好还是修改源码https://github.com/golang/protobuf/blob/master/protoc-gen-go/generator/generator.go#L2500tag := fmt.Sprintf(“protobuf:%s json:%q”, g.goTag(message, field, wiretype), jsonName+...
2018-08-10 11:47:27
6213
原创 mongodb按照字段模糊查询方法
数据库直接查询db.student.find({name:{$regex:'jack', $options:'i'}})db.student.find({name:{$regex:/jack.*/i}})db.student.find({name:/jack/i})开源组件使用github.com/globalsign/mgo使用query := bson.M{Name: b...
2018-07-30 15:41:57
18810
原创 分布式调用链追踪zipkin
分布式调用链追踪zipkinzipkin是Twitter的一个开源项目,基于论文Google Dapper(https://ai.google/research/pubs/pub36356)实现,可以用来收集各个服务器上请求链路的跟踪数据,可以通过API接口来查询数据来实现对服务系统的监控,此外zipkin还提供了UI方便直观查询跟踪信息和服务间依赖关系。一、zipkin架构...
2018-07-27 16:26:15
2481
原创 mysql命令导出查询记录到文件
mysql命令导出查询记录到文件命令行参数很重要,先介绍几个-e, –execute=name //执行mysql的sql语句-N, –skip-column-names //不显示列信息-p, –password[=name] //输入密码-P, –port=# //设置端口-u, –user=name //用户名由于大多都是在Linu...
2018-07-18 16:49:19
2083
原创 centos安装zipkin
安装JDK1.8.0以上版本[simon@localhost ~]$ mkdir -p data/release/zipkin &amp;&amp; cd "$_"[simon@localhost zipkin]$ wget -O zipkin.jar 'https://search.maven.org/remote_content?g=io.zipkin.java&amp;a=zipkin-...
2018-07-17 14:42:37
1350
原创 centos安装logstash
1、下载安装公共签名keyrpm --import https://artifacts.elastic.co/GPG-KEY-elasticsearch2、在/etc/yum.repos.d/下新建一个repo文件,如logstash.repo[logstash-6.x]name=Elastic repository for 6.x packagesbaseurl=https://...
2018-07-11 09:48:33
959
转载 centos下安装JDK的4种方法
以下转载于:https://www.linuxidc.com/Linux/2016-09/134941.htm由于各Linux开发厂商的不同,因此不同开发厂商的Linux版本操作细节也不一样,今天就来说一下CentOS下JDK的安装:方法一:手动解压JDK的压缩包,然后设置环境变量1.在/usr/目录下创建java目录[root@localhost ~]# mkdir/usr/ja...
2018-07-11 09:41:42
381
原创 普通用户使用docker的方法
添加用户组,将用户添加到组,重启docker即可[root@localhost ~]# groupadd docker[root@localhost ~]# groupsroot[root@localhost ~]# usermod -a -G docker simon [root@localhost ~]# grep docker /etc/groupdockerroot:x:99...
2018-07-09 15:47:28
4928
原创 docker-compose部署nsq集群
两台机器上分别创建docker-compose.yml 然后执行docker-compose up -dversion: '2'services: nsqlookupd: image: nsqio/nsq command: /nsqlookupd ports: ...
2018-07-06 17:26:14
1097
转载 分布式调用跟踪与监控实战
https://yq.aliyun.com/articles/75338?spm=5176.10695662.1996646101.searchclickresult.f81012eaUvEDsX https://blog.youkuaiyun.com/wangyangzhizhou/article/details/53844668 https://www.v2ex.com/t/449309 https...
2018-07-06 15:55:49
585
原创 docker-compose、docker-machine安装
[root@localhost ~]# curl -L https://github.com/docker/compose/releases/download/1.8.1/docker-compose-`uname -s`-`uname -m` &amp;gt; /usr/local/bin/docker-compose [root@localhost bin]# /usr/local/bin/dock...
2018-07-04 20:30:42
520
原创 go-channel空间不够怎么办
一句话总结:channel空间不够存储到其他地方,等有空间再存储尽量package mainimport "fmt"func main() { memoryMsgChan := make(chan int, 4) s := []int{1,2,3,4,5,6,7} for _, msg := range s { select { ...
2018-07-04 10:55:05
1682
原创 docker部署nsq
[root@localhost ~]# docker pull nsqio/nsq[root@localhost ~]# docker run -d --name lookupd -p 4160:4160 -p 4161:4161 nsqio/nsq /nsqlookupd2fa8d6d17df28454d57dc52a3c7f207dc6feb1c4c873b473432a10b8ef241...
2018-07-03 20:35:38
1683
原创 golang的proto文件过大导致变成java类文件太大导致编译失败的解决办法
java是单个类文件不能超过65k,如果proto协议文件过大则会导致失败,解决办法是在头部加上option java_multiple_files = true;
2018-07-02 19:45:23
3196
原创 docker--在centos镜像上添加其他镜像
一句话总结:镜像分层,可一层层叠加,关键是Dockerfile的编写Dockerfile:#新生成的镜像是基于sshd:dockerfile镜像From docker.io/centosMAINTAINER simon &quot;xxxx@qq.com&quot;RUN cd /usr/local/src //或者使用:WORKDIR /usr/local/srcRUN yum instal...
2018-06-29 09:38:36
1174
原创 golang单元测试和压力测试
1、运行文件夹下所有单元测试 go test 2、运行单个文件 go test -v add_test.go add.go 3、运行单个方法 go test -v -test.run Test_Add1、运行文件夹下所有压力测试 go test -test.bench=”.*” 2、运行单个文件 go test add_bench_test.go add.go -test.b...
2018-06-28 20:32:44
2109
1
转载 从一份配置清单详解Nginx服务器配置
转自于:https://juejin.im/post/5b3174a8e51d45588576f907全局块 该部分配置主要影响Nginx全局,通常包括下面几个部分:配置运行Nginx服务器用户(组) worker process数 Nginx进程PID存放路径 错误日志的存放路径 配置文件的引入events块 该部分配置主要影响Nginx服务器与用户的网络连接,主要...
2018-06-28 19:33:11
467
原创 Linux应用程序添加到service
[simon@www ~]vimmain.go[simon@www ]vimmain.go[simon@www ] vim main.go [simon@www ~] go build main.go [simon@www ~]mvmaintestlinuxservice[simon@www ]mvmaintestlinuxservice[simon@www&...
2018-06-25 22:44:54
1624
原创 docker部署go应用
1、Dockfile用来生成自己的镜像2、编辑文件3个文件:Dockerfile docker.sh main Dockerfile:From docker.io/ubuntu:15.10MAINTAINER Simon "XXX@qq.com"RUN mkdir -p /home/test/RUN cd /home/test/ADD docker.sh /home/...
2018-06-19 01:13:46
2645
原创 CentOS平台下的Docker安装与启动
174 yum search docker 175 yum install -y docker 176 systemctl start docker 177 docker version 178 docker info 179 sudo docker run hello-world
2018-06-17 01:45:10
229
转载 centos安装mysql
转载于:https://blog.youkuaiyun.com/wz1226864411/article/details/76146180一般在linux下安装mysql 的步骤如下:安装前看是否安装过mysql,yum list installed mysql*如果有就用yum remove卸载mysql查看yum库下是否有mysql-serveryum list | grep my...
2018-06-17 01:24:29
256
原创 centos安装Nginx
8 yum install net-tools 9 yum install wget 10 yum -y install make zlib zlib-devel gcc-c++ libtool openssl openssl-devel 12 mkdir src 14 cd src/ 15 wget http://downloads...
2018-06-16 19:32:47
263
原创 supervisor
1、安装及启动sudo apt-get install supervisor/etc/init.d/supervisor start2、配置、reload配置sudo vim /etc/supervisor/supervisord.conf sudo supervisorctl reload/etc/init.d/supervisor restartsimon@ubuntu...
2018-06-07 14:31:20
313
原创 git创建、删除本地及远程分支
1、创建本地分支 git checkout -b sit 2、创建远程分支 git push origin sit 3、删除远程分支 git push origin –delete sit 4、删除本地分支 先切换到其他分支 git checkout dev 删除 git branch -d sit2 或者 git branch -D sit2...
2018-05-24 13:05:07
596
原创 git提交文件以及撤销
zhaojunyandeMBP:testgit zhaojunyan$ git clone https://github.com/JunyanZhao/etcdStudy.gitCloning into 'etcdStudy'...warning: You appear to have cloned an empty repository.zhaojunyandeMBP:testgit zh...
2018-05-13 23:08:43
368
原创 Mac、Ubuntu终端开启多标签及切换
1、MAC打开标签 command + T 拆分面板 command + D 关闭拆分 command + shift + D 切换 command + shift + [/]2、Ubuntu打开终端 ctrl + alt + T 打开标签 Ctrl + shift + T 切换标签 alt + 1、2、3;Ctrl + pagedown、pagecup 关闭 ctrl...
2018-05-12 21:34:51
3364
原创 MySQL中tinyint(4)、smallint、bigint(20)等变量
一句话总结:所占位数不同,括号里面代表最大显示的长度 类型 占用字节 tinyint 1 smallint 2 mediumint 3 int 4 bigint 8后边括号里面的数字代表什么意思呢tinyint(M), M默认为4; SMALLINT(M), M默认为6; MEDIUMINT(M), ...
2018-05-05 11:10:23
3797
原创 Ubuntu升级go版本
sudo apt install golang-gosudo apt-get install golang-1.9sudo apt-get remove golang-1.9sudo apt autoremove 先卸载旧版本curl -O https://storage.googleapis.com/golang/go1.9.linux-amd64.tar.gz $ tar -C...
2018-05-04 13:24:23
10477
原创 mac下git命令自动补全
获取脚本curl https://raw.githubusercontent.com/git/git/master/contrib/completion/git-completion.bash -o ~/.git-completion.bash在~/.bash_profile中加上if [ -f ~/.git-completion.bash ]; then . ~/.git-com...
2018-04-22 21:56:07
437
原创 mac下安装mysql
1、下载server和workbench2、安装server2018-04-22T09:29:10.385999Z 1 [Note] A temporary password is generated for root@localhost: 8Jj)>opkXLuN If you lose this password, please consult the section Ho...
2018-04-22 19:17:26
280
原创 ssh-keygen生成git ssh密钥,解决多台电脑clone工程
1、检查是否生成过ssh 密钥cd ~/.ssh/ Windows下使用git bash2、使用ssh-keygen命令生成ssh 密钥使用ssh-keygen命令生成ssh 密钥可以使用以下命令:ssh-keygen -t rsa也可以使用以下命令在生成时添加注释:ssh-keygen -t rsa -C "XXXX"生成ssh 密钥后,可以到~/.ssh目录下查看...
2018-04-21 11:15:59
1733
原创 shell脚本
1、写命令到test.sh中simon@ubuntu:~/Desktop/Link to rpcproto/merchantpay$ echo echo "hello" > test.shsimon@ubuntu:~/Desktop/Link to rpcproto/merchantpay$ cat test.sh echo hellosimon@ubuntu:~/Desktop/...
2018-04-05 17:21:18
217
原创 golang XORM速记
一、初始化 配置 user = userDB pass = 123456 host = 127.0.0.1 port = 3306 database = user_db maxconn = 100 maxidle = 100 showsql = false charset = utf8mb4初始化 ...
2018-04-05 17:08:35
3080
原创 proto文件生成go代码
一句话总结:多个文件在一个包里需一起编译,有依赖其他proto文件需手动改导入路径1、单个文件protoc --go_out=plugins=grpc:. hello.proto2、多个文件protoc --go_out=plugins=grpc:. *.proto3、多个文件且依赖其他proto文件protoc --go_out=plugins=grpc:. ...
2018-04-03 22:11:36
10720
1
原创 interface{}类型通过json.Unmarshal之后的类型
一句话总结:所有JSON数值类型一律解析为float64类型,需手动转换;对于map类型需判断是否为nil再转换为所需类型。interface{}类型在json.Unmarshal时,会自动将JSON转换为对应的数据类型: JSON的boolean 转换为bool JSON的数值 转换为float64 JSON的字符串 转换为string JSON的Array 转换为[]interfa...
2018-04-03 21:11:58
15300
原创 protobuf中的omitempty字段
一句话总结:带有omitempty字段的成员,如果该字段为nil(字符串”“,空数组等),则打包的JSON结果不会有这个字段。我们把proto文件自动生成go代码时会出现omitempty字段,如下type Reply struct { Code uint32 `protobuf:"varint,1,opt,name=cod...
2018-04-03 20:59:47
9593
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人