25 open-source projects similar to alibaba/transmittable-thread-local, ranked by how many features they have in common. Compare stars, activity and what each one does to find the best Transmittable Thread Local alternative.
Hippo4j is a dynamic thread pool management toolkit for Java applications. It provides a centralized platform for monitoring, adjusting, and extending thread pool behavior across distributed systems without requiring application restarts. The project distinguishes itself through runtime thread pool resizing, allowing live modification of core size, maximum size, queue capacity, and rejection policy. It includes an approval-based change workflow that requires administrative authorization before parameter modifications take effect in production. Hippo4j also exposes container thread pools for T
MockK is a Kotlin test double framework that creates mocks, spies, and relaxed mocks for unit testing, with support for final classes, static methods, and coroutines. It functions as a bytecode instrumentation library that modifies compiled class files at load time to intercept constructors, final methods, and static functions without source changes, and also provides dedicated libraries for constructor mocking and coroutine mocking. The framework is designed specifically for Kotlin, handling Kotlin-specific constructs like extension functions, singletons, and suspend functions. MockK disting
JaCoCo is a Java code coverage tool and bytecode instrumenter that measures which parts of source code are executed during tests. It functions as a runtime agent to monitor application execution on the fly or as a library for offline bytecode instrumentation, allowing it to capture execution data in environments where runtime agents are restricted. The project distinguishes itself by providing both dynamic and static instrumentation paths to track execution. It includes a runtime agent for on-the-fly monitoring and the ability to modify compiled class files before execution. It further enable
This project is a Gradle plugin designed to facilitate aspect-oriented programming within Android applications. It functions as a build-time tool that intercepts method calls to inject cross-cutting logic, allowing developers to centralize concerns such as logging, security, or performance monitoring without modifying individual source files. The plugin distinguishes itself by its ability to perform binary dependency weaving, which applies instrumentation across both local source code and external library formats like JARs and AARs. By utilizing the Gradle Transform API, it integrates directl
btrace is a JVM dynamic tracing tool and performance profiler used for injecting safe instrumentation scripts into a running Java Virtual Machine without requiring a process restart. It functions as a Java agent framework and a Model Context Protocol server, exposing JVM diagnostic operations and tracing tools to large language models and AI assistants. The project distinguishes itself by enabling real-time code injection and bytecode-level instrumentation via a secure binary protocol. It ensures production stability through a static safety analysis engine that blocks unstable code patterns,
jvm-sandbox is a bytecode instrumentation framework and plugin container for the Java Virtual Machine. It acts as a runtime application modifier that enables the injection and modification of bytecode in a running process without requiring an application restart or changes to the original source code. The system provides a non-invasive aspect-oriented programming framework to intercept method execution and alter behavior in live processes. It functions as an isolated environment for functional modules, employing a custom class loader hierarchy to prevent dependency conflicts between plugins a
PowerMock is a Java mocking framework and bytecode manipulation tool designed for unit testing. It functions as a runtime agent and testing utility that enables the mocking of static methods, private constructors, and final classes. The project distinguishes itself by using Java agent instrumentation and custom classloader manipulation to bypass runtime environment locks and encapsulation. These capabilities allow for the simulation of core Java system classes, the mocking of signed classes, and the interception of object construction. The framework covers a broad range of testing utilities,
HotswapAgent is a Java runtime instrumentation agent and bytecode redefinition tool designed to apply code changes to running applications instantly. It functions as a hot swap utility and classloader extender that modifies method bodies and updates class definitions without requiring a process restart. The project distinguishes itself as a framework state synchronizer, ensuring that beans, caches, and configurations remain consistent after class redefinitions. It provides specialized mechanisms to refresh managed beans, dependency injection points, and persistence factories, allowing logic c
Byte Buddy is a runtime code generation and bytecode manipulation library for Java. It provides a fluent API for creating and modifying Java classes during execution, enabling developers to define class structures, methods, and fields programmatically without requiring a compiler or direct bytecode assembly. The library supports agent-based class transformation, allowing loaded classes to be modified during JVM startup or runtime through a Java agent that intercepts class loading. It offers bytecode-level method interception for fine-grained control over method behavior, annotation-based code
Dynamic Thread Pool is a Java framework for the dynamic management, observability, and orchestration of thread pools. It allows for the real-time adjustment of thread pool parameters via external configuration centers without requiring application restarts. The project distinguishes itself by providing middleware orchestration, enabling the interception and tuning of thread pools embedded within third-party web servers and RPC frameworks. It further supports distributed tracing by propagating execution contexts and metadata from submitting threads to worker threads to maintain observability a
This project is a diagnostic utility for monitoring and analyzing memory consumption in Python applications. It provides tools for tracking resource usage at the process level and performing detailed, line-by-line analysis to identify memory leaks and performance bottlenecks. The tool distinguishes itself through its ability to aggregate memory metrics across entire process trees, capturing the total resource impact of both parent and child processes. It supports time-series visualization of memory usage over the duration of a script, allowing for the identification of long-term consumption p
This project is a structured tracing framework for Rust that serves as an async-aware instrumentation library and telemetry data collector. It provides a structured logging facade and the tools necessary to record, filter, and route event-based diagnostic data from both standard applications and embedded systems. The framework distinguishes itself through a core implementation that supports bare-metal and no-standard-library environments without requiring a dynamic memory allocator. It specifically handles the complexities of asynchronous workflows by propagating diagnostic contexts across fu
Bullet is an Active Record performance monitor and query profiler for Ruby on Rails applications. It serves as a diagnostic utility to identify inefficient database access patterns, flag redundant requests, and suggest eager loading strategies to improve response times. The tool specifically detects N+1 queries, missing counter caches, and unused eager loading. It monitors these patterns across both standard web requests and background jobs, identifying records that are fetched but never accessed to reduce memory usage and query overhead. Analysis is supported by a system that intercepts dat
Gevent is a Python coroutine concurrency library and asynchronous task manager designed for high-concurrency I/O tasks. It provides a cooperative networking framework for building asynchronous TCP, UDP, and HTTP servers, as well as a WSGI web server implementation for hosting web applications. The project is distinguished by its standard library monkey-patching tool, which replaces blocking synchronous functions with cooperative versions to enable asynchronous behavior in third-party code. This allows for a cooperative multitasking workflow where the system yields execution during I/O waits t
structlog is a structured logging library for Python that treats log entries as dictionaries instead of strings. This data-centric approach enables machine-readable output and precise data analysis by generating log entries as key-value pairs. It functions as both a standalone logging framework and a compatibility layer that adds structured capabilities to the Python standard library logging module. The library features a processor-pipeline architecture that passes log dictionaries through a sequence of functions to modify events or add metadata before final rendering. It includes a contextua
cppcoro is a C++ coroutine library and concurrency toolkit providing primitives for asynchronous tasks, lazy generators, and non-blocking execution. It functions as an asynchronous I/O framework for managing network sockets and file operations through an event loop. The library features a work-stealing thread pool for distributing tasks across multiple cores and a set of async generators for producing lazy sequences of values both synchronously and asynchronously. It includes a concurrency toolkit with async mutexes, latches, and shared tasks to coordinate multi-threaded execution. Its capab
Mikro-ORM is a TypeScript-based object-relational mapping system that provides a unified persistence layer for Node.js applications. It translates TypeScript entities into relational or document-based database schemas, supporting a variety of engines including PostgreSQL, MySQL, MariaDB, MS SQL Server, SQLite, and MongoDB. The project implements the data mapper pattern to decouple in-memory domain models from the database persistence layer. It utilizes a unit of work pattern to track entity changes in memory and commit them in a single coordinated database transaction. The library covers com
Werkzeug is a comprehensive library and toolkit for building WSGI-compliant web applications in Python. It provides the fundamental building blocks for web development, including an HTTP request and response toolkit, a rule-based URL routing engine, and a library for managing the overall web application lifecycle. The project is distinguished by its integrated development suite, which includes a WSGI development server featuring automatic code reloading and a PIN-protected interactive browser debugger for inspecting call stacks. It also includes a specialized WSGI test client that enables the
Hug is a type-driven Python web framework designed for building APIs. It uses Python type annotations to automatically validate and convert incoming request data and to format outgoing responses. The framework functions as an automated documentation tool by extracting function signatures and markers from source code to generate accessible API specifications. It also supports non-blocking coroutines for asynchronous API processing to handle background tasks without interrupting the main request cycle. The project provides capabilities for REST API development, including route mapping, endpoin
Bud is a full-stack web framework for Go that functions as a scaffolding engine and code generation tool. It automates the creation of directory structures, controllers, and glue code to streamline the development of web applications. The framework utilizes a transpiler-based approach to produce application boilerplate and provides a development environment featuring hot reloading and local server management. It enables the compilation of applications into single, standalone binaries with support for cross-platform compilation across different operating systems and architectures. The system
Eino is an AI agent development kit and LLM application framework designed for building autonomous agents and orchestrating complex language model workflows. It serves as a multi-agent orchestration engine and workflow orchestrator, providing a graph-based execution model to route data between models, tools, and retrievers. The framework distinguishes itself through a robust set of multi-agent coordination patterns, including supervisor-led management, sequential flows, and autonomous reasoning loops like ReAct. It features advanced agent execution controls such as active turn preemption, che
PaperTrail is a Ruby on Rails versioning library and database audit trail system. It tracks changes to database models by capturing historical snapshots of object states and associating every modification with the specific user or process responsible for the update. The project provides a model state reification tool to reconstruct model instances as they existed at a specific point in time and a data recovery framework to restore deleted database records by reifying their last known version. The system covers a broad range of capabilities including version history navigation, changeset-base
Mybatis-PageHelper is a pagination plugin and persistence framework extension for MyBatis. It functions as a physical pagination engine that automatically appends limit and offset clauses to SQL queries to retrieve specific record subsets from a data source. The project optimizes data retrieval by modifying SQL statements at runtime to reduce memory overhead. It implements database pagination and data set windowing to manage the retrieval of paginated data within Java applications. The system utilizes a MyBatis interceptor chain for dynamic SQL rewriting and employs database dialects to ensu
This project is a framework for building interactive, graphical-style terminal applications. It provides a declarative component model that organizes user interfaces into a tree of nested widgets, each managing its own lifecycle, state, and rendering. By subclassing the base application class, developers can construct complex, keyboard-navigable interfaces that run directly within terminal emulators. The framework distinguishes itself through a reactive architecture and a CSS-based layout engine. It uses a reactive attribute system to automatically track state changes and trigger targeted int
Salvo is a comprehensive Rust web framework for building asynchronous HTTP servers and web applications. It features a hierarchical web router that uses a tree-based structure to map requests to handlers and an asynchronous middleware pipeline based on the onion model for request and response pre- and post-processing. The framework is distinguished by its native support for modern network protocols, including a QUIC-based HTTP/3 implementation alongside HTTP/1 and HTTP/2. It includes an integrated OpenAPI documentation generator that extracts schemas directly from handler signatures to produc