240 发简信
IP属地:安徽
  • 120
    Linux虚拟内存管理与JVM内存reserved/committed含义

    1.Linux虚拟内存管理 当程序运行起来之后就变成了进程,业务数据结构的引用在进程的视角里全都都是虚拟内存地址,因为进程无论是在用户态还是在内核态能够看到的都是虚拟内存空间...

  • 120
    Java进程内存组成

    1.组成部分 Java内存分为两部分: 堆内存堆内存由GC垃圾回收期进行管理。 非堆内存非堆内存包括:Java方法栈、本地方法栈、元空间Metaspace、直接内存、代码缓存...

  • 120
    JRaft源码剖析4-图解JRaft源码

    1.Leader选举 1.1 预选举 1.2 正式选举 1.3 Leader降级 2.日志复制 2.1 日志生成 2.2 pipeline机制 2.3 发送探针 2.4 日志...

  • JRaft源码剖析4-快照机制

    1.为什么引入快照机制? 快照机制本质上也是一种对日志数据复制的优化手段。 两个问题: 1)因为日志数据需要落盘存储,当日志数据量大到磁盘空间无法容纳时,除了扩容是否还有其它...

  • JRaft源码剖析3-日志复制

    1.日志复制原理 Raft 中的日志主要可以分为两类: 一类是协议自身运行所生成的日志,例如集群节点配置变更信息; 另外一类就是用户向集群提交的指令所生成的日志。 为了让集群...

  • JRaft源码剖析2-Leader选举

    1.term 和 logIndex Raft 算法设计了 term 和 logIndex 两个属性,分别用于表示 Leader 节点的任期,以及集群运行期间接收到的指令对应的...

  • JRaft源码剖析1-节点启动过程

    1.RpcServer 添加系统自带的processors。RaftRpcServerFactory#addRaftRequestProcessors() 另外可以注册自定义...

  • 120
    golang pprof

    0.flat/cum含义 针对CPU:Total:总共采样次数,这里是2525次。Flat:函数在样本中处于运行状态的次数。简单来说就是函数出现在栈顶的次数,而函数在栈顶则意...

  • 120
    深入探索Prometheus Exporter

    前言 当下开源发展超乎想象,连腾讯,阿里这种大厂都在不断追赶各种开源,享受开源的红利。 开源时代的到来颠覆了传统IT生命周期发展的步伐,自研时代的“重开发”,到开源时代的“重...

  • golang死锁

    1.sync.Mutex 在Go语言的sync包中,sync.Mutex是不可重入的互斥锁。这与Java可重入锁改变不同。 也就是说,当一个goroutine获得了Mutex...

  • 120
    安装prometheus和各种exporter

    1.prometheus nohup ./prometheus --config.file=prometheus.yml & prometheus.yml 2.node_ex...

  • Dockerfile命令

    1.FROM 指定基础镜像(必选) 所谓定制镜像,那一定是以一个镜像为基础,在其上进行定制。就像我们之前运行了一个 nginx 镜像的容器,再进行修改一样,基础镜像是必须指定...

  • go语言json解析和yaml解析的坑

    结构体中的字段名首字母需大写,这样解析json时才能赋值;字段名小写的话,解析不会报错,但是字段都是空值。 另外在进行yaml配置解析时,也会出现这个问题,如果结构体的属性名...

  • go并发

    Go 从语言层面就支持并发。同时实现了自动垃圾回收机制。 协程:独立的栈空间,共享堆空间,调度由用户自己控制,本质上有点类似于用户级线程,这些用户级线程的调度也是自己实现的。...

  • 120
    go核心语法

    1.指针 指针(pointer)在Go语言中可以被拆分为两个核心概念: 类型指针,允许对这个指针类型的数据进行修改,传递数据可以直接使用指针,而无须拷贝数据,类型指针不能进行...

  • 解决golang提示dial tcp 172 .217.163.49:443: connectex: A connection attempt failed

    解决方法:改成我们国内可用的代理地址 在命令提示符输入: go env -w GOPROXY=https://goproxy.cn[https://goproxy.cn] 然...

  • 120
    10 年资深架构师推荐 21 本技术好书

    李运华 在专栏《从 0 开始学架构》更新的时候,很多同学留言希望我推荐一些书籍可以课后继续学习,正好我自己也是一个爱读书的人,最近 7 ~ 8 年,平均每年读书超过 50 本...

  • 120
    DDD笔记5:实践中的问题和关键点

    1.CI/CD CI持续集成 通过自动化流程持续把各个开发者的工作集成到一起,避免过大的集成成本。 包括代码规范化版本控制、代码检查、代码构建和自动化单元测试。 CD继续交付...

  • 120
    DDD笔记4:DDD和微服务

    1.为什么要重构,微服务的优点 单体问题 开发、测试、发布苦不堪言 故障排查难 微服务的优点 技术异构性 容错性 灵活扩展 简化部署 与组织结构匹配 可组合性 方便替代和升级...

  • 120
    DDD笔记3:战术设计(运营域)

    1.环境和周边系统说明 上下文交互: 内部鉴权: 建模工具 便利贴 Miro draw.io / processon 云: 云主机 消息队列 大数据处理和可视化 2.领域事件...

个人介绍
叠加思维,持续积累