Skip to content

Commit

Permalink
Publish docs website 0.42
Browse files Browse the repository at this point in the history
  • Loading branch information
sonicloong authored and idelpivnitskiy committed Sep 22, 2023
1 parent 495bb72 commit ae6aeba
Show file tree
Hide file tree
Showing 1,858 changed files with 3,393 additions and 2,452 deletions.
8 changes: 4 additions & 4 deletions servicetalk-client-api/0.42/service-discovery.html
Original file line number Diff line number Diff line change
Expand Up @@ -1063,7 +1063,7 @@ <h1>Service Discovery</h1>
<div class="sectionbody">
<div class="paragraph">
<p>A core abstraction in ServiceTalk is its
<a href="https://github.com/apple/servicetalk/blob/0.42.35/servicetalk-client-api/src/main/java/io/servicetalk/client/api/ServiceDiscoverer.java">ServiceDiscoverer</a>
<a href="https://github.com/apple/servicetalk/blob/0.42.36/servicetalk-client-api/src/main/java/io/servicetalk/client/api/ServiceDiscoverer.java">ServiceDiscoverer</a>
used by the protocol <em>Clients</em> (eg. HTTP/1.1, HTTP/2, gRPC, etc.).</p>
</div>
<div class="paragraph">
Expand All @@ -1072,7 +1072,7 @@ <h1>Service Discovery</h1>
<em>ServiceDiscoverer</em> finds server instances associated with a logical name. ServiceTalk assumes that the client operates
in a dynamic ephemeral environment and the server instances associated with a logical name may change over time. So, a
<em>ServiceDiscoverer</em> returns a <em>Publisher</em> of
<a href="https://github.com/apple/servicetalk/blob/0.42.35/servicetalk-client-api/src/main/java/io/servicetalk/client/api/ServiceDiscovererEvent.java">ServiceDiscovererEvent</a>(s)
<a href="https://github.com/apple/servicetalk/blob/0.42.36/servicetalk-client-api/src/main/java/io/servicetalk/client/api/ServiceDiscovererEvent.java">ServiceDiscovererEvent</a>(s)
that provide information about server instances, their current relationship to the logical name (i.e. whether it is
added or removed from the logical name), and any additional information that is supported by a <em>ServiceDiscoverer</em>
implementation. Using this information the <a href="../../servicetalk-loadbalancer/0.42/index.html" class="page">LoadBalancer</a> of a
Expand Down Expand Up @@ -1109,14 +1109,14 @@ <h1>Service Discovery</h1>
<h2 id="implementations"><a class="anchor" href="#implementations"></a><a class="link" href="#implementations">Implementations</a></h2>
<div class="sectionbody">
<div class="paragraph">
<p><a href="https://github.com/apple/servicetalk/blob/0.42.35/servicetalk-client-api/src/main/java/io/servicetalk/client/api/ServiceDiscoverer.java">ServiceDiscoverer</a>
<p><a href="https://github.com/apple/servicetalk/blob/0.42.36/servicetalk-client-api/src/main/java/io/servicetalk/client/api/ServiceDiscoverer.java">ServiceDiscoverer</a>
abstraction allows for various protocol-independent <em>Service Discovery</em> mechanisms to be implemented. This section will
discuss the various implementations offered in ServiceTalk.</p>
</div>
<div class="sect2">
<h3 id="domain-name-system-dns"><a class="anchor" href="#domain-name-system-dns"></a><a class="link" href="#domain-name-system-dns">Domain Name System (DNS)</a></h3>
<div class="paragraph">
<p><a href="https://github.com/apple/servicetalk/blob/0.42.35/servicetalk-dns-discovery-netty/src/main/java/io/servicetalk/dns/discovery/netty/DefaultDnsServiceDiscovererBuilder.java">DefaultDnsServiceDiscovererBuilder</a>
<p><a href="https://github.com/apple/servicetalk/blob/0.42.36/servicetalk-dns-discovery-netty/src/main/java/io/servicetalk/dns/discovery/netty/DefaultDnsServiceDiscovererBuilder.java">DefaultDnsServiceDiscovererBuilder</a>
is used to configure and build instances of <em>ServiceDiscoverer</em> that use
<a href="https://tools.ietf.org/html/rfc1035">Domain Name System (DNS)</a> to resolve hosts represented by domain name into a
set of IP-addresses needed for <em>Clients</em> to connect to the remote servers. Resolution happens every
Expand Down
4 changes: 2 additions & 2 deletions servicetalk-concurrent-api/0.42/async-context.html
Original file line number Diff line number Diff line change
Expand Up @@ -1234,7 +1234,7 @@ <h3 id="complexity-of-implementation"><a class="anchor" href="#complexity-of-imp
boundary, save the <code>original</code> context before executing user code on the new thread, restore the <code>current</code> context
while executing user code, and then restore the <code>original</code> context. This requires object wrapping/unwrapping and
leveraging <code>ThreadLocal</code> (or an
<a href="https://github.com/apple/servicetalk/blob/0.42.35/servicetalk-context-api/src/main/java/io/servicetalk/context/api/ContextMapHolder.java">ContextMapHolder</a>
<a href="https://github.com/apple/servicetalk/blob/0.42.36/servicetalk-context-api/src/main/java/io/servicetalk/context/api/ContextMapHolder.java">ContextMapHolder</a>
) to retain the state. We also need to capture the current context at <code>subscribe</code>, propagate it up the operator chain,
and capture it effectively in the source (or in a wrapped <code>Subscriber</code> just outside the source).</p>
</div>
Expand Down Expand Up @@ -1314,7 +1314,7 @@ <h3 id="cost-of-retention"><a class="anchor" href="#cost-of-retention"></a><a cl
frequency in which we need to save/restore the static state has been shown to introduce non-trivial costs. Since we know
that all of our threads will require this thread local state we can have our threads explicitly have a <code>AsyncContext</code>
member variable (see
<a href="https://github.com/apple/servicetalk/blob/0.42.35/servicetalk-context-api/src/main/java/io/servicetalk/context/api/ContextMapHolder.java">ContextMapHolder</a>
<a href="https://github.com/apple/servicetalk/blob/0.42.36/servicetalk-context-api/src/main/java/io/servicetalk/context/api/ContextMapHolder.java">ContextMapHolder</a>
). There is also additional wrapping/unwrapping introduced on the asynchronous boundaries so there is additional object
allocation.</p>
</div>
Expand Down
22 changes: 11 additions & 11 deletions servicetalk-concurrent-api/0.42/asynchronous-primitives.html
Original file line number Diff line number Diff line change
Expand Up @@ -1074,13 +1074,13 @@ <h1>Asynchronous Primitives</h1>
<div class="ulist">
<ul>
<li>
<p>No result, just termination (<a href="https://github.com/apple/servicetalk/blob/0.42.35/servicetalk-concurrent-api/src/main/java/io/servicetalk/concurrent/api/Completable.java"><code>Completable</code></a>).</p>
<p>No result, just termination (<a href="https://github.com/apple/servicetalk/blob/0.42.36/servicetalk-concurrent-api/src/main/java/io/servicetalk/concurrent/api/Completable.java"><code>Completable</code></a>).</p>
</li>
<li>
<p>Exactly one result (<a href="https://github.com/apple/servicetalk/blob/0.42.35/servicetalk-concurrent-api/src/main/java/io/servicetalk/concurrent/api/Single.java"><code>Single</code></a>).</p>
<p>Exactly one result (<a href="https://github.com/apple/servicetalk/blob/0.42.36/servicetalk-concurrent-api/src/main/java/io/servicetalk/concurrent/api/Single.java"><code>Single</code></a>).</p>
</li>
<li>
<p>Zero or many results (<a href="https://github.com/apple/servicetalk/blob/0.42.35/servicetalk-concurrent-api/src/main/java/io/servicetalk/concurrent/api/Publisher.java"><code>Publisher</code></a>).</p>
<p>Zero or many results (<a href="https://github.com/apple/servicetalk/blob/0.42.36/servicetalk-concurrent-api/src/main/java/io/servicetalk/concurrent/api/Publisher.java"><code>Publisher</code></a>).</p>
</li>
</ul>
</div>
Expand All @@ -1102,8 +1102,8 @@ <h2 id="interoperability"><a class="anchor" href="#interoperability"></a><a clas
standard. In order to make sure we are following the specifications correctly, we verify our sources using the
<a href="https://github.com/reactive-streams/reactive-streams-jvm/blob/v1.0.3/tck">ReactiveStreams TCK</a>. For interoperability
we provide ReactiveStreams
<a href="https://github.com/apple/servicetalk/blob/0.42.35/servicetalk-concurrent-reactivestreams/src/main/java/io/servicetalk/concurrent/reactivestreams/ReactiveStreamsAdapters.java">adapters</a>
and JDK Flow <a href="https://github.com/apple/servicetalk/blob/0.42.35/servicetalk-concurrent-jdkflow/src/main/java/io/servicetalk/concurrent/jdkflow/JdkFlowAdapters.java">adapters</a>.</p>
<a href="https://github.com/apple/servicetalk/blob/0.42.36/servicetalk-concurrent-reactivestreams/src/main/java/io/servicetalk/concurrent/reactivestreams/ReactiveStreamsAdapters.java">adapters</a>
and JDK Flow <a href="https://github.com/apple/servicetalk/blob/0.42.36/servicetalk-concurrent-jdkflow/src/main/java/io/servicetalk/concurrent/jdkflow/JdkFlowAdapters.java">adapters</a>.</p>
</div>
</div>
</div>
Expand Down Expand Up @@ -1197,23 +1197,23 @@ <h2 id="specifications"><a class="anchor" href="#specifications"></a><a class="l
<div class="sect2">
<h3 id="publisher-source"><a class="anchor" href="#publisher-source"></a><a class="link" href="#publisher-source">Publisher source</a></h3>
<div class="paragraph">
<p>A <a href="https://github.com/apple/servicetalk/blob/0.42.35/servicetalk-concurrent/src/main/java/io/servicetalk/concurrent/PublisherSource.java"><code>PublisherSource</code></a>
<p>A <a href="https://github.com/apple/servicetalk/blob/0.42.36/servicetalk-concurrent/src/main/java/io/servicetalk/concurrent/PublisherSource.java"><code>PublisherSource</code></a>
is an asynchronous primitive that mimics <a href="https://www.reactive-streams.org">ReactiveStreams</a> interfaces and is
designed to be used when the source may produce zero or potentially infinite number of results.</p>
</div>
</div>
<div class="sect2">
<h3 id="single-source"><a class="anchor" href="#single-source"></a><a class="link" href="#single-source">Single source</a></h3>
<div class="paragraph">
<p>A <a href="https://github.com/apple/servicetalk/blob/0.42.35/servicetalk-concurrent/src/main/java/io/servicetalk/concurrent/SingleSource.java"><code>SingleSource</code></a>
<p>A <a href="https://github.com/apple/servicetalk/blob/0.42.36/servicetalk-concurrent/src/main/java/io/servicetalk/concurrent/SingleSource.java"><code>SingleSource</code></a>
is an asynchronous primitive that is designed to be used when the source will produce exactly one result or terminate
with an error.</p>
</div>
</div>
<div class="sect2">
<h3 id="completable-source"><a class="anchor" href="#completable-source"></a><a class="link" href="#completable-source">Completable source</a></h3>
<div class="paragraph">
<p>A <a href="https://github.com/apple/servicetalk/blob/0.42.35/servicetalk-concurrent/src/main/java/io/servicetalk/concurrent/CompletableSource.java"><code>CompletableSource</code></a>
<p>A <a href="https://github.com/apple/servicetalk/blob/0.42.36/servicetalk-concurrent/src/main/java/io/servicetalk/concurrent/CompletableSource.java"><code>CompletableSource</code></a>
is an asynchronous primitive that is designed to be used when the source will complete or terminate with an error.</p>
</div>
</div>
Expand Down Expand Up @@ -1271,21 +1271,21 @@ <h2 id="primitve-with-operators"><a class="anchor" href="#primitve-with-operator
<div class="sect2">
<h3 id="publisher"><a class="anchor" href="#publisher"></a><a class="link" href="#publisher">Publisher</a></h3>
<div class="paragraph">
<p>A <a href="https://github.com/apple/servicetalk/blob/0.42.35/servicetalk-concurrent-api/src/main/java/io/servicetalk/concurrent/api/Publisher.java"><code>Publisher</code></a>
<p>A <a href="https://github.com/apple/servicetalk/blob/0.42.36/servicetalk-concurrent-api/src/main/java/io/servicetalk/concurrent/api/Publisher.java"><code>Publisher</code></a>
extends <a href="#publisher-source">Publisher source</a> and adds commonly used operators.</p>
</div>
</div>
<div class="sect2">
<h3 id="single"><a class="anchor" href="#single"></a><a class="link" href="#single">Single</a></h3>
<div class="paragraph">
<p>A <a href="https://github.com/apple/servicetalk/blob/0.42.35/servicetalk-concurrent-api/src/main/java/io/servicetalk/concurrent/api/Single.java"><code>Single</code></a>
<p>A <a href="https://github.com/apple/servicetalk/blob/0.42.36/servicetalk-concurrent-api/src/main/java/io/servicetalk/concurrent/api/Single.java"><code>Single</code></a>
extends <a href="#single-source">Single source</a> and adds commonly used operators.</p>
</div>
</div>
<div class="sect2">
<h3 id="completable"><a class="anchor" href="#completable"></a><a class="link" href="#completable">Completable</a></h3>
<div class="paragraph">
<p>A <a href="https://github.com/apple/servicetalk/blob/0.42.35/servicetalk-concurrent-api/src/main/java/io/servicetalk/concurrent/api/Completable.java"><code>Completable</code></a>
<p>A <a href="https://github.com/apple/servicetalk/blob/0.42.36/servicetalk-concurrent-api/src/main/java/io/servicetalk/concurrent/api/Completable.java"><code>Completable</code></a>
extends <a href="#completable-source">Completable source</a> and adds commonly used operators.</p>
</div>
</div>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -1138,7 +1138,7 @@ <h2 id="threads-and-asynchronous-sources"><a class="anchor" href="#threads-and-a
<h2 id="offloading-and-asynchronous-sources"><a class="anchor" href="#offloading-and-asynchronous-sources"></a><a class="link" href="#offloading-and-asynchronous-sources">Offloading and asynchronous sources</a></h2>
<div class="sectionbody">
<div class="paragraph">
<p>ServiceTalk uses the <code><a href="https://github.com/apple/servicetalk/blob/0.42.35/servicetalk-concurrent-api/src/main/java/io/servicetalk/concurrent/api/Executor.java">Executor</a></code>
<p>ServiceTalk uses the <code><a href="https://github.com/apple/servicetalk/blob/0.42.36/servicetalk-concurrent-api/src/main/java/io/servicetalk/concurrent/api/Executor.java">Executor</a></code>
abstraction to specify the source of threads to be used for the delivery of signals from an asynchronous source. The
default signal offloading, if any, used by an asynchronous source is determined by the source. For example, the HTTP
sources, in addition to allowing for specification of an offloading executor, provide both direct control of the
Expand Down
4 changes: 2 additions & 2 deletions servicetalk-concurrent-api/0.42/blocking-safe-by-default.html
Original file line number Diff line number Diff line change
Expand Up @@ -1102,7 +1102,7 @@ <h3 id="data-and-control-flow-in-an-execution-chain"><a class="anchor" href="#da
</div>
<div class="paragraph">
<p><strong>By default, in ServiceTalk, signals are not executed on an EventLoop thread, but instead executed using an
<a href="https://github.com/apple/servicetalk/blob/0.42.35/servicetalk-concurrent-api/src/main/java/io/servicetalk/concurrent/api/Executor.java">Executor</a>
<a href="https://github.com/apple/servicetalk/blob/0.42.36/servicetalk-concurrent-api/src/main/java/io/servicetalk/concurrent/api/Executor.java">Executor</a>
provided by the application in the order they are received.</strong></p>
</div>
<div class="sect3">
Expand Down Expand Up @@ -1160,7 +1160,7 @@ <h2 id="task-offloading"><a class="anchor" href="#task-offloading"></a><a class=
is available. In particular, different threads may be used for each task executed and code running in tasks cannot
depend upon a consistent thread being used for invoking program logic. This approach is generally the most scalable
because it makes the best utilization of threads. If it is necessary to share state between tasks then
`<a href="https://github.com/apple/servicetalk/blob/0.42.35/servicetalk-context-api/src/main/java/io/servicetalk/context/api/ContextMap.java">ContextMap</a>`s
`<a href="https://github.com/apple/servicetalk/blob/0.42.36/servicetalk-context-api/src/main/java/io/servicetalk/context/api/ContextMap.java">ContextMap</a>`s
can be used.</p>
</div>
<div class="paragraph">
Expand Down
Loading

0 comments on commit ae6aeba

Please sign in to comment.