寫點東西吧,懒人。

Brendan@Intel.com
· ☕ 5 分钟
Brendan Gregg 加入 Intel

gdb 调试 istio proxy (envoy)
· ☕ 2 分钟
出于各种原因,需要 debug istio-proxy (envoy),记录一下步骤,希望地球上的有缘人有用。

2022年书目推荐 —— 来自 goto podcast
· ☕ 9 分钟

前言

不知不觉,口罩一戴就是两年。快到年底了,是时候翻开年初写的总结和计划,看看那个梦想中的自我和实现中的自我的距离了。如果看完这个距离,还是对来年有憧憬,那么我们来看看有什么可以改变的。


码农幽默英语排行榜 S1E1
· ☕ 3 分钟

缘起

还记得 15 年前,外企还是相当部分程序员的向往。而 2021 了,情况有了相当大的变化。开源界也有相当多的国人开源项目和文档了。所以很多新码农开始提出一个问题:都 2021 了,英文还是码农的基本素养吗?


Benchmark Tools
· ☕ 1 分钟

CPU Benchmark

The SysBench system benchmark suite has a simple CPU benchmark tool that calculates prime numbers. For example:

# sysbench --num-threads=8 --test=cpu --cpu-max-prime=100000 run
sysbench 0.4.12:  multi-threaded system evaluation benchmark

Running the test with following options:
Number of threads: 8

Doing CPU performance benchmark

Threads started!
Done.

Maximum prime number checked in CPU test: 100000

Test execution summary:
    total time:                          30.4125s
    total number of events:              10000
    total time taken by event execution: 243.2310
    per-request statistics:
         min:                                 24.31ms
         avg:                                 24.32ms
         max:                                 32.44ms
         approx.  95 percentile:              24.32ms

Threads fairness:
    events (avg/stddev):           1250.0000/1.22
    execution time (avg/stddev):   30.4039/0.01

This executed eight threads, with a maximum prime number of 100,000. The runtime was 30.4 s, which can be used for comparison with the results from other systems or configurations (assuming many things, such as that identical compiler options were used to build the software; see Chapter 12, Benchmarking).


tty
· ☕ 3 分钟

Jobs

img

img

  • SIGHUP

    • 默认动作:Terminate
    • 可能动作:Terminate, Ignore, Function call

    检测到 hangup 时,UART 驱动会向整个 session 发送 SIGHUP 信号。 正常情况下,这会 kill 掉所有进程。某些程序,例如 nohup(1)screen(1),会从他们的 session(和 TTY)中 detach 出来, 因此这些程序的子进程无法关注到 hangup 事件。


Java 内置 Class Loader
· ☕ 3 分钟

内置 Classloader

The class loader delegation model

Class loaders load classes and resources present on their respective classpath:

  • System or application class loaders load classes from the application classpath
  • Extension class loaders search on the Extension classpath (JRE/lib/ext)
  • Bootstrap class loader looks on the Bootstrap classpath (JRE/lib/rt.jar)

We can customize the default class loading behavior as well. We can explicitly specify the class loader while loading a class dynamically.

However, we should note that if we load the same class from different types of class loaders, these will be seen as different resources by the JVM.