· ☕ 1 分钟
https://www.berrange.com/posts/2017/02/16/setting-up-a-nested-kvm-guest-for-developing-testing-pci-device-assignment-with-numa/ https://www.researchgate.net/publication/288022470_The_Effect_of_NUMA_Tunings_on_CPU_Performance http://linux-hacks.blogspot.com/2009/07/fake-numa-nodes-in-linux.html

· ☕ 1 分钟
Getting Started — Jaeger documentation Jaeger documentation Getting Started — Jaeger documentation OpenTelemetry — Jaeger documentation OpenTelemetry — Jaeger documentation

· ☕ 1 分钟
https://github.com/open-telemetry/opentelemetry-java-instrumentation/blob/main/docs/contributing/writing-instrumentation.md

· ☕ 1 分钟
Website docs Java | OpenTelemetry Manual Instrumentation | OpenTelemetry OpenTelemetry Client Design Principles | OpenTelemetry Instrumentation Examples | OpenTelemetry OpenTelemetry to Jaeger Transformation | OpenTelemetry Java | OpenTelemetry GitHub - open-telemetry/opentelemetry-java-docs Getting Started | OpenTelemetry Java | OpenTelemetry Manual Instrumentation | OpenTelemetry OpenTelemetry Client Design Principles | OpenTelemetry Instrumentation Examples | OpenTelemetry OpenTelemetry to Jaeger Transformation | OpenTelemetry Java | OpenTelemetry GitHub - open-telemetry/opentelemetry-java-docs Getting Started | OpenTelemetry Java | OpenTelemetry Manual Instrumentation | OpenTelemetry OpenTelemetry Client Design Principles | OpenTelemetry Instrumentation Examples | OpenTelemetry OpenTelemetry to Jaeger Transformation | OpenTelemetry Java | OpenTelemetry GitHub - open-telemetry/opentelemetry-java-docs Getting Started | OpenTelemetry https://stackoverflow.

· ☕ 1 分钟
Website docs Github GitHub - open-telemetry/opentelemetry-java-instrumentation: OpenTelemetry auto-instrumentation and instrumentation libraries for Java opentelemetry-java-instrumentation/suppressing-instrumentation.md at main · open-telemetry/opentelemetry-java-instrumentation · GitHub opentelemetry-java-instrumentation/supported-libraries.md at main · open-telemetry/opentelemetry-java-instrumentation · GitHub org.springframework.web.reactive (Spring Framework 5.3.16 API) opentelemetry-java-instrumentation/supported-libraries.md at main · open-telemetry/opentelemetry-java-instrumentation · GitHub opentelemetry-java-instrumentation/logger-mdc-instrumentation.md at main · open-telemetry/opentelemetry-java-instrumentation · GitHub opentelemetry-java/README.md at main · open-telemetry/opentelemetry-java · GitHub opentelemetry-java-instrumentation/agent-config.md at main · open-telemetry/opentelemetry-java-instrumentation · GitHub opentelemetry-java-instrumentation/common.md at main · open-telemetry/opentelemetry-java-instrumentation · GitHub opentelemetry-java/README.md at main · open-telemetry/opentelemetry-java · GitHub

· ☕ 1 分钟
images and layers https://docs.docker.com/storage/storagedriver/#images-and-layers

· ☕ 2 分钟
https://grafana.com/docs/grafana/latest/variables/variable-types/global-variables/ $__range Currently only supported for Prometheus and Loki data sources. This variable represents the range for the current dashboard. It is calculated by to - from. It has a millisecond and a second representation called $__range_ms and $__range_s. $__interval You can use the $__interval variable as a parameter to group by time (for InfluxDB, MySQL, Postgres, MSSQL), Date histogram interval (for Elasticsearch), or as a summarize function parameter (for Graphite).

· ☕ 2 分钟
https://iximiuz.com/en/posts/prometheus-metrics-labels-time-series/ What is a time series in Prometheus? *Side note 1: Despite being born in the age of distributed systems, every Prometheus server node is autonomous. I.e., there is no distributed metric storage in the default Prometheus setup, and every node acts as a self-sufficient monitoring server with local metric storage. It simplifies a lot of things, including the following explanation, because we don’t need to think of how to merge overlapping series from different Prometheus nodes *😉

· ☕ 1 分钟
https://iximiuz.com/en/posts/prometheus-vector-matching/

· ☕ 0 分钟

· ☕ 3 分钟
https://iximiuz.com/en/posts/prometheus-functions-agg-over-time/ Almost all the functions in the aggregation family accept just a single parameter - a range vector. It means that the over time part, i.e., the duration of the aggregation period, comes from the range vector definition itself. The only way to construct a range vector in PromQL is by appending a bracketed duration to a vector selector. E.g. http_requests_total[5m]. Therefore, an <agg>_over_time() function can be applied only to a vector selector, meaning the aggregation will always be done using raw scrapes.

· ☕ 1 分钟
https://en.wikipedia.org/wiki/Cache_coherence Theoretically, coherence can be performed at the load/store granularity. However, in practice it is generally performed at the granularity of cache blocks.[3] https://www.geeksforgeeks.org/cache-coherence/ Cache coherence is the discipline that ensures that changes in the values of shared operands are propagated throughout the system in a timely fashion. http://tutorials.jenkov.com/java-concurrency/cache-coherence-in-java-concurrency.html

· ☕ 1 分钟
https://events.static.linuxfound.org/sites/events/files/slides/Optimizing%20Application%20Performance%20in%20Large%20Multi-core%20Systems_0.pdf Ticket spinlock is the spinlock implementation used in the Linux kernel prior to 4.2. A lock waiter gets a ticket number and spin on the lock cacheline until it sees its ticket number. By then, it becomes the lock owner and enters the critical section. Queued spinlock is the new spinlock implementation used in 4.2 Linux kernel and beyond. A lock waiter goes into a queue and spins in its own cacheline until it becomes the queue head.