自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 【实践】Filebeats的尝鲜

落盘的日志文件, 查询起来比较麻烦,所以想将其存入ES中,然后通过使用Kibana来查询。

2024-06-14 15:21:55 914

原创 【实践】 使用k8s的leader-election来实现多副本应用的选举

如何正确使用 leader-election, leader-election的常见概念和坑

2024-06-11 14:54:23 902

原创 【实践】给proto的message添加自定义tag

可以使用这个工具来给Field添加# 对应的pb生产文件:可以看到,通过@gotags 自定义的tag声明, 生效了。1. json的tag可以指定新的名称2. 添加了用于映射mongodb中字段的bson tag3. 同时, 还添加了orm组件的字段tag 映射名称是不是很方便, Enjoy ~

2024-05-13 16:27:51 590

原创 【实践】 基于proto生成对应http的client和server代码, 类似grpc的代码生成功能

想想写grpc的时候, 这些初始化代码是自动生成的(包括: server端和client端代码),你只需要定义对应的proto文件即可, 然后,client引用对应生成的client端代码就能很方便的创建一个client出来。你需要注册http路由,编写对应的handler来处理, 也最多就基于某个web框架,比如: gin, 来写一大堆web服务的初始代码,很难受!之前在B站,就有类似的工具, 当时没太注意,现在回过头来仔细思考一番,这个工具应该挺常用的,为啥不用?那有没有一个类似的工具,在写。

2024-05-11 18:48:20 381

原创 【实践】使用vscode来debug go程序的尝鲜

瞬间解锁新技能, 在之前只能通过打印日志来观察程序行为,变成想看程序中的什么变量就都能看到(前提: 掌握点debug基本知识,包括: 断点、单步执行 ....)首先,当然得配置好vscode 的go环境, 装个go插件就基本满足了。, 可以配置多个环境的程序启动参数(很友好), 位置可以不固定,可以拖动想放到哪里都行。, 直接选择启动就可以debug了。左边可以观察程序的变量、调用栈等信息。其中,每个环境都指定了启动的。中间顶部: 调试的一些控件。

2024-05-11 15:44:12 459

原创 【问题】go mod依赖库代码一直变, 如何不更新go.mod来得到依赖库的变更代码

不知道你们是否有类似情况?在开发项目中(通常情况会同时修改项目代码:A、B ),A项目go mod依赖B, B可能一直处于变更中,但B的代码不想每次变更都推送到远端,如何让A能正常依赖B的变更呢?: B变更后, 推送到远端仓库, A通过拉取B新的gomod,就能获取B的变更代码依赖。通过上面的命令, A可以获取到了B变更后的代码,这个库的代码依赖在目录:$GOPATH/pkg/mod中但这样有个问题?每次B做了很小的变动,都得推到远端,然后A还得重新拉B最新的代码, 是不是有点烦?

2024-05-10 17:32:58 451

原创 【问题】protobuf中int64类型字段被转成字符串类型

通常使用 jsonpb 的Marshal和Unmarshal,protobuf中int64类型字段会被转成字符串类型。但是, 后来发现,使用最简单json的Marshal和Unmarshal就能避免这个问题,直接蒙了!像使用gin这种Web服务框架,服务接口return proto的message即可。接口请求参数获取,直接使用proto message 定义BindJSON即可。之前没找到解决办法,有点无奈。

2024-05-07 11:52:12 332

原创 Golang版本管理之Goup

本地管理go的不同版本管理,推荐使用: https://github.com/owenthereal/goup更新PATH执行之后,需要将Goup和Go的bin目录添加到PATH中:Goup相关命令的bin目录:~/.go/binGolang相关命令的bin目录:~/.go/current/bin在 安装了 oh-my-zsh之后,在 ~/.zshrc 中修改PATH之后,新打开的终端,就能正常使用go和goup相关命令了。⚠️如果当前shell也能运行go和goup相关命令,可以执行:

2023-06-07 14:05:25 559

原创 RedisStack之RedisSearch使用

RedisSearch初探

2023-03-24 13:47:26 920

原创 Redis通信协议

Redis serialization protocol (RESP) specification

2023-03-22 12:18:16 301

原创 Golang知识点总结

golang知识点总结

2023-01-11 11:00:34 484 1

原创 Golang编程模式

Golang编程模式实践

2022-12-12 17:07:36 346

原创 阅读图书:advanced-go-programming-book 的一些总结

阅读图书advanced-go-programming-book的一些总结

2022-12-12 16:58:09 312 8

原创 Go语言之sync.Pool

