- 博客(40)
- 收藏
- 关注
原创 【kafka】消息队列
②具有顺序的数据写入到了不同的partition里面,不同的消费者去消费,但是每个consumer的执行时间是不固定的,无法保证先读到消息的consumer一定先完成操作,这样就会出现消息并没有按照顺序执行,造成数据顺序错误。延迟队列:在kafka中创建一个消息队列,为队列设置延时时间,将消息推送到队列中打上时间戳,消息达到延时后自动被删除。从生产者的角度来说:使用确认机制,当发送消息后通过同步或者异步的方式直到成功接受才算发送成功,代替发后即忘的消息发送模式。7.怎么保证消息消费的顺序?
2024-09-10 21:39:03
1054
原创 【go】内存分配模型
内存是怎么分配给对象的?内存分配优化的地方是?讲讲golang内存分配模型?ans:1.按照对象的大小分配:先算出对象的大小如果是tiny对象,就从tiny block中获取地址和偏移量,将对象打包到mcache;如果是16B以上32k以内就先从mcache获得对应class级别的span;如果mcache没有就从mcenter中获取,如果mcenter没有就创建一个mspan从free树或scav树中获得内存页。如果堆中没有就系统调用申请内存,后再扫描树。
2024-09-07 22:27:09
904
4
原创 【GC】垃圾回收原理分析
垃圾回收(Garbage Collection,简称 GC)是一种内存管理策略,由垃圾收集器以类似守护协程的方式在后台运作,按照既定的策略为用户回收那些不再被使用的对象,释放对应的内存空间.屏蔽内存回收的细节拥有 GC 能力的语言能够为用户屏蔽复杂的内存管理工作,使用户更好地聚焦于核心的业务逻辑.以全局视野执行任务。
2024-09-06 17:16:35
1181
2
原创 【限流器】golang令牌桶限流源码分析
golang扩展库time/rate的限流器源码走读,深入了解了令牌桶的原理,以及go语言做的优化,使用懒加载计算请求间隔间的token生产量。
2024-09-04 12:56:21
803
原创 【rpc框架】分布式框架之微服务
远程方法调用的问题,并且实现调用远程服务像调用本地服务一样简单,框架内部封装实现了网络调用的细节。框架基于tcp集成实现网关、注册中心、服务容错、链路追踪
2024-07-19 17:03:30
922
原创 【grpc】内容回顾
命令`rpc 服务函数名()returns()`将大系统按照功能或者产品进行服务拆分→独立的服务服务间通信→rpc通信连接。
2024-07-15 21:35:04
1113
原创 【rpc框架】分布式框架之认证[ 3 ]
Basic 认证(基础认证),是最简单的认证方式。它简单地将用户名:密码进行 base64 编码后,放到 HTTP Authorization Header 中。HTTP 请求到达后端服务后,后端服务会解析出 Authorization Header 中的 base64 字符串,解码获取用户名和密码,并将用户名和密码跟数据库中记录的值进行比较,如果匹配则认证通过。当然base64并不是加密技术,所以这种认证方式并不安全,即使密码进行加密,攻击者也可以进行重放攻击。Digest 认证(摘要认证)
2024-06-09 15:12:45
1810
原创 【mydocker】容器的进阶[ 4 ]
docker的-d后台运行,commit打包为镜像,ps,logs,exec,rm,-e命令以及容器间隔离。
2024-06-03 20:06:32
1674
原创 【计网】概述、因特网、分组交换、计算机网络性能指标、计算机网络体系结构分层[ 1]
概述、因特网、分组交换、计算机网络性能指标、计算机网络体系结构分层
2024-05-30 15:44:38
618
原创 【mydocker】实现镜像demo---实现pivotroot实现文件系统隔离、镜像与容器隔离、容器持久化数据卷挂载[ 3 ]
Docker 镜像包含了文件系统,所以可以直接运行,我们这里就先弄个简单的,直接将某个镜像中的所有内容作为我们的 rootfs 进行挂载。即:先在宿主机上某一个目录上准备一个精简的文件系统。系统调用pivotroot实现文件系统隔离。实现在容器中进行操作,不会对镜像产生影响。volume实现容器持久化到宿主机。
2024-05-25 18:04:10
799
原创 【mydocker】实现简单的容器demo--容器隔离与资源控制[ 2 ]
匿名管道、cgroups、namespace的go语言代码体现、comtainner command、run、init命令、mount相关问题解决
2024-05-22 08:20:36
344
原创 【mydocker】docker的实现技术讲解[ 1 ]
Namespace技术主要是用于帮助进程隔离出自己单独的空间cgroups技术主要是限制容器的空间资源,保证不会出现争抢。AUFS.
2024-05-19 12:53:21
391
1
原创 【rpc框架】分布式框架设计及其实现[1]
路由、Handler处理器、中间件、orm支持、工具、配置项、插件、http协议支持、内置模板渲染机制。模板渲染的方法ParseFiles与ParseGlob之间的区别?1.可以通过写响应头来指定或者不指定filename下载文件名称。框架使用者上传的状态码会对结果产生一定影响,因此需要作出限制。接口需要支持返回html、json、xml等格式。优化:为节省性能,在启动时将所有模板加载进内存。注意:想要触发浏览器的下载需要设置。2.从某目录的文件系统下载指定文件。路由组中间件、路由中间件。
2024-05-13 15:32:32
238
1
原创 【ES】Go操作elasticsearch
elasticsearch,golang操作es的连接,es的认证,es容器设置密码,索引操作,文档操作
2024-04-24 20:08:59
2034
原创 【ES】分词器,索引库操作,文档操CRUD操作,es容器乱码处理,centos换源阿里云
分词器,索引库操作,文档操CRUD操作,es容器乱码处理,centos换源阿里云
2024-04-22 20:12:47
750
2
原创 ubuntu输入法不能输入中文问题,安装搜狗
在右上角点击键盘图标–>点击配置–>在输入法配置页面的左下角添加搜狗输入法个人版。键盘输入法系统:fcitx(没有就手动安装)默认已经下载fctix。
2023-11-06 17:31:20
816
原创 Redis启动问题:[5124] 17 Sep 15:54:06.172 # Creating Server TCP listening socket 192.168.2.132:6379: b
[12392] 17 Sep 15:54:35.758 # Creating Server TCP listening socket 192.168.2.132:6379: bind: No error
2023-09-17 16:07:12
169
1
空空如也
内核可加载模块怎么才能不报错?
2024-09-15
TA创建的收藏夹 TA关注的收藏夹
TA关注的人