自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

TigerwolfC的博客

精诚所至,金石为开

  • 博客(135)
  • 收藏
  • 关注

原创 毕业论文查重

每当毕业季论文编写都是一件大事,论文查重又是最让人头痛的事情,这里总结一些简单论文查重方法,希望对你有帮助。

2023-01-18 11:30:00 932

原创 ubuntu 修改socket最大连接数

在Linux系统上,无论编写应用程序还是测试,在进行高并发TCP连接处理时,最高的并发数量都要受到系统对用户单一进程同时可打开文件数量的限制(这是因为系统为每个TCP连接都要创建一个socket句柄,每个socket句柄同时也是一个文件句柄)。在一些开发或测试过程中经常需要涉及到socket最大连接数(也即文件最大打开数)的设置修改,网上能搜索到一些资料,不过很多都不是很管用,本文总结了一下自己...

2020-10-29 23:30:23 4288

原创 golang 使用time包时间间隔报错

时间间隔,即Duartion类型, 业务也是很常用的类型。 // func ParseDuration(s string) (Duration, error) tp, _ := time.ParseDuration("1.5s") fmt.Println(tp.Truncate(1000), tp.Seconds(), tp.Nanoseconds()) func (d Duration) Hours() float64 func (d ..

2020-10-27 23:07:26 1638

原创 Golang中time包用法及一些注意事项

在我们日常软件开发过程中,经常会用到与时间相关的各种业务需求,下面来介绍 golang 中有关时间的一些基本用法,这里主要从 time 的几种 type 来开始介绍,以及使用中一些注意事项。时间可分为时间点与时间间隔,golang 中time包也不例外,提供了以下两种基础类型时间点(Time)时间间隔(Duration)除此之外 golang 也提供了以下类型,做一些特定的业务时区...

2020-10-27 22:58:06 2105 1

原创 Golang使用快慢指针找不知长度链表的中间节点

线性表的链式存储,以及使用快慢指针找不知长度链表的中间节点package mainimport ( "fmt" "strconv")// 定义一个node结构体type Node struct { data string next *Node}func (n *Node) Append(data string){ createNode := &...

2020-09-07 10:43:39 385

原创 Golang项目通用Dockerfile编写

golang go path和go mod的区别go path 所有运行的go文件都要放在gopath文件下, 因为下载下来的包都在这里目录下可以引用go mod 他有一套引用机制 无论你的go文件在哪里 都可以引用包go path方式#编译镜像FROM golang:latest as builderMAINTAINER TigerwolfC@***.com.cnWORKDI...

2020-09-07 10:34:34 2125

原创 Golang算法:二叉树前序,中序,后序非递归遍历算法

本文主要介绍了二叉树前序,中序,后序非递归遍历算法import ( "container/list")// Binary Treetype BinaryTree struct { Data interface{} Left *BinaryTree Right *BinaryTree}// Constructorfunc NewBinaryTree(data...

2020-06-22 10:45:08 1012

原创 Golang利用sync.WaitGroup实现协程同步详解

###协程同步在实际项目开发过程中经常会遇到并发需要协程同步的场景,经常看到有人会问如何等待主协程中创建的协程执行完毕之后再结束主协程,例如下面代码,通过起100个协程实现并发打印的例子:package mainimport ( "fmt")func main() { for i := 0; i < 100 ; i++{ go func(i int) { fmt.Println("Goroutine ",i) }(i) }}执行以上代码很可能看不到输

2020-06-19 18:34:06 3742

原创 Golang并发利用sync.WaitGroup实现协程同步

