# Kipjak

s•**kipja**•c•**k**

A small, pelagic fish from the tuna species. Found in large schools in the
tropical and sub-tropical oceans of the world.

![PyPI - Python Version](https://img.shields.io/pypi/pyversions/kipjak)
![PyPI - Version](https://img.shields.io/pypi/v/kipjak)
![PyPI - Coverage](https://img.shields.io/badge/coverage-75%25-brightgreen)
![PyPI - Integration](https://img.shields.io/badge/integration-passing-cyan)

---

Concurrency via multithreading, multiprocessing and multihosting.

---

The goal of the **kipjak** library is to deliver software interaction, wherever the relevant software
entities may be located. At the lowest level this involves a message-driven framework providing for
seamless communication between threads, processes and hosts. At higher levels it delivers
responsiveness, concurrency and clarity.

* Sophistication with clarity ••• *separation from the details of threads and networks*
* Quick on-boarding ••• *cookbook of multithreading, multiprocessing and multihosting solutions*
* Optimal throughput ••• *load distribution across threads, processes and hosts*
* Quality client feedback ••• *negative responses to requests during periods of heavy load*
* Simple leveraging of sub-processes ••• *load child processes as callable libraries*
* Process orchestration ••• *definition and execution of process groups*
* System daemons ••• *foreground or background execution*
* Publish-subscribe networking ••• *networking without network addresses*
* Industrial-grade encryption ••• *NaCl (Salt)*
* HTTP integration ••• *RPC or RESTful APIs*
* Technical support ••• *baked-in logging, log storage and log recovery*
