libevent - an event notification library

  •        1724

The libevent API provides a mechanism to execute a callback function when a specific event occurs on a file descriptor or after a timeout has been reached. It is meant to replace the asynchronous event loop found in event-driven network servers.

http://libevent.org/
http://sourceforge.net/projects/levent/
https://github.com/libevent/libevent

Tags
Implementation
License
Platform

   




Related Projects

Libev - High performance full-featured event loop written in C

  •    C

Libev is a high-performance event loop, supporting eight event types (I/O, real time timers, wall clock timers, signals, child status changes, idle, check and prepare handlers). It uses a priority queue to manage timers and uses arrays as fundamental data structure. It has no artificial limitations on the number of watchers waiting for the same event.

reactphp - Event-driven, non-blocking I/O with PHP.

  •    PHP

ReactPHP is a low-level library for event-driven programming in PHP. At its core is an event loop, on top of which it provides low-level utilities, such as: Streams abstraction, async DNS resolver, network client/server, HTTP client/server and interaction with processes. Third-party libraries can use these components to create async network clients/servers and more. This simple web server written in ReactPHP responds with "Hello World!" for every request.

message-io - Fast and easy-to-use event-driven network library.

  •    Rust

message-io is a fast and easy-to-use event-driven network library. The library handles the OS socket internally and offers a simple event message API to the user. It also allows you to make an adapter for your own transport protocol following some rules, delegating the tedious asynchrony and thread management to the library. Managing sockets is hard because you need to fight with threads, concurrency, full duplex, encoding, IO errors that come from the OS (which are really difficult to understand in some situations), etc. If you make use of non-blocking sockets, it adds a new layer of complexity: synchronize the events that come asynchronously from the Operating System.

Netty - Event-driven Asynchronous Network Application Framework

  •    Java

Netty is an asynchronous event-driven network application framework for rapid development of maintainable high performance protocol servers & clients. Netty is a NIO client server framework which enables quick and easy development of network applications such as protocol servers and clients. It greatly simplifies and streamlines network programming such as TCP and UDP socket server.

watermill - Building event-driven applications easy way in Go.

  •    Go

Watermill is a Go library for working efficiently with message streams. It is intended for building event driven applications, enabling event sourcing, RPC over messages, sagas and basically whatever else comes to your mind. You can use conventional pub/sub implementations like Kafka or RabbitMQ, but also HTTP or MySQL binlog if that fits your use case. Note: Watermill should run reliably in a production environment, but it is still under heavy development and the public API may change before the 1.0.0 release.


EventMachine - Fast, simple event-processing library for Ruby programs

  •    Ruby

EventMachine is an event-driven I/O and lightweight concurrency library for Ruby. It provides event-driven I/O using the Reactor pattern, much like JBoss Netty, Apache MINA, Python's Twisted, Node.js, libevent and libev.

Twisted - Networking Engine in Python

  •    Python

Twisted is an event-driven networking engine written in Python. Twisted makes it easy to implement custom network applications, both servers and clients. It also supports many common network protocols, including SMTP, POP3, IMAP, SSHv2, DNS and lot more. The twisted.web webserver is a scalable, small-footprint web server that's easy to configure. It's efficient enough to serve a high-traffic website.

Apache MINA - A network application framework

  •    Java

Apache MINA is a network application framework which helps users develop high performance and high scalability network applications easily. It provides an abstract, event-driven, asynchronous API over various transports such as TCP/IP and UDP/IP via Java NIO.

onfire

  •    Javascript

onfire.js is a simple events dispatcher library (just 0.9kb). simple and usefull. Binding / subscribe the event_name with callback. when has event named event_name fired, callback function will process.

EDAS-An Event driven async socket development framework

  •    DotNet

This framework will help you to build async socket application very quickly. It's solves IOCP events,error handling,IO buffer for package receive and visio packet?pack?unpack...... all you need to do is to write your logic

KEDA - Kubernetes-based Event Driven Autoscaling component. It provides event driven scale for any container running in Kubernetes

  •    Go

