awesome-repositories.com
Blog
MCP
awesome-repositories.com

Discover the best open-source repositories with AI-powered search.

ExploreCurated searchesOpen-source alternativesSelf-hosted softwareBlogSitemap
ProjectMCP serverAboutHow we rankPress
LegalPrivacyTerms
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
eventmachine avatar

eventmachine/eventmachine

0
View on GitHub↗

Eventmachine

EventMachine is a reactor-pattern network framework for Ruby that provides an asynchronous I/O library for performing non-blocking network and file operations. It functions as a network server framework used to build scalable TCP and UDP servers and clients that process multiple simultaneous requests.

The framework implements a concurrency model that dispatches network events to registered handlers using a single-threaded event loop. This approach allows for the management of high-concurrency network connections without the overhead of multi-threaded programming.

The library covers the development of event-driven servers, asynchronous network clients, and network proxy implementations. It also provides capabilities for monitoring files and networks to trigger actions when specific events occur.

AI search

Explore more awesome repositories

Describe what you need in plain English — the AI ranks thousands of curated open-source projects by relevance.

Start searching with AI

Features

  • Ruby Implementations - Provides a reactor-pattern network framework for Ruby to handle high-concurrency connections using a non-blocking event loop.
  • Reactor Pattern Event Loops - Implements a single-threaded event loop that waits for network events and dispatches them to registered callbacks.
  • Asynchronous Network Clients - Provides libraries and interfaces for performing non-blocking, multi-handle network data transfers as a client.
  • IO Multiplexing - Uses system calls like select or epoll to monitor multiple network sockets on a single thread.
  • Event-Driven Networking - Handles network requests and system events asynchronously using a high-performance runtime model for concurrency.
  • Reactor Pattern Network Servers - Provides a framework for building scalable network servers using the reactor pattern and non-blocking I/O.
  • Reactor Patterns - Implements an event-driven loop that dispatches incoming network events to registered handlers using a single-threaded reactor.
  • Event-Driven Server Frameworks - Provides a framework for building applications that handle concurrent connections and event-driven communication.
  • TCP Server Frameworks - Provides the core infrastructure for building high-performance TCP and UDP servers.
  • Asynchronous I/O Libraries - Provides a non-blocking interface for system I/O operations via a reactor event loop.
  • Single-Threaded Execution Models - Handles thousands of simultaneous connections on one thread to eliminate locking and context switching overhead.
  • Event-Driven I/O - Manages network connections and data transfer using an asynchronous I/O framework with event notification loops.
  • Asynchronous Network Callbacks - Triggers Ruby blocks of code immediately in response to network I/O events to maintain non-blocking flows.
  • Ruby Bindings - Binds high-performance network logic written in C to Ruby for faster event processing.
  • Traffic Routing Proxies - Routes network traffic through intermediary servers to manage connection paths with custom logic.
  • Network Proxies - Acts as an intermediary between clients and servers to manage traffic and connection routing.
  • Proxy Server Implementations - Implements proxy server protocols and logic to route traffic between clients and servers.
  • Concurrency and Parallelism - Library for event-driven I/O and lightweight concurrency.
  • Ruby Frameworks and Tools - Event-driven library for Ruby.
4,283 stars·633 forks·Ruby·30 views

Star history

Star history chart for eventmachine/eventmachineStar history chart for eventmachine/eventmachine

How this analysis was created: This summary and feature list are AI-generated from collected project material and can contain mistakes. Stars, license and language are imported from GitHub. Inclusion does not mean that we have tested or audited this project. Check the source documentation for any feature you depend on. Learn more on our About page.

Frequently asked questions

What does eventmachine/eventmachine do?

EventMachine is a reactor-pattern network framework for Ruby that provides an asynchronous I/O library for performing non-blocking network and file operations. It functions as a network server framework used to build scalable TCP and UDP servers and clients that process multiple simultaneous requests.

What are the main features of eventmachine/eventmachine?

The main features of eventmachine/eventmachine are: Ruby Implementations, Reactor Pattern Event Loops, Asynchronous Network Clients, IO Multiplexing, Event-Driven Networking, Reactor Pattern Network Servers, Reactor Patterns, Event-Driven Server Frameworks.

Which projects share features with eventmachine/eventmachine?

Projects with overlapping indexed features include: yedf2/handy — Handy is a C++11 network server framework and event-driven networking engine designed for building high-performance… yuesong-feng/30daymakecppserver — This project is a C++ TCP server framework and educational socket programming guide. It provides a high-performance… chenshuo/muduo — Muduo is a C++11 event-driven network library and framework designed for building high-concurrency Linux servers. It… twisted/twisted — Twisted is an event-driven networking engine for Python that provides a framework for building asynchronous network… swoole/swoole-src — Swoole is a coroutine-based concurrency library and IO framework for PHP. It provides a system for building… balloonwj/cppguide — CppGuide is a curated collection of educational resources and practical guides focused on C++ server development,…

Projects sharing features with Eventmachine

These projects share indexed features with Eventmachine. Shared tags can include platform or build tooling; verify the primary use case before treating a result as a replacement.
  • yedf2/handyyedf2 avatar

    yedf2/handy

    4,653View on GitHub↗

    Handy is a C++11 network server framework and event-driven networking engine designed for building high-performance concurrent TCP and UDP servers. It functions as an asynchronous I/O library and an HTTP server implementation that separates asynchronous network I/O from synchronous business logic to simplify server development. The framework distinguishes itself by utilizing platform-specific event notifications to manage millions of simultaneous network connections and providing an SSL/TLS network wrapper for encrypted asynchronous data transmission. It implements a half-sync/half-async proc

    C++cc-plus-plusconcurrent-programming
    View on GitHub↗4,653
  • yuesong-feng/30daymakecppserveryuesong-feng avatar

    yuesong-feng/30dayMakeCppServer

    7,040View on GitHub↗

    This project is a C++ TCP server framework and educational socket programming guide. It provides a high-performance network library focused on event-driven architecture, implementing a reactor pattern to handle thousands of simultaneous client connections. The framework is distinguished by its multi-threaded event loop, which utilizes a main-sub reactor coordination model to distribute network events across a worker thread pool. It includes an abstraction layer for non-blocking socket I/O and event multiplexing via the epoll system call, decoupling network transport from application business

    C++cppcppserverepoll
    View on GitHub↗7,040
  • chenshuo/muduochenshuo avatar

    chenshuo/muduo

    16,157View on GitHub↗

    Muduo is a C++11 event-driven network library and framework designed for building high-concurrency Linux servers. It provides a toolkit for implementing scalable network services and socket communication using non-blocking I/O and asynchronous event processing. The framework implements a multi-threaded TCP server architecture that distributes connection handling across multiple CPU threads to maximize server throughput. This is achieved through a one-loop-per-thread model and a reactor pattern implementation, which dispatch network events from a central demultiplexer to registered handler fun

    C++
    View on GitHub↗16,157
  • twisted/twistedtwisted avatar

    twisted/twisted

    5,969View on GitHub↗

    Twisted is an event-driven networking engine for Python that provides a framework for building asynchronous network applications. At its core, it uses a reactor-based event loop to drive all input and output, dispatching callbacks in a single thread without blocking. The library implements a deferred promise chain for composing asynchronous logic, along with a protocol and factory pattern that separates connection state management from protocol handling, enabling reusable handlers for different network protocols. The framework supports multiple event loops across platforms, including select,

    Pythonasyncasync-pythondns
    View on GitHub↗5,969
Compare all 30 related projects→