自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(101)
  • 资源 (2)
  • 收藏
  • 关注

原创 tar 解压文件时去除层级目录

–strip-components NN=1就是一层这样就可以直接tar包里的内容解压到想要的文件夹,并且不会创建多余的目录

2021-04-10 13:56:46 135

原创 k8s的ipvs模式下,访问一次NodePort的过程

一个外部客户端的请求, 访问nodeport流程:pod ip --> 192.168.97.10nodeport --> 10.246.198.17:30080clientip --> 10.242.72.50ipset:-m set --match-set KUBE-LOOP-BACK dst,dst,src表示匹配目的地址,目的端口,源地址与KUBE-LOOP-BACK中所存储的数据相匹配的条目比如要匹配 目的地址192.168.97.5, 目的tcp端口9153, 源

2021-03-18 17:41:44 93

原创 manjaro 20.2 fcitx 输入法下载后,无法激活

gsettings set org.gnome.settings-daemon.plugins.xsettings overrides “{‘Gtk/IMModule’:<‘fcitx’>}”

2021-02-22 14:28:38 135

原创 manjaro pacman glibc 2.33 not fount

通常在升级之前pacman -Sw glibc lib32-glibcpacman -Syypacman -S glibc lib32-glibc

2021-02-20 13:18:44 824 1

原创 shell for {} 循环中无法使用变量

shell for {} 循环中无法使用变量n=10比如 for i in {0..$n} 这个样子是错误的, shell无法识别{}中的$n我们可以这个样子for ((i=0;i<$n;i++));do...这个样子就可以解决

2021-02-19 14:33:11 215

原创 Use ssh-agent in wsl2 with keychain for passwordless ssh connection

概要ssh-agent可使我们在的私钥有密码的情况下,快速ssh到服务主机而不需用输入私钥密码。通常使用如下方法启动eval `ssh-agent -s`ssh-add ~/.ssh/id.rsa平但是时在使用wsl2的ssh-agent的时候,每开启一个终端会话就需要重新生成一个ssh-agent,非常的麻烦。最近想到了使用keychain来管理我的ssh-agent,基本符合需求,只需用在启动wsl2的时候输入一次密钥的密码,就算后面关掉terminal,也不需要重新生成ssh-ahent

2021-01-09 19:14:51 28

转载 debian 9.13 python3.7 pip3.7 安装

# Install requirementssudo apt-get install -y build-essential \checkinstall \libreadline-gplv2-dev \libncursesw5-dev \libssl-dev \libsqlite3-dev \tk-dev \libgdbm-dev \libc6-dev \libbz2-dev \zlib1g-dev \openssl \libffi-dev \python3-dev \pyth.

2020-12-17 11:21:18 87

原创 storing driver.Value type []uint8 into type *time.Time

unsupported Scan, storing driver.Value type []uint8 into type *time.Time连接数据库的时候,有的字段为TIMESTAMP类型需要在DSN里面加上?parseTime=trueadmin:redhat@tcp(1.1.1.1:3306)/userlist?parseTime=True

2020-08-11 22:38:13 257

原创 Golang 字符串中二进制的加法 + 最接近三数之和

//求字符串中的二进制和//比如 a="11" //b= "1" //sum= 100// 目前有两种方式来做,第一种就是用模拟二进制加法的方式,第二种就是将二进制转换成十进制// 然后相加之后,转回二进制的方法第一种: 二进制加法func binarySum(a,b string) string { index_a := len(a) - 1 index_b := len(b) - 1 jinwei := 0 result := "" for index_a >=0 &a

2020-06-24 21:59:56 377

原创 Platform linux on host server3 is using the discovered Python interpreter at /usr/bin/python

这个一般是由于ansible的版本太高,而官方推荐你放弃py2而使用py3我们只需要在ansible.cfg的 [default] 字段中插入简单的选项即可.interpreter_python = /usr/bin/python3...

2020-03-31 23:47:49 1382

原创 Slave SQL for channel '': Error 'Plugin 'auth_socket' is not loaded' on query.

