自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 pulsar-topic

linux 中管道,1. 使用管道符通过 “|”,左侧为写入端口,右侧为读取端;2. 单向管道,比如父子进程可以通过创建匿名管道进行通信。( pipe 系统调用函数的参数列表中有一个数组,是一个输出型参数。

2024-07-21 18:18:06 971

原创 pulsar学习-message

In Shared subscription type, messages are acknowledged individually.因为会有多个消费者能够使用同一个 subscription。如果能主动的了解到是否失败,那么主动的去重新拉取消息要比超时等待的策略要好。当然,二者可以结合使用。默认配置中当一个数据被全部的 subscriptions 消费后可以被删除。重试队列和延迟队列区别:Retry letter topic serves。ack 的发送在 consumer 消费成功后给broker。

2024-07-18 21:38:56 888

原创 golang 内敛策略

判断函数是否可以 inline :* -gflags=“-m” 显示被内连的函数* -gflags=“-m -m” 显示原因* -gcflags=“-d pctab=pctoinline” 显示内敛映射表。

2024-07-16 20:58:22 359

原创 软件设计文档模板和各个部分说明

sa:系统分析sd:系统设计sp:结构化编程。

2024-07-14 12:48:45 357

原创 【无标题】

J2EE 是针对 webService、业务对象、数据访问和消息传送的一组规范(具体就是一组 api 构成的协议),比如 mysql 等数据存储厂商根据 JNDI 接口规范开发对应的 sdk,从而让各种 java 程序能使用统一的方法来访问数据。各个平台开发商基于 J2EE 开发了不同的J2EE应用服务器,。由于它们都遵循了J2EE规范,因此,使用J2EE技术开发的企业级应用可以部署在各种J2EE应用服务器上。J2EE 核心是为了注重两个事情:* 建立标准,让 web 应用的部署与服务器无关;

2024-06-25 23:12:06 541

原创 服务网格-Istio学习

服务网格技术是对发现服务解耦后的微服务架构之后,进一步对通信、负载、流量控制、可观测性这些业务之外的功能进行解耦,并基于容器化技术,利用边车模式设计的新一代微服务架构。相关产品:阿里:AMS百度:CMSGoogle 的开源:IstioAMS、CMS都是基于 Istio 来的。实践好文:https://zhuanlan.zhihu.com/p/383011285。

2024-05-14 19:57:40 601 2

原创 Redis 学习

https://redis.io/docs/latest/develop/data-typesredis 设计是围绕着内存和 map 进行设计的,围绕着 map 是说,其本质是 kv 类型的 noSql ,比如一些过期的 key 会记录到内部的过期mp 结构中,正常的值,也是通过 map 来管理的。SDS 字符串、List 、Set 、Hashs 、Streams、Bitmaps二进制安全空间预分配,懒回收,分配时 * 2,如果大于 1M,每次走 1M。最大 512MBINCR command

2024-05-13 17:26:07 657 1

原创 ETCD 学习

官网:https://etcd.io/docs/v3.3/learning/client-architecture/参考blog : https://www.cnblogs.com/huageyiyangdewo/p/17558210.html主要参考和引用:https://blog.csdn.net/qq_24433609/article/details/120653747。

2024-05-06 15:48:41 581

原创 系统设计学习-秒杀系统

尽量满足高并发,用户体验良好,支持延迟取消订单。

2024-04-30 14:54:17 495

原创 Golang 底层原理剖析笔记-锁

readerWaite - 1 == 0 ,表示为最后一个读请求结束,唤醒写锁 : runtime_Semrelease(&rw.writerSem, false, 1)引用自:https://baijiahao.baidu.com/s?使用锁 + 信号量来实现,主要通过计数逻辑来对读写锁进行排队管理:读的时候判断读数量是否小于 0 , 小于 0 表示有写锁在等待。加写锁的时候必须先进行mutex的加锁,而mutex本身在普通模式下是非公平的(抢占式的),只有在饥饿模式下才是公平的(FIFO)

2024-04-29 16:37:27 516

原创 Golang 底层原理剖析笔记-垃圾回收

内存分配 : TCmalloc 算法标记:三色标记,辅助清扫:大对象或者 mcentral 申请内存时,会触发辅助清扫的机制,若清扫 span 小于目标 span 树,会协助进行辅助清除。清楚系统主流内存:单独清扫协程,定期进行,维持在占 CPU 1% 时间。删除机制:span 为单位,1.5 后有辅助清扫的机制理论: 不基于分代是否并发:是,1.5 后可与用户协程一起并发。

2024-04-29 15:29:30 272

原创 Golang 底层原理剖析笔记-内存模型

golang 内存管理采用的连续内存管理的动态内存管理的运作机制。思想主要基于 Two LevelSegregated Fit(TLSF),具体实现基于 tcmalloc 算法。Span : 一段连续内存空间,共分为 67 个几杯。

2024-04-29 14:49:35 489

原创 gRPC 和 etcd

官网 : https://protobuf.dev/

2024-04-29 14:28:55 166

原创 项目整体搭建流程学习笔记

框架搭建:搭建基础框架,包括基础客户端、通信协议、API 设计、必传公共参数、日志处理方式、错误码设计、基础类的抽象接口。设计评审:主要说服别人这个技术可以满足这个需求,包括性能需求、业务需求、未来潜在的扩展需求。部署:部署一定要检查数据库配置、端口配置、路由配置、上线先后顺序、系统配置、依赖三方等。业务逻辑划分:责任的划分,划分清楚,做好分工,防止后期功能实现上的扯皮。开发流程:一定进行划分,部分完成,部分自测,小功能完成后对齐一次。统一语意:包括专业术语、名次、命名风格、模块名称等。

2024-04-26 10:29:09 248 1

原创 Golang 底层原理剖析笔记-数据结构

【代码】Golang 底层原理剖析笔记-数据结构。

2024-04-24 14:37:19 398

原创 Kafka 技术内幕笔记

功能的使用上是基于消费订阅模式设计的,在配置变更的维护上采用监听者模式实现的,其中ZK作为监听者模式的 context 存在的。

2024-04-13 21:17:30 681 1

空空如也

空空如也

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

TA关注的人

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