Skip to content

Commit

Permalink
deploy: f8d3e0d
Browse files Browse the repository at this point in the history
  • Loading branch information
github-merge-queue[bot] committed Jun 20, 2024
1 parent b4f0186 commit 5ee1d5d
Show file tree
Hide file tree
Showing 4 changed files with 140 additions and 2 deletions.
69 changes: 69 additions & 0 deletions print.html
Original file line number Diff line number Diff line change
Expand Up @@ -253,6 +253,8 @@ <h2 id="checking-the-status-of-the-network"><a class="header" href="#checking-th
<li><code>ceramic-new-streams</code> - A simulation that only creates new streams</li>
<li><code>ceramic-model-reuse</code> - A simulation that reuses the same model and queries instances across workers</li>
<li><code>recon-event-sync</code> - A simulation that creates events for Recon to sync at a fixed rate (~300/s by default). Designed for a 2 node network but should work on any.</li>
<li><code>cas-benchmark</code> - A simulation that benchmarks the CAS network. </li>
<li><code>cas-anchoring-benchmark</code> - A simulation that benchmarks the Ceramic with anchoring enabled.</li>
</ul>
<p>Using one of these scenarios, we can then define the configuration for that scenario:</p>
<pre><code class="language-yaml"># basic.yaml
Expand Down Expand Up @@ -334,6 +336,73 @@ <h3 id="example-custom-ipfs-image"><a class="header" href="#example-custom-ipfs-
</code></pre>
<pre><code class="language-shell">kubectl apply -f custom-ipfs.yaml
</code></pre>
<h3 id="example-custom-cas-api-url-network-spec"><a class="header" href="#example-custom-cas-api-url-network-spec">Example Custom CAS Api Url Network Spec</a></h3>
<p>Use this example in the network definition while using <code>cas-benchmark</code> or <code>cas-anchoring-benchmark</code>. This is specifically for testing against the CAS dev network.</p>
<pre><code class="language-yaml"># custom-cas-api.yaml
---
apiVersion: keramik.3box.io/v1alpha1
kind: Network
metadata:
name: ceramic-benchmark
spec:
ceramic:
- env:
CERAMIC_RECON_MODE: &quot;true&quot;
ipfs:
rust:
env:
CERAMIC_ONE_RECON: &quot;true&quot;
casApiUrl: https://cas-dev-direct.3boxlabs.com
networkType: dev-unstable
privateKeySecret: ceramic-v4-dev
ethRpcUrl: &quot;&quot;
</code></pre>
<pre><code class="language-shell">kubectl apply -f custom-cas-api.yaml
</code></pre>
<h3 id="example-custom-simulation-for-ceramic-anchoring-benchmark"><a class="header" href="#example-custom-simulation-for-ceramic-anchoring-benchmark">Example Custom Simulation for Ceramic Anchoring Benchmark</a></h3>
<p>Use this example to run a simulation which uses the CAS Api defined in the network spec.
<code>anchorWaitTime</code>: Wait time in seconds for how long we want to wait after streams have been created to check when they have been anchored. This should be a high number like 30-40 minutes.
<code>throttleRequests</code>: Number of requests to send per second.</p>
<pre><code class="language-yaml"># ceramic-anchoring-benchamrk.yaml
---
apiVersion: &quot;keramik.3box.io/v1alpha1&quot;
kind: Simulation
metadata:
name: basic
# Must be the same namespace as the network to test
namespace: keramik-ceramic-benchmark
spec:
scenario: ceramic-anchoring-benchmark
users: 16
runTime: 60
throttleRequests: 100
anchorWaitTime: 2400
</code></pre>
<pre><code class="language-shell">kubectl apply -f ceramic-anchoring-benchamrk.yaml
</code></pre>
<h3 id="example-custom-simulation-for-cas-benchmark"><a class="header" href="#example-custom-simulation-for-cas-benchmark">Example Custom Simulation for cas-benchmark</a></h3>
<p>Use this example to run a simulation you can pass in the the cas-api-url, the network-type, and the private secret key in the spec.
By default the casNetwork and casController are set to run against cas-dev-direct Api.</p>
<p><code>casNetwork</code>: The url of the CAS network to run the simulation against.</p>
<p><code>casController</code>: The private key of the controller DID to use for the simulation.</p>
<pre><code class="language-yaml"># cas-benchmark.yaml
---
apiVersion: &quot;keramik.3box.io/v1alpha1&quot;
kind: Simulation
metadata:
name: basic
# Must be the same namespace as the network to test
namespace: keramik-ceramic-benchmark
spec:
scenario: ceramic-anchoring-benchmark
users: 16
runTime: 60
throttleRequests: 100
casNetwork: &quot;https://cas-dev-direct.3boxlabs.com&quot;
casController: &quot;did:key:&lt;secret&gt;&quot;
</code></pre>
<pre><code class="language-shell">kubectl apply -f cas-benchmark.yaml
</code></pre>
<div style="break-before: page; page-break-before: always;"></div><h1 id="analysis"><a class="header" href="#analysis">Analysis</a></h1>
<p>Analysis of Keramik results depends on the purpose of the simulation. You may want to just see average latencies, or dive
deeper into reported metrics. For profiling, you will want to use <a href="./datadog.html">datadog</a>.</p>
Expand Down
2 changes: 1 addition & 1 deletion searchindex.js

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion searchindex.json