配置文件添加plugin-load-add=auth_socket.so

2020-03-10 17:22:48 203

原创 svn 双向HTTPS

ca.zyxasr.comclient.zyxasr.comsvn.zyxasr.comhttps://github.com/YexinZhang/zyxasr.github.io/blob/master/subversion/svn_https

2020-03-01 22:59:54 200

原创 openstack resource class list Expecting value: line 1 column 1 (char 0)

解决办法:vim /etc/httpd/conf.d/00-placement-api.conf在空白地方插入如下内容即可解决.openstack --os-placement-api-version 1.2 resource class list --sort-column name版本 stein...

2019-12-26 11:18:35 820

原创 go test 1

测试函数为 判断一组字符串是否为回文 Palindrome要注意,测试函数文件要以_test.go结尾, 里面的测试函数以Test开头并且测试函数的文件要和被测试函数的文件在同一文件夹下面先写需要测试的函数// 在这里我们编写Palindrome函数package ispastringimport "unicode"func IsPalindrome(str string) b...

2019-11-23 15:57:34 44

原创 go 中间件 Gin 版

使用gin框架 实现web功能还是很方便的比起net/http 方便简单很多很重要的一点就是, context.Next() (context 为gin.context) 函数 之前的部分为 主处理逻辑之前执行的部分, Next之后为处理完之后执行的部分 ,理解这一点很重要,,其实也就是先将请求处理一下,框架会自动将处理后的请求发送给主处理代码段。package mainimport ...

2019-11-07 23:06:31 117

原创 Go net/http 中间件

了我直接写成了嵌套的中间件并且在第一层实现了 basic auth 的功能.可能代码中间有些变量名 没有很规范package mainimport ( "fmt" "net/http")// 认证的用户列表,存储用户名以及密码var ( list = map[string]string{ "jack":"cat", })// 第一层中间件的结构体, 他需要实现htt...

2019-11-07 22:58:17 366

原创 vim 编写yaml文件时,自动换行后空格太多

我们设置set ts=4set sts=1set sw=2加入/etc/vimrc重新打开文件就行了,这样既可以自动换行,而且在编写yaml文件时非常方便,格式非常用以控制

2019-10-29 13:17:12 1288

原创 Golang 去除字符串中的重复字符

