• Stars
    star
    109
  • Rank 319,077 (Top 7 %)
  • Language
    Rust
  • Created about 10 years ago
  • Updated almost 10 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

A global event loop

Event Build Status

A fast, thread-local event loop.

Overview

This is a fully-featured event loop built on top of mio that provides IO, timeout, and "next tick" listeners. It is meant to expose nearly all of the flexibility and speed of mio while making huge ergonomic gains by internally managing handler registration.

Examples

There are examples in the examples folder that show the functionality of event.

Benchmarks

A simple wrk benchmark of the tcp example*:

$ ./target/release/examples/tcp&
$ wrk -t12 -c100 -d10s http://localhost:3000/
Running 10s test @ http://localhost:3000/
  12 threads and 100 connections
  Thread Stats   Avg      Stdev     Max   +/- Stdev
    Latency     0.00us    0.00us   0.00us  100.00%
    Req/Sec     0.94M    73.98k    1.03M    90.09%
  8913835 requests in 10.01s, 450.55MB read
  Socket errors: connect 0, read 0, write 0, timeout 397
Requests/sec: 890692.14
Transfer/sec:     45.02MB

You did read that correctly.

License

MIT

More Repositories

1

stainless

Organized, flexible testing framework for Rust
Rust
454
star
2

rust-ordered-float

Rust
184
star
3

rust-typemap

A typesafe store keyed by types and containing different types of values.
Rust
166
star
4

rust-lazy

Lazy Evaluation for Rust.
Rust
135
star
5

rust-scoped-pool

A flexible thread pool providing scoped and static threads.
Rust
82
star
6

rust-void

The empty type Void.
Rust
69
star
7

rust-n-queens

A fast, parallel backtracking algorithm for n-queens implemented in rust.
Rust
67
star
8

rust-shared-mutex

A reader-writer lock that can be used with a Condvar.
Rust
29
star
9

rust-modifier

Convenient chaining APIs for free
Rust
29
star
10

rust-plugin

Type-Safe, Lazily Evaluated, Plugins for Extensible Types
Rust
26
star
11

rust-dynamic

A dynamically typed value with fast downcasting.
Rust
26
star
12

rust-n-tree

A quadtree-like structure of arbitrary arity
Rust
23
star
13

rust-traverse

Traversals in Rust
Rust
21
star
14

rust-error

An extensible, typesafe error for everyone.
Rust
20
star
15

interstellar

Fast Particle Engine built in 36 hours
JavaScript
19
star
16

rust-unreachable

Rust
19
star
17

rust-aio

Rust
17
star
18

rust-resistant-taskpool

A panic resistant task pool.
Rust
16
star
19

rust-inspect

A simple debugging library for rust in rust
Rust
15
star
20

transfer

Rust
15
star
21

rust-membuf

A safe-ish wrapper for allocating, reallocating and deallocating heap buffers.
Rust
12
star
22

rust-mac

A collection of great and ubiqutitous macros.
Rust
11
star
23

rust-typeable

Rust
11
star
24

rust-http2parse

Rust
11
star
25

d3-particle-simulator

A particle simulation implemented using d3.
JavaScript
10
star
26

watch

watch shell utility for triggering commands on file changes
Shell
9
star
27

rust-unsafe-any

Unsafe runtime downcasting for Rust
Rust
9
star
28

rust-debug-unreachable

unreachable!() in debug, std::intrinsics::unreachable() in release
Rust
8
star
29

rust-once-mutex

A mutex providing one-time synchronized access, then safe lock-free access.
Rust
7
star
30

rust-traitobject

Rust
7
star
31

rust-enforce

Rust
7
star
32

rust-pico

Rust
5
star
33

rust-memalloc

Raw allocation APIs in stable rust.
Rust
5
star
34

go-lazy

A Lazy type for synchronization of lazily-evaluated data.
Go
5
star
35

rust-emitter

Rust
4
star
36

rust-appendbuf

Rust
4
star
37

rust-briefly

Concise explanations of rust.
4
star
38

rust-intovec

Rust
4
star
39

rust-expect

A flexible library for adding fluid assertions to types.
Rust
3
star
40

rust-event-emitter

Rust
3
star
41

rust-replace-map

Replace the value at a mutable memory location using a closure
Rust
3
star
42

python-monad

Haskell monads in Python!
Python
3
star
43

data-structures

In Javascript
JavaScript
3
star
44

rust-lockfree

Rust
2
star
45

rust-or

Rust
2
star
46

rust-dbqueue

Rust
2
star
47

railgun

2
star
48

rust-from

Rust
2
star
49

rust-lazylist

Rust
2
star
50

rust-actor

Actors in Rust
Rust
2
star
51

rust-nullable

Rust
2
star
52

rust-http

Rust
2
star
53

go-once-mutex

A Mutex offering one-time locking then infinite, concurrent, lock-free reads.
Go
2
star
54

lithium

Rust
2
star
55

rust-atomic-option

Rust
2
star
56

rust-http-content-type

Rust
2
star
57

go-future

A condition-variable based Future type for synchronization
Go
1
star
58

rust-pico-sys

Rust
1
star
59

rust-phantom

pub struct Phantom<T>;
Rust
1
star
60

rust-async

Rust
1
star
61

underbar

JavaScript
1
star
62

forge-node-modules-repro

reproduction of forge build with node modules contracts
TypeScript
1
star
63

rust-httpparse

Rust
1
star
64

rust-move-acceptor

A variant of the Acceptor trait which moves self in the move_incoming method.
Rust
1
star
65

learning_haskell

Haskell
1
star
66

chatterbox-client-js

JavaScript
1
star
67

chatterbox-server-js

Yet another chat app
JavaScript
1
star
68

rust-rcmut

Rust
1
star
69

rust-rcstring

Rust
1
star
70

line-debug

Lightweight console.log wrapper that logs line number and module name
JavaScript
1
star
71

rust-to

Rust
1
star
72

oath

super-simple promises
JavaScript
1
star
73

fp-animate

JavaScript
1
star
74

iron-try

Rust
1
star
75

beatdots

A fast, greedy algorithm for solving the popular game of dots.
Python
1
star
76

rust-bare

Basic rust template for creating new modules.
Rust
1
star
77

rust-load

Rust
1
star
78

rust-rwlock2

Rust
1
star
79

express-skeleton

express server skeleton
JavaScript
1
star
80

rust-forever

Never-Dropping Data
Rust
1
star
81

rust-poison

Rust
1
star
82

vim-dotfiles

Shell
1
star
83

rust-reduce

Rust
1
star
84

node-to-log

Quickly redirect console.log and console.error to files.
JavaScript
1
star
85

rust-simd

Rust
1
star
86

rust-downcast

Rust
1
star
87

n-queens.js

A blazingly-fast, bit-shifting, backtracking, n-queens algorithm in javascript.
JavaScript
1
star
88

rust-chunks

Rust
1
star
89

Sort-Tester

Fast, comprehensive sort tester
Python
1
star
90

generator-node-module

generate node modules!
JavaScript
1
star
91

go-file-dupes

Get all the duplicate files in a directory, efficiently.
Go
1
star
92

rust-variance

Rust
1
star