- 博客(179)
- 资源 (18)
- 收藏
- 关注
原创 Golang项目引入leaderelection实现leader选举
leaderelection基本工作原理其实就是利用通过Kubernetes中 `configmap` , `endpoints` 或者 `lease` 资源实现一个分布式锁,抢(acqure)到锁的节点成为leader,并且定期更新(renew)。其他进程也在不断的尝试进行抢占,抢占不到则继续等待下次循环。当leader节点挂掉之后,租约到期,其他节点就成为新的leader。
2025-01-21 16:14:01
609
原创 一文搞定golang 之 pprof 性能优化
pprof是Go语言自带的性能分析工具。它可以帮助开发者了解程序的性能瓶颈,包括CPU使用情况、内存分配情况等诸多方面。通过`pprof`生成的性能分析数据,能够以可视化的方式展示程序的运行时行为,例如使用火焰图(FlameGraph)来展示函数调用栈和CPU占用时间的关系。
2025-01-20 10:18:41
762
原创 后端服务集成ElasticSearch搜索功能技术方案
ElasticSearch是一款非常强大的开源的分布式搜索引擎,具备从海量数据中快速找到需要内容的功能,可以用来实现搜索、日志统计、分析、系统监控等功能。
2025-01-08 18:01:23
704
原创 一文搞定SQLite数据库
SQLite 是一个用 C 语言编写的开源、轻量级、快速、独立且高可靠性的嵌入式关系型数据库,它提供了功能齐全的数据库解决方案。SQLite 几乎在所有的手机和计算机上运行,它被嵌入到人们每天都在使用的众多应用程序中。 这也是世界上装机量最大的数据库SQLite,根据SQLite的官方统计,目前正在使用的SQLite数据库实例已经超过了1万亿个。
2024-08-15 16:02:32
5707
1
原创 Go语言grpc服务开发——Protocol Buffer
作为一个后端开发,我们用的最多的传递信息的协议是http协议。性能需求的提高,要求我们转向性能更高的协议,这就不得不提到一个由Google公司推广的一个小而快的rpc协议——protocol buffer协议。它到底有着什么样的魔力?让大家觉得真香定律。
2024-01-26 15:50:24
1673
1
原创 理解IO复用的三种模式——select、poll、epoll
IO复用是指通过select、poll、epoll等系统调用来监听多个文件描述符的IO事件。当某个文件描述符就绪时,内核会通知用户进程进行IO操作。相比于阻塞IO和非阻塞IO,IO复用可以同时监听多个文件描述符,提高了IO效率。
2023-12-07 19:40:19
2343
原创 Redis`数据结构`与`对象`概述
我们要弄清楚Redis数据结构与对象之间的关系:对象是对底层数据结构的二次封装或者抽象,通过编码(每种类型的对象都至少使用了两种不同的编码),使得每种类型的对象都用到了至少一种数据结构。
2023-05-01 14:54:51
1858
原创 Redis集群原理详解
Redis的集群模式,实现了数据的分布式存储,对数据进行分片,将不同的数据存储在不同的master节点上面,从而解决了海量数据的存储问题。
2023-03-29 13:41:49
1313
原创 容器网络虚拟化
网络虚拟化技术的三大基础:veth、网络命名空间、Bridge。Kubernetes、Istio等项目中的网络方案看似复杂,其实追根溯源也是对路由选择、iptables等技术的不同应用方式而已。
2023-02-06 09:30:08
1840
2
原创 计算机组成原理【2022-10-24】
计算机组成原理是计算机的核心,主要包括计算机基本组件的构造、组织方式和设计思想,以及基本运算的操作原理。
2022-10-24 21:34:08
3059
原创 操作系统知识【2022-10-02】
操作系统是一组控制和管理计算机硬件与软件资源,合理地对各类作业进行调度,以及方便用户使用的程序的集合。
2022-10-05 10:17:50
1361
1
原创 CKA考题[k8s1.24]
CKA)认证Kubernetes管理员,由Linux基金会和云原生计算基金会(CNCF)推出,是关于kubernetes技术的官方认证。当前考题考试环境kubernetes1.24。考试共计17道题,线上考试,2小时之内完成。
2022-10-01 18:23:20
3457
1
原创 CKA考题 [k8s1.21]
(CKA)认证Kubernetes管理员,由Linux基金会和云原生计算基金会(CNCF)推出,是关于kubernetes技术的官方认证
2022-09-25 15:52:41
1266
原创 Containerd【轻量级容器管理工具】
containerd可用作 Linux 和 Windows 的守护进程。它管理其主机系统的完整容器生命周期,从图像传输和存储到容器执行和监督,再到低级存储到网络附件等等。
2022-09-03 14:30:06
16481
5
原创 Go并发编程基础
并发编程在当前软件领域是一个非常重要的概念,随着CPU等硬件的发展,我们无一例外的想让我们的程序运行的快一点、再快一点。Go语言在语言层面天生支持并发,充分利用现代CPU的多核优势,这也是Go语言能够大范围流行的一个很重要的原因。 ......
2022-07-26 23:24:34
653
原创 Go 调度器——schedule
Go调度器很轻量也很简单,足以撑起goroutine的调度工作,并且让Go具有了原生并发的能力。Go调度本质是把大量的goroutine分配到少量线程上去执行,并利用多核并行,实现更强大的并发。
2022-07-19 20:46:36
1632
原创 TiDB学习笔记【初阶】
TiDB 是一个分布式 NewSQL 数据库。它支持水平弹性扩展、ACID 事务、标准 SQL、MySQL 语法和 MySQL 协议,具有数据强一致的高可用特性,是一个不仅适合OLTP场景还适合OLAP场景的混合数据库。
2022-07-16 21:10:59
2799
原创 Gin框架原理
Gin是Go语言写的一个web框架,它具有运行速度快,分组的路由器,良好的崩溃捕获和错误处理,非常好的支持中间件和json。Gin官网Gin是一个golang的微框架,封装比较优雅,API友好,源码注释比较明确,具有快速灵活,容错方便等特点。对于golang而言,web框架的依赖要远比Python,Java之类的要小。自身的net/http足够简单,性能也非常不错。借助框架开发,不仅可以省去很多常用的封装带来的时间,也有助于团队的编码风格和形成规范。.........
2022-07-16 13:43:41
1284
操作系统知识网络结构图
2022-10-13
redis6 资料和代码 秒杀案例 分布式锁案例
2022-07-03
Java项目图书管理系统(前后端分离 springboot+vue).zip
2020-03-04
Java项目图书管理系统(前后端不分离 web入门).zip
2020-03-04
orderingsystem-master.zip
2019-12-01
中兴综合面试2019最新版.doc
2019-08-14
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人