Tweak supervison-proto into line
parent
aace10ccfb
commit
799306ec4c
|
@ -6,18 +6,18 @@
|
||||||
``tractor`` is a `structured concurrency`_ (SC), multi-processing_ runtime built on trio_.
|
``tractor`` is a `structured concurrency`_ (SC), multi-processing_ runtime built on trio_.
|
||||||
|
|
||||||
Fundamentally, ``tractor`` provides parallelism via
|
Fundamentally, ``tractor`` provides parallelism via
|
||||||
``trio``-"*actors*": independent Python *processes* (currently
|
``trio``-"*actors*": independent Python **processes** (i.e.
|
||||||
*non-shared-memory threads*) which schedule ``trio`` tasks that
|
*non-shared-memory threads*) which can schedule ``trio`` tasks whilst
|
||||||
maintain SC *end-to-end* inside a *distributed supervision tree*.
|
maintaining *end-to-end SC* inside a *distributed supervision tree*.
|
||||||
|
|
||||||
Cross-process (and thus cross-host) SC is accomplished through the
|
Cross-process (and thus cross-host) SC is accomplished through the
|
||||||
combined use of our,
|
combined use of our,
|
||||||
|
|
||||||
- "actor nurseries_" which provide for spawning multiple, and
|
- "actor nurseries_" which provide for spawning multiple, and
|
||||||
possibly nested, Python process trees each running a ``trio``
|
possibly nested, Python processes each running a ``trio`` scheduled
|
||||||
scheduled runtime - a call to ``trio.run()``,
|
runtime - a call to ``trio.run()``,
|
||||||
- an "SC-transitive supervision protocol" implemented as an
|
- an "SC-transitive supervision protocol" enforced as an
|
||||||
IPC-message-spec enforced around each RPC-dialog.
|
IPC-message-spec encapsulating all RPC-dialogs.
|
||||||
|
|
||||||
We believe the system adheres to the `3 axioms`_ of an "`actor model`_"
|
We believe the system adheres to the `3 axioms`_ of an "`actor model`_"
|
||||||
but likely **does not** look like what **you** probably *think* an "actor
|
but likely **does not** look like what **you** probably *think* an "actor
|
||||||
|
@ -30,6 +30,7 @@ The first step to grok ``tractor`` is to get an intermediate
|
||||||
knowledge of ``trio`` and **structured concurrency** B)
|
knowledge of ``trio`` and **structured concurrency** B)
|
||||||
|
|
||||||
Some great places to start are,
|
Some great places to start are,
|
||||||
|
|
||||||
- the seminal `blog post`_
|
- the seminal `blog post`_
|
||||||
- obviously the `trio docs`_
|
- obviously the `trio docs`_
|
||||||
- wikipedia's nascent SC_ page
|
- wikipedia's nascent SC_ page
|
||||||
|
@ -39,7 +40,7 @@ Some great places to start are,
|
||||||
Features
|
Features
|
||||||
--------
|
--------
|
||||||
- **It's just** a ``trio`` API!
|
- **It's just** a ``trio`` API!
|
||||||
- *Infinitely nesteable* process running embedded ``trio.Task`` trees.
|
- *Infinitely nesteable* process trees running embedded ``trio`` tasks.
|
||||||
- Support for a swappable, OS-specific, process spawning via
|
- Support for a swappable, OS-specific, process spawning via
|
||||||
multiple backends.
|
multiple backends.
|
||||||
- A modular transport stack, allowing for custom interchange formats (eg.
|
- A modular transport stack, allowing for custom interchange formats (eg.
|
||||||
|
|
Loading…
Reference in New Issue