两种方法第一种利用了golang的map数据结构,去除的字符串顺序无法保证,第二种可以保证1func chazhao(str string) string { x := make(map[string]int, len(str)) for i := 0; i < len(str); i++ { x[fmt.Sprintf("%c", str[i])] = i } i :=...

2019-09-12 18:50:33 2430

原创 MySQL 备份、主从复制以及注意事项--1

环境Debian 9.9MySQL 5.7.12MySQL 7版本是公司主的主力数据库,作为刚参加工作的人员,以前一直和mariadb数据库打交道,虽然两者差的不多,但是还是有必要从新试验试验MySQL 5.7首先我来写一写MySQL的备份,我主要写两种备份,一个是全量备份,还有一个是增量备份,其实我所用的方法也是很简单的方法,全量备份主要是用了mysqldump和破康纳的xtraback...

2019-08-04 21:46:38 148

原创 leetcode 两数相加 Go!

type ListNode struct { Val int Next *ListNode}//我是将加到的sum组成ListNode结构体,然后放入切片,将切片的首位next一直指向左后一个元素即可func addTwoNumbers(l1 *ListNode, l2 *ListNode) *ListNode { var slice []*ListNode n1 := l1...

2019-05-08 19:05:15 96

原创 稀疏数组从文件中恢复

首先我们来生成稀疏数组并且存到文件中package mainimport ( "fmt" "strconv" "os" "bufio")type ValNode struct { row,col, val int}var x stringfunc main() { var array [11][11]int array[1][2] = 1 array[3][4] = ...

2019-05-04 15:29:08 287

原创 扇入、扇出 (判断大值素数)

普通的pipeline stage代码package mainimport ( "math/rand" "time" "fmt")func main() { rands := func() interface{} {return rand.Intn(500000000)} toInt := func(done <-chan interface{}, value &...

2019-04-22 11:03:44 322

原创 8个goroutine 取1000以内的素数

go语言方便的并发模式,帮助我们更快的实现程序我采用了8个协程同时取1000以内的素数准备了三个管道1、intChan 用来存放1000个数字2、primeChan 用来存放素数3、exitChan 如果一个协程取不到intChan中的数据,就往exitChan中释放一个信号,表示该协程退出我们的主线程通过for循环阻塞的接收exitChan放出的信号,并且遍历primeChan...

2019-04-08 14:31:55 129

原创 gouroutine 练习题

package mainimport ( "fmt")type haha struct { num int sum int}var ( chann = make(chan int,2000) Sumchan = make(chan *haha) dengdai = make(chan bool, 1))func hanshu(chann chan int) ...

2019-04-07 20:58:40 84

原创 判断32or64位机器

在阅读 go 语言圣经的时候突然发现了一条语句,用来判断计算机的位数int = 32 &lt;&lt; (^uint(0) &gt;&gt; 63)在64位机器上面,^uint(0)返回的其实就是18446744073709551615,其实也就是2^64次方,如果实在32位机器上面会返回2^32次方,这个时候先向右移63位,64位机会的到1,而32位会得到0,这个时候32向左移1或者0(...

2019-03-10 15:43:48 268

原创 Golang 二叉树插入排序

/* 我们将切片中的元素插入到二叉树中,通过二叉树的遍历排序 */type tree struct { values int left, right *tree}func SortTree(values []int) { var root *tree for _, v := range values { root = Insert(root, v) } addValues(...

2019-03-06 17:18:59 290

原创 Golang append函数的基本原理

append 函数func append(slice []Type, elems ...Type) []Type将元素添加至切片中,如果超出了容量,将会返回一个容量二倍与当前切片的切片本身我们看不见append的代码,所以我就随便模拟了一下func addInt(x []int, y int) []int{ var z []int zlen := len(x) + 1 if zle...

2019-03-03 15:14:46 3587 9

原创 猴子吃桃问题

有一只猴子,第一天吃了桃子的一半,并且又吃了一个,第二天又吃了一半加一个,直到第十天,吃桃子的时候发现只剩一个了。问,一共有多少个桃子。分析, 我们倒推第十天还剩1个,我们假设可以得到 [(第九天桃子数)/2 -1] = 第十天桃子数所以第九天桃子数为: (第十天桃子数 + 1) * 2peach(n) = ( peach(n+1) + 1 ) * 2代码实现package main...

2019-02-24 20:48:46 131

原创 Golang 数组模拟环形队列

package mainimport ( "errors" "fmt" "os")type CircleQueue struct { head int tail int array [5]int maxSize int}func (this *CircleQueue) IsFull() bool { return (this.tail+1)%this...

2019-02-22 23:13:17 338

原创 Golang MongoDB 插入与查询

mongodb 需要2.6版本以上mongodb可以去阿里云的镜像站下载,有yum源mongodb的drivergo get github.com/mongodb/mongo-go-driverpackage mainimport ( "context" "fmt" "github.com/mongodb/mongo-go-driver/bson/primitive" "gi...

2019-02-15 17:15:33 5515

原创 Golang 实现etcd键值对的写入查看,并在租约时间内存在

etcd版本3.2,开放端口2379package mainimport ( "context" "fmt" "go.etcd.io/etcd/clientv3" "time")func main() { const ( key1 = "/etc/etcd/etcd.conf" val2 = "etcd.conf" keepTime = 100*ti

2019-02-12 23:35:34 1363

原创 cannot use auth.callOpts (type []"github.com/coreos/etcd/vendor/google.golang.org。。

在经过了很多此下载之后终于将golang的etcd api吧下载成功了但是出现了一些错误很多此在github上面下载失败的原因是下面这个链接所说到的https://github.com/etcd-io/etcd/pull/10044#issuecomment-417125341可以自己打开翻译看一下我最终是通过go get github.com/coreos/etcd/clientv3...

2019-02-11 15:32:44 3372 13

原创 Golang Cron调度简单实践

我实现的是将两个cron事件放入调度协程中,并判断是否过期,过期便执行1、我们创建事件的结构体2、将结构体放入map3、起协程,并判断是否过期,检测判断过程应该减少cpu消耗期间主协程应该睡眠,以防止中断主要用到了github.com/gorhill/cronexpr包package mainimport ( "github.com/gorhill/cronexpr" "ti...

2019-02-11 10:36:53 1159

原创 Golang io.Pipe()中 PipeReader 和 PipeWriter

PipeReader 是管道端的读取端(并没有导出字段的结构体)。他实现了io.Reader 和 io.Closer接口type PipeReader struct{ p *pipe}PipeReader.Read方法:从管道中读取数据。该方法会堵塞,知道管道的写入端开始写入或者写入端关闭。如果写入端关闭是带有Error(即调用CloseWithError关闭),该Reader返回的...

2018-11-26 21:11:53 1358

原创 Golang Redis IN Action

我用CentOS 7的VMware 虚拟机作为redis-server安装 调试yum install redisvim /etc/redis.conf修改 bind 0.0.0.0 使其监听在所有地址, 默认端口6379,不用更改systemctl start redis这个时候我们就可以连接上去了好!接下来 安装golang的redis 库go get github.c...

2018-11-20 23:12:01 422

原创 Golang FORM相关字段理解

Form 字段通过调用Request结构体提供的方法,我们可以将URL、Body、或者以上两者的数据提取到该结构体的Form、PostForm和MultipartForm等字段中。(1)调用ParseForm方法或者ParseMultipartForm方法,对请求进行分析(2)访问相应的字段事例:package mainimport ( "net/http" "fmt")fu...

2018-11-19 18:47:08 2083

原创 Golang Beego 小实践

还是闲来无事收到offer之后便是一条咸鱼今天花了几个小时,理解并且利用beego完成了一个注册和登陆的代码First,我们下载beego(go get 前提是安装了git)go get github.com/astaxie/beegogo get github.com/beego/beego get github.com/astaxie/beego/orm下载之后需要运行一下be...

2018-11-11 23:45:27 426

原创 Golang map有序化

要使得Map有序化,我们必须要对map的key进行排序,我们可以使用sort.Strings函数对字符串进行排序。package mainimport ( "fmt" "sort")func main() { slice1 := map[string]int{ "wangxiaoming": 12, "liming": 11, "fenglingling"...

2018-10-24 10:02:16 7131

原创 Golang 切片的小操作

package mainimport ( &quot;fmt&quot;)//切片的反转func Fanzhuan(str []int) []int { for i, j := 0, len(str)-1; i &amp;lt; j; i, j = i+1, j-1 { str[i], str[j] = str[j], str[i] } return str}// 字符切片是否相等func e...

2018-10-23 20:34:33 372

原创 MySQL MVCC

MVCC简述MySQL的大多数事务型存储引擎实现的都不是简单的行级锁。基于提升并发性能的考虑,它们一般都同时实现了多版本并发控制(MVCC)。不仅仅是MySQL,包括Oracle,PostgreSQL等其他数据库系统也都实现了MVCC,但是各自的实现机制并不相同,因为MVCC并没有一个同一的标准。可以认为MVCC是行级锁的一个变种,但是它在很多情况下避免了加锁操作,因此开销更低。大多数的MVC...

2018-10-16 15:12:22 619 1

OpenStack Virtual Machine Image Guide

Openstack Virtual Machine Image Guide 关于openstack及简介

2018-05-23

PRML-机器学习

这是第一本提出贝叶斯方法的模式识别教科书。本书提出了近似推理算法和用于描述概率分布的图模型等多种最新分类方法。 在阅读本书之前,最好有多变量微积分和基本线性代数等数理基础,面向人群为高年级本科生、研究生和相关研究人员。

2018-10-17

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人 TA的粉丝

提示
确定要删除当前文章?
取消 删除