- 博客(53)
- 收藏
- 关注
原创 go-sync-mutex
Go 语言作为一个原生支持用户态进程(Goroutine)的语言,当提到并发编程、多线程编程时,往往都离不开锁这一概念。锁是一种并发编程中的同步原语(Synchronization Primitives),它能保证多个 Goroutine 在访问同一片内存时不会出现竞争条件(Race condition)等问题。 当其中一个 goroutine 获得了这个锁,其他 goroutine 尝试获取这个锁时将会被,直到持有锁的 goroutine 释放锁为止。 Go 语言在 sync。
2023-11-05 19:22:18
409
原创 elastisearch开发时的发现
类型(一般子字段名都用类型string为名,此例子应该协程。业务某些字段,既精准查询也需要模糊查询就需要到子类型。是一个text类型字段,并且给他定义了一个子字段。下面是某个index的mapping,,我这样写是为了好区分关键字)。
2023-10-11 20:08:01
180
原创 go-GC垃圾回收
GC是自动化内存管理回收机制虚拟内存函数栈的数据是会根据函数返回而自动销毁的,而堆上的数据是不会随着函数自动销毁的,堆内数据会随着程序运行而逐渐变大,从而导致内存OOM,Go语言就用了GC来。
2023-09-15 14:37:47
326
原创 redis常用数据类型
Zset 类型(有序集合类型)相比于 Set 类型多了一个排序属性 score(分值),对于有序集合 ZSet 来说,每个存储元素相当于有两个值组成的,一个是有序集合的元素值,一个是排序值。String 类型是会保存为二进制的字节数组,所以,Redis 就把字节数组的每个 bit 位利用起来,用来表示一个元素的二值状态,你可以把 Bitmap 看作是一个 bit 数组。概念和数学中个的集合基本类似,可以交集,并集,差集等等,所以 Set 类型除了支持集合内的增删改查,同时还支持多个集合取交集、并集、差集。
2023-08-11 14:42:20
152
原创 限流实现方案
系统中,由于接口API无法控制上游调用方的行为,因此当瞬时请求量突增时,会导致服务器占用过多资源,发生响应速度降低、超时、乃至宕机,甚至引发雪崩造成整个系统不可用。限流,Rate Limiting,就是对的请求量进行限制,对于超出限制部分的请求作出快速拒绝、快速失败、丢弃处理,以保证本服务以及下游资源系统的稳定。哪些原因会带来瞬时请求量突增?1,热点业务、突发热点数据带来的激增。例如微博热搜的爆点。2,上游系统的bug导致。3,恶意的攻击流量。
2022-10-28 19:12:21
600
原创 docker-wsl2数据磁盘迁移
安装wsl2-ubuntuwindows-store下载安装迁移C盘docker和ubuntu# 查看本地wsl分发状态和个数PS C:\Users\Lenovo> wsl --list -v NAME STATE VERSION* docker-desktop Stopped 2 docker-desktop-data Stopped 2 Ubuntu-20.04
2022-01-11 18:09:40
801
原创 charles抓包工具完整配置流程
背景因为开发调试和查看线上bug,移动端的接口不好查,所以安装了一个抓包工具。为什么没选择fiddler,其实上一份工作一直用的fiddler,以前都是开包即用,可是在安装和配置过程中,Https请求一直 tunnel to 443,即使安装和信任了证书一样无法使用,所以换成了charles,我变心了,大哭准备工作安装系统:windows抓包工具:charles原理charles在windows系统下会自动开启代理配置(默认是http/https 127.0.0.1:8888),所有的ht
2021-10-26 18:44:36
529
原创 zookeeper
应用场景统一命名服务:在分布式环境下,需要对应用/服务进行统一命名,便于识别(Ip是记不住的)统一配置管理:分布式环境下,配置文件同步统一集群管理:掌握每个节点的状态服务器节点动态上下线软负载均衡安装集群配置启动多个zookeeper-server,选择leader时,必须要大于一半以上,所有最好是奇数个节点。接下来每个节点都需要操作步骤一:zoo.cfgtickTime=2000dataDir=/var/lib/zookeeper/clientPort=2181init
2021-08-25 22:59:01
143
原创 cpu、系统操作、内核
操作系统:操作系统就是为用户(使用计算机的人)提供服务,使用户能在计算机上使用各种应用程序(QQ、浏览器)来操作计算机资源(如QQ需要使用显示器资源、用浏览器下载资料需要硬盘资源,同时所有这些应用程序都需要使用CPU这个最主要的资源)。操作系统也是一个程序,只是和应用程序的功能不同,所以他也会占用CPU,并且单核CPU不能及执行操作系统又执行应用程序。操作系统内核:***操作系统包括操作系统内核*(这是必然的),也就是说内核程序是操作系统所包含的一组计算机程序中的一个子集,所以内核程序也是一组计算机程序,
2021-08-08 13:37:52
509
原创 进制数转换
十六进制 转 十进制十六进制及每一位数代表 0-15 ( 0<=x<=16-1)A,B,C,D,E,F 分别代表:10,11,12,13,14,15示例题目:\0xAF1 --> 2801推导:\0xAF11. A=10 10*16^2 A是第3位 3-12. F=15 15*16^1 F是第2位 2-13. 1=1 1*16^0 1是第1位 1-14.10*16^2 + 15*16^1 + 1*16^0 = 2801十进制 转 十六进制十进制数除
2021-07-25 11:42:45
167
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人