威联通NAS折腾 Sep 17, 2022

入手了一台威联通TS-564,当作给自己的奖励。

...
什么是trace,分布式调用监控的本质是什么? Aug 12, 2022 ...
Clickhouse文档学习 Jun 30, 2022

ClickHouse是一个列式数据库管理系统,可用于联机分析(OLAP)。ClickHouse最常用的表引擎是MergeTree,下面主要围绕该种表引擎展开。

...
Clickhouse存储Trace调研 Jun 28, 2022

clickhouse是开源的纯列式数据库,定位是OLAP数据库。因为他的一些特性,也广泛用于监控领域,一方面代替时序数据库,存储多维度指标,另一方面也用于存储trace数据。这个博客的目的就是调研下业界如何使用clickhouse存储trace的,围绕表结构和查询sql语句展开,主要调研uptrace的实现。

...
Opentelemetry Java自动埋点实现 Jun 22, 2022

Opentelemetry是怎么做链路追踪的介绍了opentelemetry的API和SDK实现,也介绍了如何进行手动买点。这篇博客是介绍如何进行自动埋点,这当然要用到javaagent技术了。Java Agent实现指南有写过javaagent的实现指南和类加载的坑,今天看看opentelemetry是如何做的,其github地址是opentelemetry-java-instrumentation,接下来应该就是跟着代码流水账了。

...
Go GC初探 Jun 16, 2022 Go目前的GC方案是三色标记法+混合写屏障。 Golang的垃圾回收(GC)算法使用的是无无分代(对象没有代际之分)、不整理(回收过程中不对对象进行移动与整理)、并发(与用户代码并发执行)的三色标记清扫算法。原因在于: 对象整理的优势是解决内存碎片问题以及“允许”使用顺序内存分配器。但 Go 运行时的分配算法基于tcmalloc ...
Caddy源码阅读 Jun 14, 2022 之前我们用了caddy的forwardproxy插件,来看看他是怎么做的 go内置的http服务器实现 http.ListenAndServe(":8080", nil) 如上即可启动go内置的http服务器,第二个参数是nil,于是go会使用内置的handler,代码如下 func (sh serverHandler) ServeHTTP(rw ResponseWriter, req *Request) { handler := sh.srv.Handler if handler == nil { // 如果为nil,则使用内置的ServeMux handler = DefaultServeMux } if req.RequestURI == "*" && req.Method == "OPTIONS" { handler = globalOptionsHandler{} } handler.ServeHTTP(rw, req) ...
Go PProf Jun 2, 2022

记录下如何使用pprof

...
使用Github Codespaces May 16, 2022 前几天Github告诉我说You're now in the CodeSpaces beta,今天体验了下,又发现了一个白嫖计算资源的机会啊。 codespaces能做什么 现在各行各业都在卷,ide这行也都卷到了远程开发这个领域,codespaces也是远程开发的一个解决方案。可以认为Github给你开了一个docker容器,里面运行着一个vscode,vs ...
dd安装rhel8 May 10, 2022

centos8没有了,虽然Red Hat推出了开发者计划,允许用户使用免费的rhel8,但是云服务厂商普遍没有提供rhel8的镜像,一般的用户还是没有办法在vps上用上rhel8,就连centos8的替代品rocky linux、almalinux大部分云服务厂商也没有提供。

这个博客就是介绍下,如何在公有云vps上通过dd写盘安装rhel8系统。

...