理解Go程序进程的内存空间布局

Linux进程内存分布简介 在Linux系统中,一个程序进程在内存布局上遵循一定规律,进程的内存空间布局由高地址到低地址大致可分为以下几段: 栈(stack): 用户态的栈,栈的大小是固定的,其大小可以使用ulimit -s查看和调整,一般默认为8……

阅读全文

使用Delve的调试和反汇编功能阅读Go源码

Delve是一个专门用于Go语言的调试器,之前整理过Delve的基本使用,使用Delve调试Go程序。 本文进一步介绍如何使用Delve阅读Go的源码并找到一些语法在Go的内部是如何实现的。这里将一下在Go里创建channel的语法为例mak……

阅读全文

Apache Pulsar学习笔记06: Pulsar的Java客户端库

上一节学习了Pulsar中的生产者、消费者、订阅和订阅类型。 当一个消费者连接到Pulsar时,会创建一个订阅(Subscription),订阅有4种类型:独占模式、灾备模式、共享模式和基于key的共享模式。 订阅是命名好的配置规则,指导消息如……

阅读全文

离线部署轻量级Kubernetes发行版K3s

K3s简介 K3s是一个轻量级的Kubernetes发行版,它针对边缘计算、物联网等场景进行了高度优化。 K3s做了以下功能: 将众多k8s组件打包成单个二进制文件,以简化部署,通过封装在简单的启动程序自动处理很多复杂的TLS配置,使K3s具有自……

阅读全文