自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(34)
  • 收藏
  • 关注

原创 消息队列设计一个幂等的消费逻辑golang版

设计幂等的消费逻辑的关键是确保每条消息只被处理一次,即使在网络故障或消费者重启的情况下。通常使用唯一的消息ID和持久化存储来记录处理过的消息ID。

2024-06-30 15:06:32 235

原创 一致性哈希算法golang版本

一致性哈希(Consistent Hashing)是一种分布式系统中常用的算法,用于在节点(如缓存服务器)之间均匀分配数据。它的核心思想是将所有可能的哈希值组织成一个环形结构,并将数据和节点通过哈希值映射到这个环上。这样在添加或删除节点时,只需重新分配极少量的数据,从而实现负载均衡和高可用性。简单说:将节点均匀的分布,由一个环形结构,来将这些节点映射,实现负载均衡和高可用效果。

2024-06-30 14:35:02 300

原创 leetcode 35题目给定一个排序数组和一个目标值,在数组中找到目标值,并返回其索引。

【代码】leetcode 35题目给定一个排序数组和一个目标值,在数组中找到目标值,并返回其索引。

2024-06-29 22:58:05 115

原创 golang-b站外包面试题-解析

https://cloud.tencent.com/developer/article/2003084 腾讯大佬示例。mysql常用存储引擎 MyISAM、InnoDB、Memory, InnoDB在mysql5.5之后的默认引擎。它是如何存储数据,如何为存储的数据建立索引、更新、查询的实现方法。b+tree的叶子节点存储数据是有序的,方便范围查询。b树的I/O磁盘次数比b+tree多。b树的子节点存储的是主键索引。聚簇和非聚簇索引有什么区别?建立联合索引和联合索引使用。索引充当的是数据的目录。

2024-06-25 10:45:38 872 1

原创 leetcode-16题最接近的三数之和

【代码】leetcode-16题最接近的三数之和。

2024-06-24 21:00:16 111

原创 mysql解压版本安装5.7

id=523570 mysql官网。net stop server 可以停止mysql服务。让输入密码 此处还未设置 直接回车确认就进入数据库啦。运行这个命令 就会出现上面data文件目录。执行 quit重新输入密码登录即可。运行此命令成功启动Mysql。创建 my.ini文件。

2024-06-24 16:08:44 196

原创 golang-array数组-入门

需要遍历三层的话就多加个循环不难理解。编程题leetcode。

2024-06-21 15:10:37 100

原创 golang-map简单入门

统计map中数字出现的次数。判断是否有值存在map中。map初始化,简单使用。delete删除map。切片值为map如何赋值。map值为切片如何赋值。

2024-06-21 14:21:04 133

原创 01-基于原生golang实现一个简单blog-项目搭建-模板简单使用

第一步当然是go mod init youremail.com。通过{{.}}语法可以获取到自己创建的信息。

2024-06-12 16:19:36 119

原创 redis知识点总结

redis是一个基于内存的数据库,对数据的读写都在内存中完成,因此读写速度非常快,常用于缓存,消息队列,分布式锁等场景。除此之外,redis还支持事务,持久化,Lua脚本,多种集群方案,哨兵模式,切片集群,主从复制模式,发布/订阅模式,内存淘汰机制,过期删除机制。

2024-06-12 11:59:11 347

原创 如何实现LRU LFU算法 缓存淘汰算法

链表的不同在于,它并不需要一块连续的内存空间,它通过指针将一组零散的内存串联一起。一般在程序中声明一块连续的存储空间来存储,对内存的要求比较高。

2024-06-11 22:45:46 178

原创 golang map原理

map是由一组key,value键值对组成的抽象数据结构,并且同一个key只会出现一次。

2024-06-11 22:25:52 381

原创 orderby工作原理总结

参考文章https://learn.lianglianglee.com/%E4%B8%93%E6%A0%8F/MySQL%E5%AE%9E%E6%88%9845%E8%AE%B2/16%20%20%E2%80%9Corder%20by%E2%80%9D%E6%98%AF%E6%80%8E%E4%B9%88%E5%B7%A5%E4%BD%9C%E7%9A%84%EF%BC%9F.md。

2024-06-05 12:44:46 167

原创 解决Mysql:1055SELECT list is not in GROUP BY clause and contains nonaggregated

具体来说,当MySQL的sql_mode设置为only_full_group_by时,它要求SELECT列表中的非聚合列必顋在GROUP BY子句中,或者是函数依赖于GROUP BY子句中的列。换句话说,如果在GROUP BY子句中指定了某些列进行分组,那么SELECT列表中的非聚合列必须与GROUP BY子句中的列相关联。这个错误提示是因为在使用了GROUP BY子句的情况下,SELECT列表中的非聚合列(没有使用聚合函数进行处理的列)必须出现在GROUP BY子句中。

2024-06-03 10:30:40 232

原创 微服务是什么?

通过微服务,一个大型应用拆分为不同的组件,这个组件成为服务,每个组件都会被细分为自己的负责的模块。

2024-05-30 17:48:46 106

原创 数据结构与算法数组两题two_sum和three_sum写好详细注释

【代码】数据结构与算法数组两题two_sum和three_sum写好详细注释。

2024-05-29 16:42:48 65