主要介绍:sync.Pool如何使用以及其底层的一些实现原理分析

2022-12-12 16:47:44 2544

原创 分布式锁有哪些实现方式?

分布式锁的实现方式

2022-12-08 14:29:56 83

原创 分布式一致性共识算法

分布式一致性共识算法有哪些?

2022-12-08 14:20:39 709

原创 IDE等开发工具的使用(VSCODE + IDEA)

IDE等开发工具的使用(VSCODE + IDEA)

2022-12-08 11:09:44 1469

原创 iTerm配置

终端的相关配置,包括Git相关等

2022-12-08 11:04:38 318

原创 跳表的实现原理

跳表的一些基础概念以及实现原理

2022-12-07 18:12:52 320

原创 短链接网址是如何生成的?

短链接网址生产算法实现原理

2022-12-07 17:51:02 606

原创 TextRank算法为文本生成关键字和摘要

如何使用PageRank算法演化成,TextRank算法为文本生成关键字和摘要

2022-12-07 16:15:28 344

原创 人工智能 - 扩展阅读

人工智囊收藏

2022-12-07 15:47:05 156

原创 数据库隔离级别及mysql的实现

数据的隔离级别类型,和mysql如何解决幻读

2022-10-17 14:42:14 298

原创 简要介绍网络模型以及常用协议

网络协议的介绍, 包括HTTP,HTTPS,TCP等主要协议

2022-09-29 16:39:09 886

原创 MYSQL知识点

MYSQL知识点概念总结

2022-09-22 16:58:52 240

原创 MYSQL如何正确使用limit offset

如何正确使用limit offset

2022-07-15 18:57:32 1023

原创 Golang:容易误解的一些操作

Golang容易误解的一些操作

2022-07-15 17:08:14 338

原创 MYSQL日志模块

MYSQL日志模块: 分析了undo log, redo log , binlog的一些基本概念

2022-05-30 15:42:46 253

原创 Redis和MYSQL双写一致性分析

缓存的问题 缓存雪崩(大量数据集中过期); 缓存击穿(热点数据过期); 缓存穿透(缓存和数据中都不存在该数据) 缓存淘汰volatile-random,volatile-ttl,volatile-lru,volatile-lfuallkeys-random,allkeys-lru,allkeys-lfu读写缓存 同步直写: 写redis,同时也写数据库; 异步写回:先写redis,然后等redis淘汰数据时,同步写回数据到数据库中。 三个经典的缓

2022-05-27 15:37:55 274

原创 Redis数据类型和底层数据结构

redis常见数据结构和底层数据类型

2022-05-27 15:19:03 182

原创 事务处理(结合分布式事务)

一般的事务处理,分为一下几种:本地事务 共享事务 全局事务 分布式事务本地事务常见的本地事务,有数据库的事务, redis事务。即是一种单服务,单数据源的提交形式共享事务这是一个伪需求,实际上多服务,单数据源的场景很少见全局事务这是单服务, 多数据源的场景,一种强一致性的事务解决方案有以下实现:2PC: 两阶段提交提交过程: 准备、提交缺点:单点问题, 性能问题(同步阻塞), 一致性风险3PC: 三阶段提交提交过程: CanCommit, PreCom

2022-05-27 15:07:52 799

原创 数据库事务(结合MYSQL)

数据库的事务介绍

2022-05-27 12:30:00 150

原创 常见的几种锁(互斥锁,自旋锁,乐观锁,悲观锁)

互斥锁,自旋锁,乐观锁,悲观锁

2022-04-05 12:09:36 2195

原创 求 top k有哪些方法

如何求topk

2022-04-05 11:58:35 1483 1

原创 哈希桶的应用

哈希桶的一个应用

2022-04-04 22:07:02 815

原创 []int64 -> []interface{}

能不能将 []int64 强转成 []interface{}来使用?

2022-03-04 15:45:21 649

原创 插补搜寻法和二分查找法 哪个效率更好?

什么是插补搜寻法?

2022-03-03 14:44:12 204

原创 VLQ的介绍

什么是VLQ

2022-03-03 12:14:29 3031

原创 Windows下使用Hadoop-eclipse-plugin插件

1.下载hadoop2x-eclipse-plugin源代码拷贝到eclipsean安装目录的plugins目录下,重启一下Eclipse,然后可以看到DFS Locations,如图所示:2.打开Window-->Preferens,可以看到Hadoop Map/Reduc选项,然后点击,然后添加hadoop解压的目录3.配置Map/ReduceLocations

2015-11-05 17:14:02 406

空空如也

空空如也

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

TA关注的人

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