协程同步经常看到有人会问如何等待主协程中创建的协程执行完毕之后再结束主协程,例如如下代码:package mainimport ( "fmt")func main() { for i := 0; i < 100 ; i++{ go func(i int) { fmt.Println("Goroutine ",i) ...

2020-06-19 18:24:36 718

原创 Leetcode-三角形最小路径和

题目描述给定一个三角形,找出自顶向下的最小路径和。每一步只能移动到下一行中相邻的结点上。相邻的结点 在这里指的是 下标 与 上一层结点下标 相同或者等于 上一层结点下标 + 1 的两个结点。例如,给定三角形:[[2],[3,4],[6,5,7],[4,1,8,3]]自顶向下的最小路径和为 11(即,2 + 3 + 5 + 1 = 11)。说明:如果你可以只使用 O(n) 的...

2020-06-18 18:00:39 320

原创 聚集索引与非聚集索引理解

Mysql数据库索引按照物理实现方式分类,索引可以分为 2 种:聚集索引和非聚集索引。通常也把非聚集索引称为二级索引或者辅助索引。聚集索引可以按照主键来排序存储数据,这样在查找行的时候非常有效。举个例子,如果是一本新华字典,我们想要查找“好”这个字,直接在书中找汉语拼音的位置即可,也就是拼音“hao”。这样找到了索引的位置,在它后面就是我们想要找的数据行。非聚集索引不会把索引指向的内容像聚...

2020-06-18 09:19:17 437

原创 Linux 查看进程的几个命令

查看进程状态的基础指令,有以下几个常用参数:ps 查看当前终端下的命令top 查看所有的进程(是动态的)本文重点介绍通过ps命令查看进程一:一些常用的参数组合及解析1. 查看包含其他使用者的进程,和PID,CPU占有率,记忆体使用情况,运行状态等,可以输入ps -auxUSER:进程拥有者,示例中是root。PID:进程ID,用户ID为UID,父进程ID为PP...

2020-06-17 11:22:00 49500

原创 计算机应用一些常用技巧及快捷键

本文总结了一些常用的日常计算机应用技巧,希望对你有用,如有不对请多多指教。1、控制台调用系统自带工具windows+R –> 输入cmd:mspaint 画图notepad 记事本snippingTool 截图calc 计算器mstsc 远程桌面连接perfmon.msc 打开性能监视器regedit.exe 打开注册表2、常用cmd命令ipconfig /all 显示...

2020-06-15 17:06:48 366

原创 Golang定时任务实例讲解

在程序中经常需要按照指定的周期(以毫秒计)来调用函数或计算表达式,也即实现定时任务,使用time包中Tick和Sleep可以轻松实现定时任务使用Tick每隔100毫秒打印“Hello TigerwolfC”for range time.Tick(time.Millisecond*100){ fmt.Println("Hello TigerwolfC") }每隔...

2020-06-15 16:49:05 773

原创 通过docker安装elasticsearch

安装elasticsearch# 拉取镜像docker pull docker.elastic.co/elasticsearch/elasticsearch:6.3.2 # 安装docker run -d --name es -p 9200:9200 -p 9300:9300 --restart=always -e ES_JAVA_OPTS="-Xms256m -Xmx256m" -e ...

2020-06-14 12:48:27 389

原创 通过docker安装kafka

kafka(消息中间件)docker pull wurstmeister/zookeeperdocker pull wurstmeister/kafka在命令中运行docker images验证两个镜像已经安装完毕启动zookeeper容器docker run -d --name gourdzookeeper -p 2181:2181 --restart=always -t wurst...

2020-06-14 12:35:56 565

原创 Docker安装nginx

1、搜索源docker search nginx2、下载源docker pull nginx3、创建并启动nginx容器 docker run --name gourdnginx -p 80:80 --restart=always -d -v $PWD/conf/nginx.conf:/etc/nginx/nginx.conf -v $PWD/logs:/var/log/ngi...

2020-06-14 12:33:21 148

原创 通过yum快速安装docker及一些常用命令

设置yumyum-config-manager —add-repo https://download.docker.com/linux/centos/docker-ce.repo如果系统提示:command not found 找不到命令这个是因为系统默认没有安装这个命令,这个命令在yum-utils 包里,可以先通过执行命令:yum -y install yum-utils 进行安装就可...

2020-06-14 12:19:30 771

原创 日常感悟-人生思考

漫漫人生路,我们会遇到许多人,经历许多事。尤其是在这个不平凡的2020年,无论遇见什么,我们一定要学会拥有一颗宽容而真诚的心。改变不了世界,改变不了别人,我们可以改变自己,改变自己对世界、对别人的态度。听到一些很好的句子,分享出来,一起共勉,愿我们都可以淡然处事,宽容待人。 “人生”这两个字,就是“欢声”同“泪盈”四个字砌的,任何人,无论你昨天多风光,无论你昨天多失意,明天天...

2020-06-14 11:54:40 296

原创 golang单元测试、压力测试详细介绍

Go为何需要test测试用例软件项目开发过程中需要写一些函数解决某一问题,这时候就需要考虑函数是否可以正确运行,是否能实现预期结果,函数代码质量等问题。那么如何函数是否符合这些要求呢?这时候就需要对函数进行全面的单元测试。单元测试的重点在于发现程序设计或实现的逻辑错误,使问题及早暴露,便于问题的定位解决,而性能测试的重点在于发现程序设计上的一些问题,让线上的程序能够在高并发的情况下还能保持稳定。...

2020-06-13 15:15:29 1796

原创 Golang统计文件中单词出现的频率

本文主要介绍通过golang实现读取文件,并对文件中出现的单次频率进行统计。package main import ( "fmt" "io/ioutil" "log" "strings") func main() { buf,err := ioutil.ReadFile("test.txt") if err != nil { ...

2020-06-12 11:23:07 822

原创 Golang同步相关知识总结

锁1.互斥锁表示:sync.Mutex,类型sync.Mutex的零值表示了未被锁定的互斥量作用:保证在同一时刻仅有一个线程访问共享数据。规则:1)当对一个已处于解锁状态的互斥锁进行解锁操作的时候,就会引发一个运行时恐慌;2)当对一个已处于锁定状态的互斥锁进行锁定操作时,就会被阻塞;3)对于同一个互斥锁的锁定操作和解锁操作总是应该成对地出现,一般会在锁定互斥锁之后紧接着用defer语句保证...

2020-06-11 17:50:47 219

原创 Golang递归函数、函数类型、匿名函数和闭包

1. 递归函数递归指函数可以直接或间接的调用自身。递归函数通常有相同的结构:一个跳出条件和一个递归体。所谓跳出条件就是根据传入的参数判断是否需要停止递归,而递归体则是函数自身所做的一些处理。通过循环实现1+2+3……+100func Test01() int { i := 1 sum := 0 for i = 1; i <= 100; i++ { ...

2020-06-11 17:41:47 894

原创 Windows查询端口占用及关闭相应进程

在windows下查看所有端口:先点击电脑左下角的开始,然后选择运行选项,接着我们在弹出的窗口中,输入【cmd】命令,进行命令提示符或者win+R。然后我们在窗口中输入【netstat -ano】按下回车,即会显示所有的端口占用情况。如图所示:netstat -ano|findstr “:5050” 5050是端口号,查询得出的54108是进程号C:\Users>netsta...

2019-12-14 17:01:42 961 1

原创 Nginx几种常用场景的配置实例

nginx简介Nginx是一款轻量级的Web服务器、反向代理服务器,由于它的内存占用少,启动极快,高并发能力强,在互联网项目中广泛应用。反向代理服务器?经常听人说到一些术语,如反向代理,那么什么是反向代理,什么又是正向代理呢? ...

2019-12-14 14:41:33 421

原创 Linux下curl发送请求总结

curl是一个利用URL规则在命令行下工作的文件传输工具。它支持文件的上传和下载,所以是综合传输工具,但按传统,习惯称url为下载工具。curl命令可以用来执行下载、发送各种HTTP请求,指定HTTP头部等操作。如果系统没有curl可以使用yuminstallcurl安装,也可以下载安装。curl是将下载文件输出到stdout,将进度信息输出到stderr,不显示进度信息使用--silent选...

2019-12-14 14:40:52 1023

原创 Gin验证请求参数-自定义验证规则

Gin对请求参数自定义验证规则可以分三步:自定义结构体验证绑定binding标签 针对该标签定义验证方法 再将该验证方法注册到validator验证器里面自定义结构体验证绑定binding标签需要在请求参数结构体后面binding,加入自定义验证标签,如bookabledate标签,用于验证预约时间必须大于今天type Booking struct { CheckIn ti...

2019-11-17 13:34:24 7700 2

原创 前端项目持续集成Jenkinsfile

前端项目持续集成Jenkinsfile样例env.PROJ_DIR="${JENKINS_HOME}/workspace"env.PROJ_URL="git@github.***.com:devops/PerformanceManagementSystem.git" //项目URLenv.PROJ_NAME="PerformanceSystem" //项目名env.HARBO...

2019-09-01 15:41:05 814

原创 Python项目持续集成Jenkinsfile实例

Python项目持续集成Jenkinsfile实例env.PROJ_DIR="${JENKINS_HOME}/workspace" //jenkins workspaceenv.PROJ_URL="git@github.****.com:devops/webSpider.git" // 项目的SSH地址//env.PROJ_NAME="webSpider" // 项目名...

2019-09-01 15:40:15 1106

原创 Jenkinsfile同时部署服务到测试坏境和生产环境

通过jenkins同时打包部署服务到测试坏境和生产环境env.PROJ_DIR="${JENKINS_HOME}/workspace" //jenkins workspaceenv.PROJ_URL="git@github.***.com:devops/WebManageSystem.git" // 项目的SSH地址//env.PROJ_NAME="WebManage...

2019-09-01 15:39:18 953

原创 golang中map的一些注意事项

map类似其它语言中的哈希表或字典,以key-value形式存储数据 key必须是支持==或!=比较运算的类型,不可以是函数、map或slice Map通过key查找value比线性搜索快很多 Map使用make()创建,支持:=这种简写方式 make([keyType]valueType,cap),cap表示容量,可省略 超出容量时会自动扩容,但尽量提供一个合理的初始值 ...

2019-09-01 15:34:38 26533 8

原创 golang函数作为类型例子———数组中分离奇偶数

定义一个函数类型,实现定义的函数类型,作为参数调用package mainimport "fmt"//函数作为数据类型type myFunc func(arr int) boolfunc main() { arr := []int{1,6,7,21,23,33,34,456,76,89,97,31,16,17,29} odd := Filter(arr,isOdd) fm...

2019-08-11 17:50:37 1367

转载 linux服务器性能查看

1.1 cpu性能查看1、查看物理cpu个数:cat /proc/cpuinfo |grep "physical id"|sort|uniq|wc -l2、查看每个物理cpu中的core个数:cat /proc/cpuinfo |grep "cpu cores"|wc -l3、逻辑cpu的个数:cat /proc/cpuinfo |grep "processor"|w...

2019-07-21 10:07:08 337

原创 jenkinsfile并行发布服务到测试坏境和生产环境

通过jenkinsfile并行发布服务到测试和生产环境,实例如下:env.PROJ_DIR="${JENKINS_HOME}/workspace" //jenkins workspaceenv.PROJ_URL="git@github.****.com:devops/WebManageSystem.git" // 项目的SSH地址//env.PROJ_NAME="We...

2019-07-21 10:06:12 1470

原创 docker中save与load的使用及注意事项

对于没有私有仓库来说,将本地镜像放到其它服务器上执行时,可以使用save和load方法,前者用来把镜像保存一个tar文件,后台从一个tar文件恢复成一个镜像,这个功能对于开发者来说还是很方便的!下面就带大家来实现上面的过程。docker images 查看一下本地镜像[root@Dimage ~]# docker imagesREPOSITORY ...

2019-07-16 18:23:03 12252

原创 gitlab+jenkins集成配置apitoken和webhook

gitlab配置Access Tokens给jenkins使用登录gitlab.****.com,点击右上角头像下拉选择Settings点击左边的Access Token然后填写右边的name和到期时间,点选api后点击Create personal access token即可。生成后的token复制下来,然后去jenkins中创建,将token粘贴到图中的API token...

2019-07-13 11:01:50 3233

原创 基于Jenkins pipeline的devops实现路线

基本方案:gitlab+jenkins+harbor+docker在gitlab提交代码,webhook触发jenkins拉取代码,将代码推送至编译服务器,制作docker镜像,将镜像提交到harbor私有仓库上,在测试环境拉取镜像并运行测试,测试没有问题即可发布到生产环境。本文以pipeline脚本实现为例。基本安装条件:gitlab代码仓库Jenkins服务器harbor私...

2019-07-13 10:59:34 1060

原创 linux创建用户和完全删除用户账号

本文以centos7操作系统实验(1)进入系统后,首先我们创建一个用户账号。[root@docker1 ~]# useradd TigerwolfC #创建用户,名字是TigerwolfC[root@docker1 ~]# ls /home #查看刚创建的用户账户[root@docker1 ~]# cat /etc/passwd |grep TigerwolfC...

2019-07-13 10:58:48 7052

原创 docker pull x509:certificate signed by unknown authority

从私有仓库拉取镜像时报错:docker pull x509:certificate signed by unknown authority解决方案:1、登陆私有仓库服务器,进入/etc/docker/certs.d/目录下,找到ca.crt证书2、将该证书拷贝一份到目标主机(即使用docker pull主机)上,并放在/etc/docker/certs.d/下3、重启docke...

2019-07-13 10:56:42 12841

原创 golang项目持续集成Jenkinsfile

golang 项目通过jenkins实现持续集成,在项目中添加Jenkinsfile脚本,脚本如下:env.PROJ_DIR="${JENKINS_HOME}/workspace" //jenkins workspaceenv.PROJ_URL="git@github.*****.com:devops/*******.git" // 项目的SSH地址//env.PROJ...

2019-07-13 10:53:12 1438

空空如也

空空如也

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

TA关注的人

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