2 releases

0.0.1 May 28, 2024
0.0.0 May 2, 2024

#19 in #pooling

Download history 148/week @ 2024-04-27 12/week @ 2024-05-04 9/week @ 2024-05-18 129/week @ 2024-05-25 19/week @ 2024-06-01 2/week @ 2024-06-08

159 downloads per month

MPL-2.0 license

130KB
2.5K SLoC

:showtitle: :toc: left :icons: font

Qorb

Qorb is a work-in-progress Connection Pooling library, heavily inspired by the "Cueball" connection pooling library.

Overview

Examples

To get up and running with a client, server, and DNS system, link:examples/README.adoc[refer to the README in the examples directory].

This provides a setup for generating a workload to an arbitrary number of backends, and then walks through the tools to inspect the connection pool.

TODO List

Things I'd like to do before getting more eyes on this:

  • Add dtrace probes
  • Add a baseline test suite

lib.rs:

qorb is a connection pooling crate.

qorb offers a flexible interface for managing connections.

It uses the following terminology:

  • Services are named entities providing the same interface.
  • Backends are specific instantiations of a program, providing a service. In the case of, e.g., a distributed database, a single service would be provided by multiple backends.

Usage

  • The main interface for this crate is pool::Pool.
  • To construct a pool, you must supply a resolver::Resolver and a backend::Connector. These are interfaces which specify "how to find backends" and "how to create connections to a backend", respectively.

Dependencies

~8–40MB
~634K SLoC