- 博客(387)
- 资源 (1)
- 收藏
- 关注
原创 [特殊字符] fzf:终端模糊查找神器,效率提升利器![特殊字符]
今天要介绍的 **fzf(Fuzzy Finder)**,是一个能让你在终端中**快速筛选、查找、执行命令**的神器。**fzf**(Fuzzy Finder)是一款命令行下的**模糊搜索工具**,能帮助你在终端中快速从一堆选项中找到你想要的内容。**效率提升小计算**:每天节省 10 分钟命令行查找时间,一年就能节省 60 小时!- 输入 `ping <host>`,光标自动跳到 `host` 位置,方便快速修改。**适合人群**:每天敲命令、查文件、翻历史的开发者、运维、DevOps 工程师。
2025-11-23 19:13:36
345
原创 基于brpc的轻量级服务注册中心设计与实现
基于brpc实现的轻量级服务注册中心提供了一个简单而高效的解决方案,特别适合那些不需要复杂功能但要求高性能和可靠性的微服务场景。通过核心的注册表管理、健康检查机制和简洁的接口设计,该系统能够有效地解决服务动态发现的问题。同时,通过集群化、持久化和性能优化等扩展方案,这个轻量级系统完全可以满足生产环境的高可用和高性能要求。
2025-09-07 20:21:08
1023
原创 手把手教你用 EasyTier 搭建异地组网开发服务器 | 开发者必备
EasyTier 真的是异地组网的「宝藏工具」:Windows 端简单易用,Linux 端高效稳定,配合 systemd 后台服务彻底解决任务终止问题,再加上 SOCKS5 代理的内网访问能力,开发协作效率直接拉满!赶紧去官网(easytier.cn)下载体验吧~ 有任何问题,欢迎在评论区留言交流!
2025-08-24 15:38:00
5481
原创 滑动窗口算法:高效处理数组与字符串子序列问题的利器
固定大小窗口:窗口的大小在算法执行过程中保持不变。可变大小窗口:窗口的大小可以根据需要动态调整,通常用于寻找满足特定条件的子数组或子字符串。滑动窗口算法通过动态调整窗口的位置和大小,能够在O(n)的时间复杂度内解决一系列子数组或子字符串的问题,极大地提高了效率。理解和掌握滑动窗口的原理及其优化方法,对于解决复杂的数据处理问题具有重要意义。
2025-05-25 22:00:00
460
原创 读《暗时间》有感
Google&Wiki、现在时 AI。看书挑剔,只看经典。如何选择经典,可以到⽹上做做功课,看看评价,综合分析⼀下。做读书笔记。⼀是将⾃⼰阅读的时候的思考(包括闪念)总结下来,⼆是将书中的好例⼦摘抄下来。提到思考,我有⼀个⼩习惯。利⽤⾛路和吃饭的时候思考,还有睡觉前必然要弄⼀个问题放在脑⼦⾥⾯,在思考中迷糊⼊睡。发现这样⼀来往往在不知不觉中多出来⼤量的思考时间。将思考成为习惯还有⼀个很⼤的好处——避免焦虑。重要的事情优先。重要的事情营造⽐较⼤的时间块来完成。
2025-05-07 22:06:41
2017
原创 vscode手动 安装go插件
1.vscode安装go所有插件vscode版本:1.51.0go版本:version go1.15.2 windows/amd64git客户端版本:Git-2.29.2.2-64-bit2.使用vscode自动安装需要提前安装go、vscode、git客户端,配置git环境,配置go环境,GOPATH这个环境变量 对下面的安装很重要根据go的工程目录要求(go比较奇怪,对工程目录有...
2021-04-11 11:02:22
412
原创 存储简介
存储简介简述历史存储顾名思义就是存放数据的方式,自从人类文明以来,我们可以将信息写入竹简,造纸术、活字印刷等,近代随着电子信息的发展,存储发生的变化,穿孔带,软盘,硬盘,磁盘,U盘等各种存储设备应运而生。同时各种磁盘的组合形成的磁盘阵列,可以存储更大的数据。随着海量数据的发展,数据朝向TB级,PB级,EB级的方向发展,简单的硬盘容量已经不能满足需求了,因此,出现了云存储。云存储的产品•块存...
2020-11-21 15:16:31
268
原创 2020-09-22
搭建vue开发环境的步骤在搭建vue的开发环境之前,一定一定要先下载node.js,,vue的运行是要依赖于node的npm的管理工具来实现,node可以在官网或者中文网里面下载,根据自己的电脑选择是32还是64 ,网址:http://nodejs.cn;下载下载好node之后,打开docs管理工具,先看看node安装成功了没有,输入 node -v ,回车,会输出node的...
2020-09-22 19:31:26
176
原创 实现变长数组
要实现什么函数呢?假设我们要实现一个会自动扩展的数组类,我们需要实现函数呢?先从下面 main 函数使用的功能,看看有什么函数是需要我们实现的。image输出结果:0 1 2 3 4要实现如上的功能,要做哪些事情呢?先列出来:要用动态分配的内存的方式,来存放数组元素,且需要一个指针成员变量重载赋值 = 运算符重载括号 [] 运算符重载复制构造函数实现 push_ba...
2020-07-26 11:09:13
160
原创 78中
题目描述给定一组不含重复元素的整数数组 nums,返回该数组所有可能的子集(幂集)。说明:解集不能包含重复的子集。示例:输入: nums = [1,2,3] 输出: [ [3], [1], [2], [1,2,3], [1,3], [2,3], [1,2], [] ]来源:力扣(LeetCode) 链接:https://leetcode-cn.com/problems/subsets ...
2020-07-26 10:59:18
88
原创 Go 内存分配器的设计与实现
转自:Go 内存分配器的设计与实现系统设计、微服务架构和云原生技术](https://mp.weixin.qq.com/s/NgBHtBqNixfS_Qol_h8Hxw#)程序中的数据和变量都会被分配到程序所在的虚拟内存中,内存空间包含两个重要区域 — 栈区(Stack)和堆区(Heap)。函数调用的参数、返回值以及局部变量大都会被分配到栈上,这部分内存会由编译器进行管理;不同编程语言使用不同...
2020-07-19 21:59:31
116
原创 Part5
示例:package mainimport ( "fmt")func main() { // 重点1的示例。 var srcInt = int16(-255) // 请注意,之所以要执行uint16(srcInt),是因为只有这样才能得到全二进制的表示。 // 例如,fmt.Printf("%b", srcInt)将打印出"-11111111",后者是负数符号再加上srcInt的绝对值的补码。 // 而fmt.Printf("%b", uint16(srcInt))才会打印出srcI
2020-07-01 09:40:48
208
原创 Part4
变量的声明var s stringvar s2 = string("shijie")s1 := "wenxuwan"fmt.Println(s,s1,s2)第一种方式是最传统的变量声明方式,可以显式的看到变量的类型。第二种是利用go语言的类型推断,在声明s2的时候我们不需要定义s2的类型,它会根据后面表达式返回类型来自动判断s2类型第三种是在go语言的推断上加了点语法糖,只能在函数内部使用,或者写for,if,switch语句的时候用在初始化语句中来声明一些临时的变量。不能作为全局声明。
2020-07-01 09:04:33
248
原创 no copy
no copy 机制 转载Go 语言源码阅读有感:no copy 机制Golang技术分享专注于Go语言的知识分享小菜刀读Go源码时,发现一个高频注释语句“XXX must not be copied after first use“。例如sync包下的Pool、Cond、WaitGroup、Mutex、Map和atomoic.Vaule、strings.Builder等,都有该...
2020-06-30 20:30:34
131
原创 Part3
代码管理总结同一目录下面源码应该声明属于同一个代码包,而且同一个包下面的源文件之间的函数调用是可以屏蔽大小写(私有和共有接口)。源码文件声明的包的名字可以和目录不一致,但编译生成的文件的名字和父目录是一致的。如果声明的包的名字和目录的名字不一致,那么怎么引用这个包里面的接口??第一章里面写过了,go是按照文件地址寻址的。所以规则如下:import 文件夹的路径包名.接口名字()我们导入的时候肯定是文件的路径,但调用的时候要用在源码文件里面声明的package的名字。程序
2020-06-30 17:49:21
241
原创 Part2
GO语言的flag包:flag的定义:flag.String(), Bool(), Int() //这里这是列举了几个然后就是两种定义的方式:var ip = flag.Int("flagname", 1234, "help message for flagname") //ip 为指针类型,Int或者String返回的都是指针类型flag.IntVar(&flagvar, "flagname", 1234, "help message for flagname")//此处需要在外面手
2020-06-30 15:48:43
228
原创 Go简介
开发环境搭建随便学学,平时用的都是WIndows10的操作系统,就在这下面搞了。下载安装下载go安装程序,下载地址:https://golang.org/dl/ (被墙了,打不开)墙内下载地址http://www.golangtc.com/download我下的是这个:go1.9.2.windows-amd64.msi安装就下一步就好了,装完之后验证一下。默认已经把Go的路径加到环境变量中去了,所以可以直接在cmd中输入go命令执行:环境变量装完之后,我装到了D:\Go\,已经帮我们添加好了
2020-06-30 11:30:10
1053
原创 Part1
Part1.GO 语言安装的时候主要有三个环境变量:GOROOT、GOPATH 和 GOBIN通过 go env 可以查看go语言的一系列的环境变量的配置.go envGOROOT:代表go的安装路径,一般你安装完go语言之后就有了。GOPATH:一个目录路径,也可以包含多个目录路径,每个目录都代表了go语言的一个“工作区”。目录下面有三个目录,src,bin,pkg。src: 用来存放源代码文件。bin: 目录里面存放的都是通过 go install 命令安装后,由 Go 命令源码文件生成
2020-06-30 11:20:34
350
原创 Go核心36讲笔记
Part1.GO 语言安装的时候主要有三个环境变量:GOROOT、GOPATH 和 GOBIN通过 go env 可以查看go语言的一系列的环境变量的配置.go envGOROOT:代表go的安装路径,一般你安装完go语言之后就有了。GOPATH:一个目录路径,也可以包含多个目录路径,每个目录都代表了go语言的一个“工作区”。目录下面有三个目录,src,bin,pkg。src : 用来存...
2020-06-30 11:18:00
96
原创 计算机是怎样跑起来的
计算机三大原则初级问题,硬件和软件的区别是什么?硬件:看得见,摸得着,真实存在的设备。软件:运行在硬件之上,计算机所执行的程序,即指令和数据。中级问题,存储字符串“中国”需要几个字节?-utf8中占3个字节,GBK中占两个字节。高级问题,什么是编码(Code)?为了便于计算机处理而及经过数字化处理的信息。计算机三大原则:1.计算机是执行输入、运算、输出的机器2.程...
2020-06-23 14:53:52
119
原创 数据结构
稀疏数组image.pngimage.pngimage.pngimage.pngimage.png代码实现:package mainimport ( "bufio" "fmt" "io" "os" "strconv" "strings")type ValNode struct { ...
2020-06-20 15:13:25
112
原创 GoAdvance
image.png指针指针就是地址,指针变量就是存储地址的变量*p : 解引用,间接引用栈帧:用来给函数运行提供内存空间,取内存于stack上。 当函数调用时,产生栈帧,函数调用结束,释放栈帧。 栈存放:局部变量,形参,内存字段描述值(栈基指针与栈顶指针)。指针使用注意: 空指针:未被初始化的指针。 ...
2020-06-13 16:43:28
215
原创 路线
超级详细Linux环境后台开发C++学习路线,已拿鹅厂offer另一篇文章面试经验:《腾讯C++后台开发面试笔试知识点总结参考笔记》整理了C++后台开发知识点,本文尝试从自身学习过程出发,介绍这些技术点的掌握途径和学习路线。工欲善其事必先利其器,好的书籍能让学习事半功倍,所以每个技能点之后我会推荐一些书,都是我读过且口碑不错的书,供参考。分享的学习路径,如果你也能顺着这个学习路径认真学一遍,...
2020-06-08 06:00:06
130
原创 Go 协程的实现原理
G (goroutine)G是goroutine的头文字, goroutine可以解释为受管理的轻量线程, goroutine使用go关键词创建.举例来说, func main() { go other() }, 这段代码创建了两个goroutine,一个是main, 另一个是other, 注意main本身也是一个goroutine.goroutine的新建, 休眠, 恢复, 停止都受到g...
2020-05-30 22:07:02
236
原创 面试题
image.png以下代码结果是什么image.png如何输出012image.pngimage.pngN=10image.pngimage.pngimage.pngimage.pngimage.pngimage.png全局只可以是以下类型:image.pn...
2020-05-26 14:47:05
93
原创 微服务
微服务:将一个服务写成多个模块。image.pngimage.pngimage.png系统性能方案:image.pngimage.pngimage.png服务管理框架与服务是通过心跳包的方式保持通信。RPC:image.pngimage.pngimage.pngimage.png...
2020-05-23 07:27:36
73
原创 子查询
image.pngimage.png进阶7:子查询/*含义:出现在其他语句中的select语句,称为子查询或内查询外部的查询语句,称为主查询或外查询分类:按子查询出现的位置:select后面:仅仅支持标量子查询from后面: 支持表子查询where或having后面:★ 标量子查询(单行) √ 列子查询 (多行) √ ...
2020-05-21 16:02:08
83
原创 sql99语法连接查询
二、sql99语法/*语法:select 查询列表from 表1 别名 【连接类型】join 表2 别名on 连接条件【where 筛选条件】【group by 分组】【having 筛选条件】【order by 排序列表】分类:内连接(★):inner外连接左外(★):left 【outer】右外(★):right 【outer】全外:full【outer】交叉...
2020-05-19 17:19:33
139
原创 beego框架
image.pngimage.pngimage.pngimage.pngimage.pngimage.pngimage.pngimage.pngimage.pngimage.pngimage.pngimage.pngimage.pngimage.png...
2020-05-16 14:54:35
66
原创 gin框架
Gin是一个用Go语言编写的web框架。它是一个类似于martini但拥有更好性能的API框架, 由于使用了httprouter,速度提高了近40倍。 如果你是性能和高效的追求者, 你会爱上Gin。Gin框架介绍Go世界里最流行的Web框架,Github上有32K+star。 基于httprouter开发的Web框架。 中文文档齐全,简单易用的轻量级框架。Gin框架安装与使用安装下载并安...
2020-05-14 11:08:35
94
原创 influxDB
本文介绍了influxDB时序数据库及Go语言操作influxDB。InfluxDB是一个开源分布式时序、事件和指标数据库。使用Go语言编写,无需外部依赖。其设计目标是实现分布式和水平伸缩扩展。安装下载https://portal.influxdata.com/downloads/这里需要注意因为这个网站引用了google的api所以国内点页面的按钮是没反应的,怎么办呢?按照下图所示,...
2020-05-11 16:18:39
91
原创 etcd
go操作etcdetcd是近几年比较火热的一个开源的、分布式的键值对数据存储系统,提供共享配置、服务的注册和发现,本文主要介绍etcd的安装和使用。etcdetcd介绍etcd是使用Go语言开发的一个开源的、高可用的分布式key-value存储系统,可以用于配置共享和服务的注册和发现。类似项目有zookeeper和consul。etcd具有以下特点:完全复制:集群中的每个节点都可以...
2020-05-10 13:49:37
121
原创 go学习之路
转发:go编程时光[go中文学习资料](https://go.wuhaolin.cn/)下面网站比较多,将它们分成 五大类,你可以根据自己的实际 情况进行选择:入门阶段Web开发进阶阶段工具使用技术社区源码阅读另外,为了方便大家,我制作了张思维导图,这下清晰多了吧(hhhhh视频<noscript>[图片上传中...(image-81ea7-158903446...
2020-05-09 22:29:11
202
原创 函数
进阶4:常见函数/*概念:类似于java的方法,将一组逻辑语句封装在方法体中,对外暴露方法名好处:1、隐藏了实现细节 2、提高代码的重用性调用:select 函数名(实参列表) 【from 表】;特点:①叫什么(函数名)②干什么(函数功能)分类:1、单行函数如 concat、length、ifnull等2、分组函数功能:做统计使用,又称为统计函数、聚合函数、组函数常见函...
2020-05-09 21:31:42
138
原创 数据库简介
数据库优势:实现数据持久化使用完整的管理系统统一管理,易于查询。DB:database(数据库)存储数据的仓库,保存了一系列有组织的数据。DBMS:Database Managenment System (数据库管理系统),数据库软件,数据库是通过DBMS创建和操作的容器。SQL:(结构化查询语言):与DB通信的语言。 优点:通用数据库语言。简单易学灵活使用,可进行复...
2020-05-08 10:56:51
120
原创 日志收集项目
日志收集项目架构设计及Kafka目前主流的日志收集方案ELK360截图20200505170804824.jpgELK问题:增加一个日志收集项,需要手动修改配置。部署的时候麻烦,没一个filebeat都需要配置一个配置文件我们的架构图:360截图20200505170932328.jpg学习到的技能:服务端agent开发后端服务组件开发Kafka和zook...
2020-05-07 08:36:18
135
原创 23.NSQ
NSQ是目前比较流行的一个分布式的消息队列,本文主要介绍了NSQ及Go语言如何操作NSQ。组件:nsqdlookupd.exe默认本机的127.0.0.1nsqd.exe -broadcast-address=127.0.0.1 -lookupd-tcp-address=127.0.0.1:4160启动adminNSQNSQ介绍NSQ是Go语言编写的一个开源的实时分布式内存消息队列...
2020-05-04 17:12:17
166
原创 21.连接MySQL
MySQL是业界常用的关系型数据库,本文介绍了Go语言如何操作MySQL数据库。360截图20200503173103802.jpggo文件不是同一个模块,关闭go mod即可。Go操作MySQL原生支持连接池,是并发安全的。这个标准库没有具体的实现,只是列出了一些需要第三方库实现的具体内容。go get 识别问题如果您使用的 Go 版本是 1.13 及以上 (推荐)go...
2020-05-01 08:53:47
94
原创 19.单元测试
不写测试的开发不是好程序员。我个人非常崇尚TDD(Test Driven Development)的,然而可惜的是国内的程序员都不太关注测试这一部分。 这篇文章主要介绍下在Go语言中如何做单元测试和基准测试。go test工具Go语言中的测试依赖go test命令。编写测试代码和编写普通的Go代码过程是类似的,并不需要学习新的语法、规则或工具。go test命令是一个按照一定约定和组织的测试...
2020-04-30 16:13:07
84
Threads.zip
2020-01-07
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