Large diffs are not rendered by default.

69 changes: 69 additions & 0 deletions simulation.html
Original file line number Diff line number Diff line change
Expand Up @@ -152,6 +152,8 @@ <h1 id="simulation"><a class="header" href="#simulation">Simulation</a></h1>
<li><code>ceramic-new-streams</code> - A simulation that only creates new streams</li>
<li><code>ceramic-model-reuse</code> - A simulation that reuses the same model and queries instances across workers</li>
<li><code>recon-event-sync</code> - A simulation that creates events for Recon to sync at a fixed rate (~300/s by default). Designed for a 2 node network but should work on any.</li>
<li><code>cas-benchmark</code> - A simulation that benchmarks the CAS network. </li>
<li><code>cas-anchoring-benchmark</code> - A simulation that benchmarks the Ceramic with anchoring enabled.</li>
</ul>
<p>Using one of these scenarios, we can then define the configuration for that scenario:</p>
<pre><code class="language-yaml"># basic.yaml
Expand Down Expand Up @@ -232,6 +234,73 @@ <h3 id="example-custom-ipfs-image"><a class="header" href="#example-custom-ipfs-
imagePullPolicy: IfNotPresent
</code></pre>
<pre><code class="language-shell">kubectl apply -f custom-ipfs.yaml
</code></pre>
<h3 id="example-custom-cas-api-url-network-spec"><a class="header" href="#example-custom-cas-api-url-network-spec">Example Custom CAS Api Url Network Spec</a></h3>
<p>Use this example in the network definition while using <code>cas-benchmark</code> or <code>cas-anchoring-benchmark</code>. This is specifically for testing against the CAS dev network.</p>
<pre><code class="language-yaml"># custom-cas-api.yaml
---
apiVersion: keramik.3box.io/v1alpha1
kind: Network
metadata:
name: ceramic-benchmark
spec:
ceramic:
- env:
CERAMIC_RECON_MODE: &quot;true&quot;
ipfs:
rust:
env:
CERAMIC_ONE_RECON: &quot;true&quot;
casApiUrl: https://cas-dev-direct.3boxlabs.com
networkType: dev-unstable
privateKeySecret: ceramic-v4-dev
ethRpcUrl: &quot;&quot;
</code></pre>
<pre><code class="language-shell">kubectl apply -f custom-cas-api.yaml
</code></pre>
<h3 id="example-custom-simulation-for-ceramic-anchoring-benchmark"><a class="header" href="#example-custom-simulation-for-ceramic-anchoring-benchmark">Example Custom Simulation for Ceramic Anchoring Benchmark</a></h3>
<p>Use this example to run a simulation which uses the CAS Api defined in the network spec.
<code>anchorWaitTime</code>: Wait time in seconds for how long we want to wait after streams have been created to check when they have been anchored. This should be a high number like 30-40 minutes.
<code>throttleRequests</code>: Number of requests to send per second.</p>
<pre><code class="language-yaml"># ceramic-anchoring-benchamrk.yaml
---
apiVersion: &quot;keramik.3box.io/v1alpha1&quot;
kind: Simulation
metadata:
name: basic
# Must be the same namespace as the network to test
namespace: keramik-ceramic-benchmark
spec:
scenario: ceramic-anchoring-benchmark
users: 16
runTime: 60
throttleRequests: 100
anchorWaitTime: 2400
</code></pre>
<pre><code class="language-shell">kubectl apply -f ceramic-anchoring-benchamrk.yaml
</code></pre>
<h3 id="example-custom-simulation-for-cas-benchmark"><a class="header" href="#example-custom-simulation-for-cas-benchmark">Example Custom Simulation for cas-benchmark</a></h3>
<p>Use this example to run a simulation you can pass in the the cas-api-url, the network-type, and the private secret key in the spec.
By default the casNetwork and casController are set to run against cas-dev-direct Api.</p>
<p><code>casNetwork</code>: The url of the CAS network to run the simulation against.</p>
<p><code>casController</code>: The private key of the controller DID to use for the simulation.</p>
<pre><code class="language-yaml"># cas-benchmark.yaml
---
apiVersion: &quot;keramik.3box.io/v1alpha1&quot;
kind: Simulation
metadata:
name: basic
# Must be the same namespace as the network to test
namespace: keramik-ceramic-benchmark
spec:
scenario: ceramic-anchoring-benchmark
users: 16
runTime: 60
throttleRequests: 100
casNetwork: &quot;https://cas-dev-direct.3boxlabs.com&quot;
casController: &quot;did:key:&lt;secret&gt;&quot;
</code></pre>
<pre><code class="language-shell">kubectl apply -f cas-benchmark.yaml
</code></pre>

</main>
Expand Down

0 comments on commit 5ee1d5d

Please sign in to comment.