KEDA is a Kubernetes-based Event Driven Autoscaler. With KEDA, you can drive the scaling of any container in Kubernetes based on the number of events needing to be processed. KEDA works alongside standard Kubernetes components like the Horizontal Pod Autoscaler and can extend functionality without overwriting or duplication.

event-gateway - The Event Gateway combines both API Gateway and Pub/Sub functionality into a single event-driven experience

  •    Go

Use the Event Gateway right now, by running the Event Gateway Example Application locally, with the Serverless Framework. The Event Gateway is a L7 proxy and realtime dataflow engine, intended for use with Functions-as-a-Service on AWS, Azure, Google & IBM.

Mutiny - An Intuitive Event-Driven Reactive Programming Library for Java

  •    Java

Mutiny places events at the core of its design. With Mutiny, you observe events, react to them, and create elegant and readable processing pipelines. Mutiny is the perfect companion to tame the asynchronous nature of applications with non-blocking I/O. Declaratively compose operations, transform data, enforce progress, recover from failures and more.

predis-async - Asynchronous PHP client library for Redis built on top of ReactPHP

  •    PHP

Asynchronous (non-blocking) version of Predis, the full-featured PHP client library for Redis, built on top of React to handle evented I/O. By default Predis\Async does not require any additional C extension to work, but it can be optionally paired with phpiredis to sensibly lower the overhead of serializing and parsing the Redis protocol.Predis\Async is currently under development but already works pretty well. The client foundation is being built on top of the event loop abstraction offered by React, an event-oriented framework for PHP that aims to provide everything needed to create reusable libraries and long-running applications using an evented approach powered by non-blocking I/O. This library is partially tested on HHVM, but support for this runtime should be considered experimental.

Rusty - Light-weight, user-space, event-driven and highly-scalable TCP/IP stack

  •    C++

Rusty is a light-weight, user-space, event-driven and highly-scalable TCP/IP stack. It has been developed to run on a EZChip TILE-Gx36 processor. Rusty is a light-weight, user-space, event-driven and highly-scalable TCP/IP stack. It has been developed to run on a EZChip TILE-Gx36 processor. Rusty takes full control of cores it runs on.

message-db - Microservice native message and event store for Postgres

  •    Shell

A fully-featured event store and message store implemented in PostgreSQL for Pub/Sub, Event Sourcing, Messaging, and Evented Microservices applications. An event sourcing and Pub/Sub message store built on Postgres for simple cloud or local hosting. A minimalist implementation of the essential features of tools like Event Store or Kafka, with built-in support for messaging patterns like Pub/Sub, and consumer patterns like consumer groups.

Lighttpd - Webserver optimized for speed

  •    C

Lighttpd powers several popular Web 2.0 sites like YouTube, wikipedia and meebo. Its high speed io-infrastructure allows them to scale several times better with the same hardware than with alternative web-servers. Its features include small memory footprint, FastCGI, Output-Compression, URL-Rewriting and lot more. Its event-driven architecture is optimized for a large number of parallel connections (keep-alive) which is important for high performance AJAX applications.

monocle - An async programming framework with a blocking look-alike syntax.

  •    Python

monocle straightens out event-driven code using Python's generators. It aims to be portable between event-driven I/O frameworks, and currently supports Twisted and Tornado. It's for Python 2.7 only; the syntax it uses isn't supported in older versions of Python. Monocle has not yet been updated for Python 3.

event-loop - ReactPHP's core reactor event loop that libraries can use for evented I/O.

  •    PHP

ReactPHP's core reactor event loop that libraries can use for evented I/O. In order for async based libraries to be interoperable, they need to use the same event loop. This component provides a common LoopInterface that any library can target. This allows them to be used in the same loop, with one single run() call that is controlled by the user.

swoole-src - Event-driven asynchronous & concurrent & coroutine networking engine with high performance for PHP

  •    C

Swoole is an event-driven asynchronous & concurrent networking communication framework with high performance written only in C for PHP.The network layer in Swoole is event-based and takes full advantage of the underlaying epoll/kqueue implementation, making it really easy to serve thousands of connections.






We have large collection of open source products. Follow the tags from Tag Cloud >>


Open source products are scattered around the web. Please provide information about the open source projects you own / you use. Add Projects.