17 个仓库
Design patterns that isolate state within threads to eliminate synchronization bottlenecks.
Distinguishing note: Focuses on state isolation to prevent lock contention.
Explore 17 awesome GitHub repositories matching software engineering & architecture · Shared-Nothing Architectures. Refine with filters or upvote what's useful.
This project is a command-line HTTP load testing tool designed to measure the throughput and latency of web servers under high-concurrency conditions. It functions as a multi-threaded benchmarking engine that simulates thousands of simultaneous connections to evaluate server performance, identify bottlenecks, and determine capacity limits. The tool distinguishes itself through a shared-nothing thread architecture that isolates state within individual threads to eliminate lock contention during high-frequency request generation. It utilizes a non-blocking event loop and low-latency socket poll
Isolates state within individual threads to eliminate lock contention and synchronization bottlenecks.
Presto is a distributed SQL query engine designed for high-performance analytical processing across heterogeneous data sources. It functions as a data federation platform and massively parallel processing engine, allowing users to execute interactive queries against diverse storage systems without requiring data migration. By mapping remote metadata and structures to a unified relational namespace, it enables seamless cross-platform analysis through a standard SQL interface. The engine distinguishes itself through a pluggable connector architecture and a shared-nothing distributed processing
Executes tasks independently on worker nodes by exchanging intermediate data through a high-performance network shuffle mechanism.
FoundationDB is an ACID-compliant distributed transactional key-value store. It functions as a scalable database engine that ensures strict serializability and data consistency across a cluster of servers using a shared-nothing architecture. The system is distinguished by its multi-region replication capabilities, allowing data to be synchronized across different datacenters for high availability and disaster recovery. It utilizes optimistic concurrency control to manage distributed transactions and employs a majority-based coordination system to maintain cluster state. The platform provides
Expands storage and throughput by adding commodity servers to a shared-nothing architecture.
Ceph is a unified, software-defined storage platform designed to provide object, block, and file storage services from a single distributed cluster. By decoupling data management from physical hardware, it enables elastic scaling across commodity hardware, allowing organizations to build large-scale storage infrastructure without reliance on proprietary vendor equipment. The system distinguishes itself through a shared-nothing, distributed architecture that utilizes deterministic hashing for data placement. This approach eliminates centralized metadata bottlenecks, allowing the cluster to sca
Operates as a collection of independent nodes that manage their own resources to maximize throughput and eliminate single points of failure.
Scylla is a distributed wide column NoSQL database designed as a high-performance data store. It functions as a Cassandra compatible database and a DynamoDB compatible store, implementing a shared-nothing architecture built on an asynchronous event-driven framework. The system emulates cloud-based APIs to support applications built for proprietary cloud protocols and implements the Cassandra Query Language for high-throughput workloads. This allows for the migration of cloud workloads to self-hosted environments while maintaining API compatibility. The project covers distributed data storage
Implements a shared-nothing architecture to isolate state and eliminate lock contention between CPU cores.
Doris is a distributed SQL data warehouse designed for high-performance analytical workloads and real-time data processing. It functions as a unified platform that integrates traditional relational warehousing with lakehouse query capabilities, allowing users to execute analytical operations directly against external data lakes without requiring data migration. The system distinguishes itself through a shared-nothing, massively parallel processing architecture that utilizes vectorized query execution and columnar storage to maintain sub-second latency. It supports dynamic schema evolution, en
Maintains independent node states to eliminate central bottlenecks and ensure linear scalability.
ScyllaDB is a distributed NoSQL database engine designed for high-throughput data storage and low-latency performance at scale. It functions as a shard-aware platform that manages large-scale datasets across distributed clusters, providing a foundation for real-time applications that require consistent availability and operational stability. The system distinguishes itself through a shared-nothing architecture that distributes data across independent CPU cores to eliminate lock contention. It incorporates a user-space networking stack and an asynchronous event-driven engine to maximize hardwa
Distributes data across independent CPU cores to eliminate lock contention and maximize hardware utilization for high-throughput operations.
Apache Druid is a real-time analytics database and distributed columnar time-series store designed for sub-second analytical queries. It functions as a data platform featuring a distributed SQL query engine and a real-time data ingestion system for moving historical and streaming data from external sources. The system is distinguished by its ability to provide low-latency analytics under high concurrency to power operational dashboards. It implements a Kerberos-secured environment for user authentication and employs a shared-nothing cluster architecture to enable horizontal scaling. The plat
Employs a shared-nothing processing model to execute tasks independently on worker nodes, enabling horizontal scaling.
Nebula is a distributed graph database designed for storing and querying massive volumes of interconnected vertices and edges across a horizontally scalable cluster. It functions as a Kubernetes-native database and a distributed graph analytics engine, utilizing a Raft-based distributed store to ensure strong consistency and high availability. The system features an OpenCypher query engine for performing complex graph traversals and pattern matching. It distinguishes itself with a decoupled compute-storage architecture and a shared-nothing distributed design, allowing query processing and dat
Employs a shared-nothing architecture to distribute data and processing across independent nodes.
StarRocks is a distributed SQL OLAP database engine designed for real-time analytics and high-performance multi-dimensional analysis. It functions as a data lakehouse query engine that enables SQL execution across large datasets and external open table formats without requiring local data imports. The system employs a shared-nothing distributed architecture and utilizes the MySQL protocol to integrate with business intelligence tools. It maintains real-time data consistency through a primary key upsert model and accelerates query response times using vectorized execution and cost-based optimi
Employs a shared-nothing distributed processing model where each node manages its own local storage and memory.
Databend is a cloud-native data warehouse and OLAP database designed for large-scale analytics. It functions as a SQL-compliant engine and serverless analytics platform that separates compute from storage to allow for independent scaling. The system integrates vector database capabilities, indexing high-dimensional embeddings to enable semantic, hybrid, and full-text searches across massive datasets. It further distinguishes itself through serverless compute management that automatically scales resources based on demand and shuts them down during idle periods. The platform covers a broad set
Distributes query processing across independent worker nodes to ensure high performance and availability.
Seastar is a C++ server application framework and asynchronous programming library designed for building high-performance, shared-nothing server applications. It functions as a high-performance I/O engine providing direct disk and network access through a shared-nothing framework that partitions data and execution across CPU cores. The framework distinguishes itself through a thread-per-core architecture that eliminates locking and resource contention by assigning one execution thread to each physical CPU core. It implements a userspace TCP/IP stack and kernel-bypass techniques, integrating w
Utilizes a shared-nothing architecture to distribute data and workloads across cores, eliminating lock contention.
这是一个专注于 Nginx 架构分析和模块开发的教育资源。它提供了一种结构化的方法来研究服务器如何处理流量以及如何自定义核心服务器行为。 该材料涵盖了用于创建自定义服务器扩展的 C 语言系统编程。它指导编写新模块并将其集成到服务器源代码中的过程,以实现专门的网络逻辑或自定义协议。 该课程检查内部服务器组件,包括内存池、请求处理链和基于模块的扩展系统。它详细介绍了内部架构以及使用底层数据结构来管理网络流量。
Implements a shared-nothing architecture to distribute load across independent worker processes without lock contention.
AliSQL is a fork of MySQL by Alibaba that extends the relational database management system with enhancements for high performance, scalability, and enterprise-grade availability. It retains the core MySQL identity as a SQL-based database for storing, organizing, and retrieving structured data, while adding optimizations for large-scale transactional and analytical workloads. The project differentiates itself through a set of Alibaba-specific improvements, including a columnar engine for accelerating analytical queries directly on MySQL tables, and a distributed, shared-nothing NDB Cluster en
Distributes data and processing across independent nodes for horizontal scaling without contention.
Sozu 是一个用 Rust 构建的高性能、内存安全的反向代理和负载均衡器。它旨在通过多进程架构管理 HTTP、TCP 和 UDP 流量,该架构利用隔离的工作进程来确保跨多核硬件的容错性和高效资源利用。 该项目通过专注于持续可用性和动态控制脱颖而出。它具有独特的二进制热重载机制和基于 Unix 套接字的控制平面,允许管理员更新代理配置、修改监听器设置,甚至在不丢弃活动客户端连接或中断服务的情况下替换代理二进制文件。这种设计确保了基础设施在更新和运行时调整期间保持响应和安全。 除了核心路由功能外,该代理还提供了一套全面的边缘安全和流量管理工具。它处理 TLS 终止、强制执行访问控制策略并缓解基于协议的洪水攻击(特别是针对 HTTP/2 流量)。该系统还包括广泛的可观测性功能,为所有配置更改和系统事件提供实时性能监控、分布式跟踪传播和结构化审计日志。
Maintains proxy state within individual worker processes to eliminate lock contention and improve performance.
Nano is a distributed application framework designed for building systems using an actor-based messaging model. It functions as a distributed actor framework that decouples components through asynchronous messaging to maintain state isolation across a server cluster. The system acts as a cluster message dispatcher and session-aware request router, tracking client state to route incoming messages to the specific agent holding the session data. It utilizes a distributed agent registry to coordinate the dispatching of messages between multiple application instances acting as agents. The framewo
Employs a shared-nothing architecture where each cluster node manages its own memory and communicates via network messages.
Mayastor is a software-defined, cloud-native block storage solution designed to provide high-performance, persistent storage for stateful applications within container orchestration environments. It functions as a distributed storage control plane that decouples application data from physical hardware, enabling dynamic provisioning and management of block volumes across clustered nodes. The platform distinguishes itself by utilizing a user-space storage driver architecture that bypasses kernel overhead to maximize hardware performance. It leverages the NVMe-over-Fabrics protocol to deliver lo
Decouples storage resources from physical hardware to allow independent scaling and migration of volumes across a distributed cluster.