原创 golang简单链接数据库

goland简单链接数据库。具体根据业务需求更改。

2024-05-25 17:58:36 281 1

原创 kali安装docker命令

Compose 文件:Docker Compose 使用 YAML 格式的配置文件,定义了应用程序的各个组件、每个组件对应的 Docker 镜像、相应的服务、网络等。容器(Container):Docker 中的基本单位,它是一个轻量级的实例化软件包,可以将应用程序和其依赖项打包在一起,在不同的环境中快速、一致地运行。Dockerfile:一个文本文件,用于定义 Docker 镜像,包含了创建镜像的所有指令,例如从哪个基础镜像构建、安装哪些软件等。

2024-05-18 11:25:38 234

原创 go微服务初探

众所周知把大象放进冰箱只需三步那么开发一个基本的user_service需要几步呢1.首先建表数据库2.创建protobuf消息3.创建消息实例接口4.启动服务5.测试。

2024-05-17 21:24:53 335

原创 golang关于md5加密

3.抗修改性 对元数据进行任何一个字节修改,md5值差别就很大。1.压缩性 任意长度数据 算出的md5值固定长度。2.容易计算 从源数据计算出md5值很容易。生成一个指定长度的摘要字符串。进行密码随机生成和加密。5.不可逆,不可反解。

2024-05-15 18:05:09 342

原创 2024 docker创建一个自定义网络

注意:确保你的容器内部的服务确实在 27017 端口上运行,否则端口映射不会工作。同时,确保宿主机上的 27017 端口没有被其他服务占用。-p 27017:27017 将宿主机的 27017 端口映射到容器的 27017 端口。name my_container 给容器命名为 my_container。–network yapi 将容器连接到 yapi 网络。my_container_image是你要运行的镜像名称。-d 表示在后台运行容器。

2024-05-12 19:48:56 169

原创 2024golang微服务踩坑

这里接口必须实现否则报错。

2024-05-12 17:42:26 106

原创 2024_golang 微服务踩坑 google.protobufy.Empty is not defined

grpc项目踩坑

2024-05-11 15:37:41 290 1

原创 goland配置提示

这样设置好之后就能自动加载咯 开心编写代码。

2024-05-05 17:41:55 425 2

原创 mysql:一条sql的新路历程

参考https://xiaolincoding.com/mysql。通过这个参数控制默认是8个小时,如果空闲超过八小时就会断开连接。mysql是进行TCP协议连接的需要三次握手进行连接。可以通过max_connections参数来控制数量。如果连接处于空闲状态会一直占用连接器资源吗?连接器 进行用户的身份和权限进行校验。mysql定义了最大空闲连接时间。成功 保存信息 进行下一步操作。失败 返回错误信息 给客户端。如何解决连接长期占用问题?如何查看客户端有多少个?

2024-04-17 17:38:34 122

原创 go环境变量补充

用于指定Go语言环境的根目录,也就是Go语言的安装目录。除了Go语言的自带工具外,${GOROOT}/src下面的.go文件中的函数都可以被导入和引用。例如fmt.Printf()…等。

2024-04-06 12:32:00 128 1

原创 02 golang入门之顺序编程变量流程控制

预定义常量有这些 true,false,iotaconst (c1 //1c2 //2c3 //3。

2024-03-08 14:52:53 404 1

原创 01-go基础之Hello world

package main 是一个特殊的package main是程序的主入口。fmt.Println()可以打印一个字符串 并换行。可以使用go run main.go执行主程序。import 声明必须跟在package之后。fmt 是一个go内置包。

2024-03-08 14:13:50 78 1

原创 2024搭建go语言开发环境

在GO1.14之后GO开发包会为GOPATH设置一个默认目录,GO Module模式之后也可以不用将代码放到GOPATH目录下。接下来就是解决GROOT和GOPATH 就是环境变量。goproxy 是 国内的代理设置 不然下包很慢。首先找到goland 中国地址 下载比较快。go version 安装成功!可以使用go env查看go的环境配置。goroot就是Go下载完后的文件夹。执行go run main.go完成。或者使用go env 设置 代理。现在开启golang之旅吧~windows下搭建。

2024-03-08 13:41:26 458 1

原创 react+ts项目搭建

npx install eslint 选项看自己选。配置路径别名craco.config.js。配置eslint和prettier兼容。create-react-app地址。ts.config也需要配置不然报错。配置gitngore文件。如下eslint.js。安装完后配置别名路径。配置prettier。

2023-07-19 19:04:33 216

原创 Linux部署java服务器流程

jdk 1.8mysql 5.7redisnode.js这里以若依前后端分离项目为例子。

2023-07-18 16:33:46 237 1

原创 Linux安装zooKeeper踩坑

并且通过root权限开起文件所有读写权限。Xftp 这里Status为Error。搜索了一下关闭电脑防火墙。最后上传成功并解压缩文件。

2023-07-17 15:24:22 61 1

原创 Linux学习

学习linux

2023-07-16 16:10:18 65 1

原创 关于vscode prettier自动保存配置

打开vscode首选项配置 输入default 和on save就可以格式化 愉快的敲代码了。

2023-06-30 13:04:17 185

空空如也

空空如也

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

TA关注的人

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