docs: Add architecture diagram (#48)
diff --git a/.license-ignore b/.license-ignore index 8d84962..f8980ab 100644 --- a/.license-ignore +++ b/.license-ignore
@@ -18,3 +18,4 @@ .github .gitignore .license-ignore +docs \ No newline at end of file
diff --git a/README.md b/README.md index 26e901c..1639f04 100644 --- a/README.md +++ b/README.md
@@ -20,6 +20,10 @@ > **Disclaimer:** This project is in the early stages of development. Features are subject to change, and some components may not be fully stable. Contributions and feedback are welcome as the project evolves. + +## Architecture +<img src="./docs/img/Architecture.svg" alt="Architecture" style="zoom:30%;" /> + ## Features - **Service Discovery**: Zookeeper @@ -123,7 +127,7 @@ We are excited to welcome contributions to the Dubbo-Python project! Whether you are fixing bugs, adding new features, or improving documentation, your input is highly valued. -To ensure a smooth collaboration, please review our [Contributing Guide](https://github.com/apache/dubbo-python/blob/main/CONTRIBUTING.md) for detailed instructions on how to get started, adhere to coding standards, and submit your contributions effectively. +To ensure a smooth collaboration, please review our [Contributing Guide](./docs/CONTRIBUTING.md) for detailed instructions on how to get started, adhere to coding standards, and submit your contributions effectively. ## License
diff --git a/CONTRIBUTING.md b/docs/CONTRIBUTING.md similarity index 100% rename from CONTRIBUTING.md rename to docs/CONTRIBUTING.md
diff --git a/docs/img/Architecture.svg b/docs/img/Architecture.svg new file mode 100644 index 0000000..dcb710a --- /dev/null +++ b/docs/img/Architecture.svg
@@ -0,0 +1,2 @@ +<svg version="1.1" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 2545.522402708771 1205.4454045542516" width="2545.522402708771" height="1205.4454045542516"><!-- svg-source:excalidraw --><metadata></metadata><defs><style class="style-fonts"> + @font-face { font-family: Cascadia; src: url(data:font/woff2;base64,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); }</style></defs><g stroke-linecap="round" transform="translate(478.95120640241805 957.96264212815) rotate(0 812.890853411576 88.03002473722881)"><path d="M32 0 C640.15 0, 1248.29 0, 1593.78 0 C1615.12 0, 1625.78 10.67, 1625.78 32 C1625.78 66.44, 1625.78 100.88, 1625.78 144.06 C1625.78 165.39, 1615.12 176.06, 1593.78 176.06 C1200.25 176.06, 806.71 176.06, 32 176.06 C10.67 176.06, 0 165.39, 0 144.06 C0 119.96, 0 95.87, 0 32 C0 10.67, 10.67 0, 32 0" stroke="none" stroke-width="0" fill="#fff0f6"></path><path d="M32 0 C638 0, 1244 0, 1593.78 0 M32 0 C651.57 0, 1271.14 0, 1593.78 0 M1593.78 0 C1615.12 0, 1625.78 10.67, 1625.78 32 M1593.78 0 C1615.12 0, 1625.78 10.67, 1625.78 32 M1625.78 32 C1625.78 67.47, 1625.78 102.94, 1625.78 144.06 M1625.78 32 C1625.78 64.15, 1625.78 96.29, 1625.78 144.06 M1625.78 144.06 C1625.78 165.39, 1615.12 176.06, 1593.78 176.06 M1625.78 144.06 C1625.78 165.39, 1615.12 176.06, 1593.78 176.06 M1593.78 176.06 C1039.62 176.06, 485.46 176.06, 32 176.06 M1593.78 176.06 C989.9 176.06, 386.03 176.06, 32 176.06 M32 176.06 C10.67 176.06, 0 165.39, 0 144.06 M32 176.06 C10.67 176.06, 0 165.39, 0 144.06 M0 144.06 C0 103.42, 0 62.78, 0 32 M0 144.06 C0 108.22, 0 72.37, 0 32 M0 32 C0 10.67, 10.67 0, 32 0 M0 32 C0 10.67, 10.67 0, 32 0" stroke="#1e1e1e" stroke-width="2" fill="none"></path></g><g stroke-linecap="round" transform="translate(477.86899195955084 42.68981703956524) rotate(0 812.890853411576 88.03002473722881)"><path d="M32 0 C533.98 0, 1035.96 0, 1593.78 0 C1615.12 0, 1625.78 10.67, 1625.78 32 C1625.78 69.84, 1625.78 107.67, 1625.78 144.06 C1625.78 165.39, 1615.12 176.06, 1593.78 176.06 C1232.86 176.06, 871.94 176.06, 32 176.06 C10.67 176.06, 0 165.39, 0 144.06 C0 120.36, 0 96.66, 0 32 C0 10.67, 10.67 0, 32 0" stroke="none" stroke-width="0" fill="#a5d8ff"></path><path d="M32 0 C573.9 0, 1115.8 0, 1593.78 0 M32 0 C458.48 0, 884.95 0, 1593.78 0 M1593.78 0 C1615.12 0, 1625.78 10.67, 1625.78 32 M1593.78 0 C1615.12 0, 1625.78 10.67, 1625.78 32 M1625.78 32 C1625.78 74.2, 1625.78 116.4, 1625.78 144.06 M1625.78 32 C1625.78 61.63, 1625.78 91.26, 1625.78 144.06 M1625.78 144.06 C1625.78 165.39, 1615.12 176.06, 1593.78 176.06 M1625.78 144.06 C1625.78 165.39, 1615.12 176.06, 1593.78 176.06 M1593.78 176.06 C1271.58 176.06, 949.39 176.06, 32 176.06 M1593.78 176.06 C1222.36 176.06, 850.93 176.06, 32 176.06 M32 176.06 C10.67 176.06, 0 165.39, 0 144.06 M32 176.06 C10.67 176.06, 0 165.39, 0 144.06 M0 144.06 C0 112.86, 0 81.66, 0 32 M0 144.06 C0 105.13, 0 66.2, 0 32 M0 32 C0 10.67, 10.67 0, 32 0 M0 32 C0 10.67, 10.67 0, 32 0" stroke="#1e1e1e" stroke-width="2" fill="none"></path></g><g stroke-linecap="round" transform="translate(443.8717857230865 10) rotate(0 843.9782284394124 592.7227022771258)"><path d="M32 0 C438.57 0, 845.14 0, 1655.96 0 M32 0 C593.48 0, 1154.97 0, 1655.96 0 M1655.96 0 C1677.29 0, 1687.96 10.67, 1687.96 32 M1655.96 0 C1677.29 0, 1687.96 10.67, 1687.96 32 M1687.96 32 C1687.96 476.47, 1687.96 920.94, 1687.96 1153.45 M1687.96 32 C1687.96 323.67, 1687.96 615.34, 1687.96 1153.45 M1687.96 1153.45 C1687.96 1174.78, 1677.29 1185.45, 1655.96 1185.45 M1687.96 1153.45 C1687.96 1174.78, 1677.29 1185.45, 1655.96 1185.45 M1655.96 1185.45 C1239.46 1185.45, 822.97 1185.45, 32 1185.45 M1655.96 1185.45 C1261.84 1185.45, 867.73 1185.45, 32 1185.45 M32 1185.45 C10.67 1185.45, 0 1174.78, 0 1153.45 M32 1185.45 C10.67 1185.45, 0 1174.78, 0 1153.45 M0 1153.45 C0 716.91, 0 280.37, 0 32 M0 1153.45 C0 924.99, 0 696.53, 0 32 M0 32 C0 10.67, 10.67 0, 32 0 M0 32 C0 10.67, 10.67 0, 32 0" stroke="#1e1e1e" stroke-width="2" fill="none"></path></g><g stroke-linecap="round" transform="translate(522.3354860060767 87.654848600876) rotate(0 140.43242208001084 46.24189805318747)"><path d="M23.12 0 C104.3 0, 185.48 0, 257.74 0 M23.12 0 C113.71 0, 204.29 0, 257.74 0 M257.74 0 C273.16 0, 280.86 7.71, 280.86 23.12 M257.74 0 C273.16 0, 280.86 7.71, 280.86 23.12 M280.86 23.12 C280.86 33.48, 280.86 43.84, 280.86 69.36 M280.86 23.12 C280.86 37.79, 280.86 52.45, 280.86 69.36 M280.86 69.36 C280.86 84.78, 273.16 92.48, 257.74 92.48 M280.86 69.36 C280.86 84.78, 273.16 92.48, 257.74 92.48 M257.74 92.48 C206.68 92.48, 155.61 92.48, 23.12 92.48 M257.74 92.48 C164.96 92.48, 72.17 92.48, 23.12 92.48 M23.12 92.48 C7.71 92.48, 0 84.78, 0 69.36 M23.12 92.48 C7.71 92.48, 0 84.78, 0 69.36 M0 69.36 C0 57.22, 0 45.09, 0 23.12 M0 69.36 C0 56.04, 0 42.72, 0 23.12 M0 23.12 C0 7.71, 7.71 0, 23.12 0 M0 23.12 C0 7.71, 7.71 0, 23.12 0" stroke="#1e1e1e" stroke-width="2" fill="none"></path></g><g transform="translate(613.5491580860876 117.09674665406055) rotate(0 49.21875 16.799999999999272)"><text x="49.21875" y="26.50703125" font-family="Cascadia, Segoe UI Emoji" font-size="28px" fill="#1e1e1e" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="alphabetic">Client</text></g><g stroke-linecap="round" transform="translate(852.3393416341706 87.0901785586102) rotate(0 140.43242208001084 46.24189805318747)"><path d="M23.12 0 C115.94 0, 208.75 0, 257.74 0 M23.12 0 C84.99 0, 146.85 0, 257.74 0 M257.74 0 C273.16 0, 280.86 7.71, 280.86 23.12 M257.74 0 C273.16 0, 280.86 7.71, 280.86 23.12 M280.86 23.12 C280.86 34.9, 280.86 46.69, 280.86 69.36 M280.86 23.12 C280.86 40.14, 280.86 57.16, 280.86 69.36 M280.86 69.36 C280.86 84.78, 273.16 92.48, 257.74 92.48 M280.86 69.36 C280.86 84.78, 273.16 92.48, 257.74 92.48 M257.74 92.48 C206.09 92.48, 154.45 92.48, 23.12 92.48 M257.74 92.48 C185.51 92.48, 113.28 92.48, 23.12 92.48 M23.12 92.48 C7.71 92.48, 0 84.78, 0 69.36 M23.12 92.48 C7.71 92.48, 0 84.78, 0 69.36 M0 69.36 C0 51.28, 0 33.2, 0 23.12 M0 69.36 C0 59.46, 0 49.55, 0 23.12 M0 23.12 C0 7.71, 7.71 0, 23.12 0 M0 23.12 C0 7.71, 7.71 0, 23.12 0" stroke="#1e1e1e" stroke-width="2" fill="none"></path></g><g transform="translate(942.9993027766815 116.53207661179476) rotate(0 49.7724609375 16.799999999999272)"><text x="49.7724609375" y="26.50703125" font-family="Cascadia, Segoe UI Emoji" font-size="28px" fill="#1e1e1e" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="alphabetic">Server</text></g><g stroke-linecap="round" transform="translate(1172.0545021233675 87.02404603115428) rotate(0 140.43242208001084 46.24189805318747)"><path d="M23.12 0 C89.22 0, 155.31 0, 257.74 0 M23.12 0 C78.3 0, 133.48 0, 257.74 0 M257.74 0 C273.16 0, 280.86 7.71, 280.86 23.12 M257.74 0 C273.16 0, 280.86 7.71, 280.86 23.12 M280.86 23.12 C280.86 40.17, 280.86 57.23, 280.86 69.36 M280.86 23.12 C280.86 38.59, 280.86 54.06, 280.86 69.36 M280.86 69.36 C280.86 84.78, 273.16 92.48, 257.74 92.48 M280.86 69.36 C280.86 84.78, 273.16 92.48, 257.74 92.48 M257.74 92.48 C199.9 92.48, 142.06 92.48, 23.12 92.48 M257.74 92.48 C187.4 92.48, 117.05 92.48, 23.12 92.48 M23.12 92.48 C7.71 92.48, 0 84.78, 0 69.36 M23.12 92.48 C7.71 92.48, 0 84.78, 0 69.36 M0 69.36 C0 57.32, 0 45.27, 0 23.12 M0 69.36 C0 59.68, 0 50, 0 23.12 M0 23.12 C0 7.71, 7.71 0, 23.12 0 M0 23.12 C0 7.71, 7.71 0, 23.12 0" stroke="#1e1e1e" stroke-width="2" fill="none"></path></g><g transform="translate(1270.9859476408783 116.46594408433884) rotate(0 41.5009765625 16.799999999999272)"><text x="41.5009765625" y="26.50703125" font-family="Cascadia, Segoe UI Emoji" font-size="28px" fill="#1e1e1e" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="alphabetic">unary</text></g><g stroke-linecap="round" transform="translate(1485.1462356306884 86.07784217660083) rotate(0 140.43242208001084 46.24189805318747)"><path d="M23.12 0 C101.5 0, 179.88 0, 257.74 0 M23.12 0 C74.41 0, 125.7 0, 257.74 0 M257.74 0 C273.16 0, 280.86 7.71, 280.86 23.12 M257.74 0 C273.16 0, 280.86 7.71, 280.86 23.12 M280.86 23.12 C280.86 33.19, 280.86 43.26, 280.86 69.36 M280.86 23.12 C280.86 37.02, 280.86 50.91, 280.86 69.36 M280.86 69.36 C280.86 84.78, 273.16 92.48, 257.74 92.48 M280.86 69.36 C280.86 84.78, 273.16 92.48, 257.74 92.48 M257.74 92.48 C203.41 92.48, 149.07 92.48, 23.12 92.48 M257.74 92.48 C207.43 92.48, 157.12 92.48, 23.12 92.48 M23.12 92.48 C7.71 92.48, 0 84.78, 0 69.36 M23.12 92.48 C7.71 92.48, 0 84.78, 0 69.36 M0 69.36 C0 56.96, 0 44.57, 0 23.12 M0 69.36 C0 59.6, 0 49.84, 0 23.12 M0 23.12 C0 7.71, 7.71 0, 23.12 0 M0 23.12 C0 7.71, 7.71 0, 23.12 0" stroke="#1e1e1e" stroke-width="2" fill="none"></path></g><g transform="translate(1551.7505327106992 115.51974022978538) rotate(0 73.828125 16.799999999999272)"><text x="73.828125" y="26.50703125" font-family="Cascadia, Segoe UI Emoji" font-size="28px" fill="#1e1e1e" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="alphabetic">streaming</text></g><g stroke-linecap="round" transform="translate(1796.4422166613563 85.060418677087) rotate(0 140.4324220800109 46.24189805318747)"><path d="M23.12 0 C106.88 0, 190.63 0, 257.74 0 M23.12 0 C104.17 0, 185.21 0, 257.74 0 M257.74 0 C273.16 0, 280.86 7.71, 280.86 23.12 M257.74 0 C273.16 0, 280.86 7.71, 280.86 23.12 M280.86 23.12 C280.86 34.89, 280.86 46.66, 280.86 69.36 M280.86 23.12 C280.86 37.53, 280.86 51.94, 280.86 69.36 M280.86 69.36 C280.86 84.78, 273.16 92.48, 257.74 92.48 M280.86 69.36 C280.86 84.78, 273.16 92.48, 257.74 92.48 M257.74 92.48 C207.22 92.48, 156.69 92.48, 23.12 92.48 M257.74 92.48 C194.43 92.48, 131.11 92.48, 23.12 92.48 M23.12 92.48 C7.71 92.48, 0 84.78, 0 69.36 M23.12 92.48 C7.71 92.48, 0 84.78, 0 69.36 M0 69.36 C0 57.83, 0 46.3, 0 23.12 M0 69.36 C0 58.94, 0 48.51, 0 23.12 M0 23.12 C0 7.71, 7.71 0, 23.12 0 M0 23.12 C0 7.71, 7.71 0, 23.12 0" stroke="#1e1e1e" stroke-width="2" fill="none"></path></g><g transform="translate(1887.655888741367 114.50231673027156) rotate(0 49.21875 16.799999999999272)"><text x="49.21875" y="26.50703125" font-family="Cascadia, Segoe UI Emoji" font-size="28px" fill="#1e1e1e" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="alphabetic">......</text></g><g stroke-linecap="round" transform="translate(481.0077434555701 281.4307847606906) rotate(0 812.890853411576 90.79741665592519)"><path d="M32 0 C459.05 0, 886.1 0, 1593.78 0 C1615.12 0, 1625.78 10.67, 1625.78 32 C1625.78 65.31, 1625.78 98.62, 1625.78 149.59 C1625.78 170.93, 1615.12 181.59, 1593.78 181.59 C1153.14 181.59, 712.5 181.59, 32 181.59 C10.67 181.59, 0 170.93, 0 149.59 C0 122.09, 0 94.58, 0 32 C0 10.67, 10.67 0, 32 0" stroke="none" stroke-width="0" fill="#d0bfff"></path><path d="M32 0 C376.23 0, 720.46 0, 1593.78 0 M32 0 C600.53 0, 1169.06 0, 1593.78 0 M1593.78 0 C1615.12 0, 1625.78 10.67, 1625.78 32 M1593.78 0 C1615.12 0, 1625.78 10.67, 1625.78 32 M1625.78 32 C1625.78 59.11, 1625.78 86.23, 1625.78 149.59 M1625.78 32 C1625.78 56.85, 1625.78 81.71, 1625.78 149.59 M1625.78 149.59 C1625.78 170.93, 1615.12 181.59, 1593.78 181.59 M1625.78 149.59 C1625.78 170.93, 1615.12 181.59, 1593.78 181.59 M1593.78 181.59 C1102.33 181.59, 610.88 181.59, 32 181.59 M1593.78 181.59 C1150.89 181.59, 707.99 181.59, 32 181.59 M32 181.59 C10.67 181.59, 0 170.93, 0 149.59 M32 181.59 C10.67 181.59, 0 170.93, 0 149.59 M0 149.59 C0 102.78, 0 55.97, 0 32 M0 149.59 C0 117.41, 0 85.23, 0 32 M0 32 C0 10.67, 10.67 0, 32 0 M0 32 C0 10.67, 10.67 0, 32 0" stroke="#1e1e1e" stroke-width="2" fill="none"></path></g><g stroke-linecap="round" transform="translate(565.6675528506374 328.8783296608526) rotate(0 140.43242208001084 46.24189805318747)"><path d="M23.12 0 C89.65 0, 156.18 0, 257.74 0 M23.12 0 C79.89 0, 136.66 0, 257.74 0 M257.74 0 C273.16 0, 280.86 7.71, 280.86 23.12 M257.74 0 C273.16 0, 280.86 7.71, 280.86 23.12 M280.86 23.12 C280.86 38.04, 280.86 52.96, 280.86 69.36 M280.86 23.12 C280.86 41.6, 280.86 60.07, 280.86 69.36 M280.86 69.36 C280.86 84.78, 273.16 92.48, 257.74 92.48 M280.86 69.36 C280.86 84.78, 273.16 92.48, 257.74 92.48 M257.74 92.48 C167.19 92.48, 76.64 92.48, 23.12 92.48 M257.74 92.48 C187.58 92.48, 117.41 92.48, 23.12 92.48 M23.12 92.48 C7.71 92.48, 0 84.78, 0 69.36 M23.12 92.48 C7.71 92.48, 0 84.78, 0 69.36 M0 69.36 C0 56.61, 0 43.85, 0 23.12 M0 69.36 C0 52.16, 0 34.95, 0 23.12 M0 23.12 C0 7.71, 7.71 0, 23.12 0 M0 23.12 C0 7.71, 7.71 0, 23.12 0" stroke="#1e1e1e" stroke-width="2" fill="none"></path></g><g transform="translate(631.7591546181483 341.52022771404154) rotate(0 74.3408203125 33.599999999998545)"><text x="74.3408203125" y="26.50703125" font-family="Cascadia, Segoe UI Emoji" font-size="28px" fill="#1e1e1e" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="alphabetic">Service</text><text x="74.3408203125" y="60.107031250000006" font-family="Cascadia, Segoe UI Emoji" font-size="28px" fill="#1e1e1e" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="alphabetic">Discovery</text></g><g stroke-linecap="round" transform="translate(915.719738536775 327.5505919939387) rotate(0 140.43242208001084 46.24189805318747)"><path d="M23.12 0 C95.05 0, 166.97 0, 257.74 0 M23.12 0 C74.2 0, 125.27 0, 257.74 0 M257.74 0 C273.16 0, 280.86 7.71, 280.86 23.12 M257.74 0 C273.16 0, 280.86 7.71, 280.86 23.12 M280.86 23.12 C280.86 35.5, 280.86 47.87, 280.86 69.36 M280.86 23.12 C280.86 41.17, 280.86 59.22, 280.86 69.36 M280.86 69.36 C280.86 84.78, 273.16 92.48, 257.74 92.48 M280.86 69.36 C280.86 84.78, 273.16 92.48, 257.74 92.48 M257.74 92.48 C183.52 92.48, 109.3 92.48, 23.12 92.48 M257.74 92.48 C206.88 92.48, 156.02 92.48, 23.12 92.48 M23.12 92.48 C7.71 92.48, 0 84.78, 0 69.36 M23.12 92.48 C7.71 92.48, 0 84.78, 0 69.36 M0 69.36 C0 59.97, 0 50.57, 0 23.12 M0 69.36 C0 54.95, 0 40.55, 0 23.12 M0 23.12 C0 7.71, 7.71 0, 23.12 0 M0 23.12 C0 7.71, 7.71 0, 23.12 0" stroke="#1e1e1e" stroke-width="2" fill="none"></path></g><g transform="translate(965.7537231167859 356.9924900471233) rotate(0 90.3984375 16.799999999999272)"><text x="90.3984375" y="26.50703125" font-family="Cascadia, Segoe UI Emoji" font-size="28px" fill="#1e1e1e" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="alphabetic">LoadBalance</text></g><g stroke-linecap="round" transform="translate(1269.4524537324262 325.19016947506316) rotate(0 140.43242208001084 46.24189805318747)"><path d="M23.12 0 C95.84 0, 168.55 0, 257.74 0 M23.12 0 C81.38 0, 139.63 0, 257.74 0 M257.74 0 C273.16 0, 280.86 7.71, 280.86 23.12 M257.74 0 C273.16 0, 280.86 7.71, 280.86 23.12 M280.86 23.12 C280.86 39.16, 280.86 55.19, 280.86 69.36 M280.86 23.12 C280.86 35.36, 280.86 47.6, 280.86 69.36 M280.86 69.36 C280.86 84.78, 273.16 92.48, 257.74 92.48 M280.86 69.36 C280.86 84.78, 273.16 92.48, 257.74 92.48 M257.74 92.48 C184.89 92.48, 112.03 92.48, 23.12 92.48 M257.74 92.48 C197.14 92.48, 136.54 92.48, 23.12 92.48 M23.12 92.48 C7.71 92.48, 0 84.78, 0 69.36 M23.12 92.48 C7.71 92.48, 0 84.78, 0 69.36 M0 69.36 C0 58.97, 0 48.58, 0 23.12 M0 69.36 C0 55.4, 0 41.44, 0 23.12 M0 23.12 C0 7.71, 7.71 0, 23.12 0 M0 23.12 C0 7.71, 7.71 0, 23.12 0" stroke="#1e1e1e" stroke-width="2" fill="none"></path></g><g transform="translate(1352.463000812437 354.6320675282477) rotate(0 57.421875 16.799999999999272)"><text x="57.421875" y="26.50703125" font-family="Cascadia, Segoe UI Emoji" font-size="28px" fill="#1e1e1e" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="alphabetic">Logging</text></g><g stroke-linecap="round" transform="translate(1627.4481733910668 326.90452807174006) rotate(0 140.43242208001078 46.24189805318747)"><path d="M23.12 0 C103.46 0, 183.8 0, 257.74 0 M23.12 0 C109.24 0, 195.36 0, 257.74 0 M257.74 0 C273.16 0, 280.86 7.71, 280.86 23.12 M257.74 0 C273.16 0, 280.86 7.71, 280.86 23.12 M280.86 23.12 C280.86 41.09, 280.86 59.06, 280.86 69.36 M280.86 23.12 C280.86 32.42, 280.86 41.72, 280.86 69.36 M280.86 69.36 C280.86 84.78, 273.16 92.48, 257.74 92.48 M280.86 69.36 C280.86 84.78, 273.16 92.48, 257.74 92.48 M257.74 92.48 C181.1 92.48, 104.46 92.48, 23.12 92.48 M257.74 92.48 C164.49 92.48, 71.23 92.48, 23.12 92.48 M23.12 92.48 C7.71 92.48, 0 84.78, 0 69.36 M23.12 92.48 C7.71 92.48, 0 84.78, 0 69.36 M0 69.36 C0 51.87, 0 34.38, 0 23.12 M0 69.36 C0 52.61, 0 35.86, 0 23.12 M0 23.12 C0 7.71, 7.71 0, 23.12 0 M0 23.12 C0 7.71, 7.71 0, 23.12 0" stroke="#1e1e1e" stroke-width="2" fill="none"></path></g><g transform="translate(1718.6618454710776 356.3464261249246) rotate(0 49.21875 16.799999999999272)"><text x="49.21875" y="26.50703125" font-family="Cascadia, Segoe UI Emoji" font-size="28px" fill="#1e1e1e" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="alphabetic">......</text></g><g stroke-linecap="round" transform="translate(482.34565535743866 519.6961069958052) rotate(0 812.890853411576 88.03002473722881)"><path d="M32 0 C494.71 0, 957.42 0, 1593.78 0 C1615.12 0, 1625.78 10.67, 1625.78 32 C1625.78 61.39, 1625.78 90.77, 1625.78 144.06 C1625.78 165.39, 1615.12 176.06, 1593.78 176.06 C1125.49 176.06, 657.21 176.06, 32 176.06 C10.67 176.06, 0 165.39, 0 144.06 C0 101.86, 0 59.67, 0 32 C0 10.67, 10.67 0, 32 0" stroke="none" stroke-width="0" fill="#fff9db"></path><path d="M32 0 C400 0, 768 0, 1593.78 0 M32 0 C517.91 0, 1003.82 0, 1593.78 0 M1593.78 0 C1615.12 0, 1625.78 10.67, 1625.78 32 M1593.78 0 C1615.12 0, 1625.78 10.67, 1625.78 32 M1625.78 32 C1625.78 75.72, 1625.78 119.43, 1625.78 144.06 M1625.78 32 C1625.78 62.17, 1625.78 92.34, 1625.78 144.06 M1625.78 144.06 C1625.78 165.39, 1615.12 176.06, 1593.78 176.06 M1625.78 144.06 C1625.78 165.39, 1615.12 176.06, 1593.78 176.06 M1593.78 176.06 C1275.84 176.06, 957.89 176.06, 32 176.06 M1593.78 176.06 C1102.06 176.06, 610.34 176.06, 32 176.06 M32 176.06 C10.67 176.06, 0 165.39, 0 144.06 M32 176.06 C10.67 176.06, 0 165.39, 0 144.06 M0 144.06 C0 113.57, 0 83.07, 0 32 M0 144.06 C0 108.6, 0 73.14, 0 32 M0 32 C0 10.67, 10.67 0, 32 0 M0 32 C0 10.67, 10.67 0, 32 0" stroke="#1e1e1e" stroke-width="2" fill="none"></path></g><g stroke-linecap="round" transform="translate(573.3567309482605 563.2062229527728) rotate(0 428.43703564791485 46.24189805318747)"><path d="M23.12 0 C308.81 0, 594.5 0, 833.75 0 M23.12 0 C294.08 0, 565.04 0, 833.75 0 M833.75 0 C849.17 0, 856.87 7.71, 856.87 23.12 M833.75 0 C849.17 0, 856.87 7.71, 856.87 23.12 M856.87 23.12 C856.87 36.34, 856.87 49.56, 856.87 69.36 M856.87 23.12 C856.87 36.42, 856.87 49.71, 856.87 69.36 M856.87 69.36 C856.87 84.78, 849.17 92.48, 833.75 92.48 M856.87 69.36 C856.87 84.78, 849.17 92.48, 833.75 92.48 M833.75 92.48 C561.97 92.48, 290.18 92.48, 23.12 92.48 M833.75 92.48 C570.94 92.48, 308.13 92.48, 23.12 92.48 M23.12 92.48 C7.71 92.48, 0 84.78, 0 69.36 M23.12 92.48 C7.71 92.48, 0 84.78, 0 69.36 M0 69.36 C0 54.64, 0 39.92, 0 23.12 M0 69.36 C0 51.14, 0 32.91, 0 23.12 M0 23.12 C0 7.71, 7.71 0, 23.12 0 M0 23.12 C0 7.71, 7.71 0, 23.12 0" stroke="#1e1e1e" stroke-width="2" fill="none"></path></g><g transform="translate(755.7000165961754 592.6481210059574) rotate(0 246.09375 16.799999999999272)"><text x="246.09375" y="26.50703125" font-family="Cascadia, Segoe UI Emoji" font-size="28px" fill="#1e1e1e" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="alphabetic">Triple (fully gRPC compatible)</text></g><g stroke-linecap="round" transform="translate(1611.3474465111608 564.0659458098817) rotate(0 140.43242208001084 46.24189805318747)"><path d="M23.12 0 C112.6 0, 202.08 0, 257.74 0 M23.12 0 C81.84 0, 140.55 0, 257.74 0 M257.74 0 C273.16 0, 280.86 7.71, 280.86 23.12 M257.74 0 C273.16 0, 280.86 7.71, 280.86 23.12 M280.86 23.12 C280.86 36.05, 280.86 48.98, 280.86 69.36 M280.86 23.12 C280.86 32.71, 280.86 42.29, 280.86 69.36 M280.86 69.36 C280.86 84.78, 273.16 92.48, 257.74 92.48 M280.86 69.36 C280.86 84.78, 273.16 92.48, 257.74 92.48 M257.74 92.48 C197.78 92.48, 137.82 92.48, 23.12 92.48 M257.74 92.48 C169.54 92.48, 81.34 92.48, 23.12 92.48 M23.12 92.48 C7.71 92.48, 0 84.78, 0 69.36 M23.12 92.48 C7.71 92.48, 0 84.78, 0 69.36 M0 69.36 C0 54.26, 0 39.16, 0 23.12 M0 69.36 C0 59.52, 0 49.68, 0 23.12 M0 23.12 C0 7.71, 7.71 0, 23.12 0 M0 23.12 C0 7.71, 7.71 0, 23.12 0" stroke="#1e1e1e" stroke-width="2" fill="none"></path></g><g transform="translate(1702.5611185911716 593.5078438630662) rotate(0 49.21875 16.799999999999272)"><text x="49.21875" y="26.50703125" font-family="Cascadia, Segoe UI Emoji" font-size="28px" fill="#1e1e1e" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="alphabetic">......</text></g><g stroke-linecap="round" transform="translate(479.2951445503421 732.2339064359621) rotate(0 812.890853411576 90.79741665592519)"><path d="M32 0 C537.59 0, 1043.17 0, 1593.78 0 C1615.12 0, 1625.78 10.67, 1625.78 32 C1625.78 62.1, 1625.78 92.21, 1625.78 149.59 C1625.78 170.93, 1615.12 181.59, 1593.78 181.59 C1081.47 181.59, 569.16 181.59, 32 181.59 C10.67 181.59, 0 170.93, 0 149.59 C0 115.03, 0 80.46, 0 32 C0 10.67, 10.67 0, 32 0" stroke="none" stroke-width="0" fill="#ffd8a8"></path><path d="M32 0 C578.66 0, 1125.32 0, 1593.78 0 M32 0 C650.41 0, 1268.82 0, 1593.78 0 M1593.78 0 C1615.12 0, 1625.78 10.67, 1625.78 32 M1593.78 0 C1615.12 0, 1625.78 10.67, 1625.78 32 M1625.78 32 C1625.78 62.77, 1625.78 93.55, 1625.78 149.59 M1625.78 32 C1625.78 68.34, 1625.78 104.67, 1625.78 149.59 M1625.78 149.59 C1625.78 170.93, 1615.12 181.59, 1593.78 181.59 M1625.78 149.59 C1625.78 170.93, 1615.12 181.59, 1593.78 181.59 M1593.78 181.59 C1256.71 181.59, 919.64 181.59, 32 181.59 M1593.78 181.59 C970.88 181.59, 347.98 181.59, 32 181.59 M32 181.59 C10.67 181.59, 0 170.93, 0 149.59 M32 181.59 C10.67 181.59, 0 170.93, 0 149.59 M0 149.59 C0 122.44, 0 95.29, 0 32 M0 149.59 C0 125.83, 0 102.06, 0 32 M0 32 C0 10.67, 10.67 0, 32 0 M0 32 C0 10.67, 10.67 0, 32 0" stroke="#1e1e1e" stroke-width="2" fill="none"></path></g><g stroke-linecap="round" transform="translate(584.6256366356683 777.3564294561438) rotate(0 140.43242208001084 46.24189805318747)"><path d="M23.12 0 C116.14 0, 209.16 0, 257.74 0 M23.12 0 C82.45 0, 141.78 0, 257.74 0 M257.74 0 C273.16 0, 280.86 7.71, 280.86 23.12 M257.74 0 C273.16 0, 280.86 7.71, 280.86 23.12 M280.86 23.12 C280.86 39.3, 280.86 55.48, 280.86 69.36 M280.86 23.12 C280.86 36.79, 280.86 50.46, 280.86 69.36 M280.86 69.36 C280.86 84.78, 273.16 92.48, 257.74 92.48 M280.86 69.36 C280.86 84.78, 273.16 92.48, 257.74 92.48 M257.74 92.48 C195.68 92.48, 133.62 92.48, 23.12 92.48 M257.74 92.48 C199.25 92.48, 140.76 92.48, 23.12 92.48 M23.12 92.48 C7.71 92.48, 0 84.78, 0 69.36 M23.12 92.48 C7.71 92.48, 0 84.78, 0 69.36 M0 69.36 C0 56.47, 0 43.58, 0 23.12 M0 69.36 C0 52.47, 0 35.58, 0 23.12 M0 23.12 C0 7.71, 7.71 0, 23.12 0 M0 23.12 C0 7.71, 7.71 0, 23.12 0" stroke="#1e1e1e" stroke-width="2" fill="none"></path></g><g transform="translate(684.0150899656792 806.7983275093284) rotate(0 41.04296875 16.799999999999272)"><text x="41.04296875" y="26.50703125" font-family="Cascadia, Segoe UI Emoji" font-size="28px" fill="#1e1e1e" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="alphabetic">Bytes</text></g><g stroke-linecap="round" transform="translate(929.8007793842373 775.8429651893675) rotate(0 140.43242208001084 46.24189805318747)"><path d="M23.12 0 C109.56 0, 196.01 0, 257.74 0 M23.12 0 C83.05 0, 142.97 0, 257.74 0 M257.74 0 C273.16 0, 280.86 7.71, 280.86 23.12 M257.74 0 C273.16 0, 280.86 7.71, 280.86 23.12 M280.86 23.12 C280.86 35.7, 280.86 48.27, 280.86 69.36 M280.86 23.12 C280.86 39.99, 280.86 56.87, 280.86 69.36 M280.86 69.36 C280.86 84.78, 273.16 92.48, 257.74 92.48 M280.86 69.36 C280.86 84.78, 273.16 92.48, 257.74 92.48 M257.74 92.48 C191.28 92.48, 124.81 92.48, 23.12 92.48 M257.74 92.48 C174.62 92.48, 91.49 92.48, 23.12 92.48 M23.12 92.48 C7.71 92.48, 0 84.78, 0 69.36 M23.12 92.48 C7.71 92.48, 0 84.78, 0 69.36 M0 69.36 C0 56.12, 0 42.88, 0 23.12 M0 69.36 C0 55.59, 0 41.81, 0 23.12 M0 23.12 C0 7.71, 7.71 0, 23.12 0 M0 23.12 C0 7.71, 7.71 0, 23.12 0" stroke="#1e1e1e" stroke-width="2" fill="none"></path></g><g transform="translate(1004.0339827142482 805.2848632425521) rotate(0 66.19921875 16.799999999999272)"><text x="66.19921875" y="26.50703125" font-family="Cascadia, Segoe UI Emoji" font-size="28px" fill="#1e1e1e" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="alphabetic">Protobuf</text></g><g stroke-linecap="round" transform="translate(1298.0408056593415 777.4447101345577) rotate(0 140.43242208001084 46.24189805318747)"><path d="M23.12 0 C97.07 0, 171.02 0, 257.74 0 M23.12 0 C84.73 0, 146.34 0, 257.74 0 M257.74 0 C273.16 0, 280.86 7.71, 280.86 23.12 M257.74 0 C273.16 0, 280.86 7.71, 280.86 23.12 M280.86 23.12 C280.86 40.16, 280.86 57.21, 280.86 69.36 M280.86 23.12 C280.86 37.02, 280.86 50.91, 280.86 69.36 M280.86 69.36 C280.86 84.78, 273.16 92.48, 257.74 92.48 M280.86 69.36 C280.86 84.78, 273.16 92.48, 257.74 92.48 M257.74 92.48 C196.05 92.48, 134.35 92.48, 23.12 92.48 M257.74 92.48 C207.77 92.48, 157.8 92.48, 23.12 92.48 M23.12 92.48 C7.71 92.48, 0 84.78, 0 69.36 M23.12 92.48 C7.71 92.48, 0 84.78, 0 69.36 M0 69.36 C0 55.35, 0 41.34, 0 23.12 M0 69.36 C0 59.07, 0 48.78, 0 23.12 M0 23.12 C0 7.71, 7.71 0, 23.12 0 M0 23.12 C0 7.71, 7.71 0, 23.12 0" stroke="#1e1e1e" stroke-width="2" fill="none"></path></g><g transform="translate(1405.6607277393523 806.8866081877422) rotate(0 32.8125 16.799999999999272)"><text x="32.8125" y="26.50703125" font-family="Cascadia, Segoe UI Emoji" font-size="28px" fill="#1e1e1e" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="alphabetic">Json</text></g><g stroke-linecap="round" transform="translate(1663.5550132316102 774.86672064515) rotate(0 140.43242208001084 46.24189805318747)"><path d="M23.12 0 C86.83 0, 150.55 0, 257.74 0 M23.12 0 C74.75 0, 126.37 0, 257.74 0 M257.74 0 C273.16 0, 280.86 7.71, 280.86 23.12 M257.74 0 C273.16 0, 280.86 7.71, 280.86 23.12 M280.86 23.12 C280.86 35.6, 280.86 48.07, 280.86 69.36 M280.86 23.12 C280.86 38.27, 280.86 53.42, 280.86 69.36 M280.86 69.36 C280.86 84.78, 273.16 92.48, 257.74 92.48 M280.86 69.36 C280.86 84.78, 273.16 92.48, 257.74 92.48 M257.74 92.48 C192.3 92.48, 126.86 92.48, 23.12 92.48 M257.74 92.48 C191.96 92.48, 126.17 92.48, 23.12 92.48 M23.12 92.48 C7.71 92.48, 0 84.78, 0 69.36 M23.12 92.48 C7.71 92.48, 0 84.78, 0 69.36 M0 69.36 C0 55.52, 0 41.68, 0 23.12 M0 69.36 C0 52.08, 0 34.8, 0 23.12 M0 23.12 C0 7.71, 7.71 0, 23.12 0 M0 23.12 C0 7.71, 7.71 0, 23.12 0" stroke="#1e1e1e" stroke-width="2" fill="none"></path></g><g transform="translate(1705.549935311621 804.3086186983346) rotate(0 98.4375 16.799999999999272)"><text x="98.4375" y="26.50703125" font-family="Cascadia, Segoe UI Emoji" font-size="28px" fill="#1e1e1e" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="alphabetic">Customizable</text></g><g stroke-linecap="round" transform="translate(523.417700448944 1004.3928501996052) rotate(0 140.43242208001084 46.24189805318747)"><path d="M23.12 0 C114.16 0, 205.21 0, 257.74 0 M23.12 0 C96.23 0, 169.35 0, 257.74 0 M257.74 0 C273.16 0, 280.86 7.71, 280.86 23.12 M257.74 0 C273.16 0, 280.86 7.71, 280.86 23.12 M280.86 23.12 C280.86 37.74, 280.86 52.36, 280.86 69.36 M280.86 23.12 C280.86 32.5, 280.86 41.88, 280.86 69.36 M280.86 69.36 C280.86 84.78, 273.16 92.48, 257.74 92.48 M280.86 69.36 C280.86 84.78, 273.16 92.48, 257.74 92.48 M257.74 92.48 C208.61 92.48, 159.47 92.48, 23.12 92.48 M257.74 92.48 C168.56 92.48, 79.37 92.48, 23.12 92.48 M23.12 92.48 C7.71 92.48, 0 84.78, 0 69.36 M23.12 92.48 C7.71 92.48, 0 84.78, 0 69.36 M0 69.36 C0 56.23, 0 43.1, 0 23.12 M0 69.36 C0 53.75, 0 38.14, 0 23.12 M0 23.12 C0 7.71, 7.71 0, 23.12 0 M0 23.12 C0 7.71, 7.71 0, 23.12 0" stroke="#1e1e1e" stroke-width="2" fill="none"></path></g><g transform="translate(606.4282475289548 1033.8347482527897) rotate(0 57.421875 16.799999999999272)"><text x="57.421875" y="26.50703125" font-family="Cascadia, Segoe UI Emoji" font-size="28px" fill="#1e1e1e" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="alphabetic">Asyncio</text></g><g stroke-linecap="round" transform="translate(853.4215560770377 1003.8281801573539) rotate(0 140.43242208001084 46.24189805318747)"><path d="M23.12 0 C95.79 0, 168.46 0, 257.74 0 M23.12 0 C89.13 0, 155.13 0, 257.74 0 M257.74 0 C273.16 0, 280.86 7.71, 280.86 23.12 M257.74 0 C273.16 0, 280.86 7.71, 280.86 23.12 M280.86 23.12 C280.86 39.4, 280.86 55.69, 280.86 69.36 M280.86 23.12 C280.86 33.14, 280.86 43.17, 280.86 69.36 M280.86 69.36 C280.86 84.78, 273.16 92.48, 257.74 92.48 M280.86 69.36 C280.86 84.78, 273.16 92.48, 257.74 92.48 M257.74 92.48 C170.24 92.48, 82.73 92.48, 23.12 92.48 M257.74 92.48 C169.09 92.48, 80.44 92.48, 23.12 92.48 M23.12 92.48 C7.71 92.48, 0 84.78, 0 69.36 M23.12 92.48 C7.71 92.48, 0 84.78, 0 69.36 M0 69.36 C0 59.66, 0 49.95, 0 23.12 M0 69.36 C0 53.63, 0 37.9, 0 23.12 M0 23.12 C0 7.71, 7.71 0, 23.12 0 M0 23.12 C0 7.71, 7.71 0, 23.12 0" stroke="#1e1e1e" stroke-width="2" fill="none"></path></g><g transform="translate(944.2250719070486 1033.2700782105385) rotate(0 49.62890625 16.799999999999272)"><text x="49.62890625" y="26.50703125" font-family="Cascadia, Segoe UI Emoji" font-size="28px" fill="#1e1e1e" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="alphabetic">uvloop</text></g><g stroke-linecap="round" transform="translate(1173.1367165662348 1003.762047629898) rotate(0 140.43242208001084 46.24189805318747)"><path d="M23.12 0 C108.84 0, 194.55 0, 257.74 0 M23.12 0 C108.72 0, 194.32 0, 257.74 0 M257.74 0 C273.16 0, 280.86 7.71, 280.86 23.12 M257.74 0 C273.16 0, 280.86 7.71, 280.86 23.12 M280.86 23.12 C280.86 40.94, 280.86 58.77, 280.86 69.36 M280.86 23.12 C280.86 37.05, 280.86 50.98, 280.86 69.36 M280.86 69.36 C280.86 84.78, 273.16 92.48, 257.74 92.48 M280.86 69.36 C280.86 84.78, 273.16 92.48, 257.74 92.48 M257.74 92.48 C188.28 92.48, 118.82 92.48, 23.12 92.48 M257.74 92.48 C205.48 92.48, 153.22 92.48, 23.12 92.48 M23.12 92.48 C7.71 92.48, 0 84.78, 0 69.36 M23.12 92.48 C7.71 92.48, 0 84.78, 0 69.36 M0 69.36 C0 52.3, 0 35.24, 0 23.12 M0 69.36 C0 52.06, 0 34.76, 0 23.12 M0 23.12 C0 7.71, 7.71 0, 23.12 0 M0 23.12 C0 7.71, 7.71 0, 23.12 0" stroke="#1e1e1e" stroke-width="2" fill="none"></path></g><g transform="translate(1288.9597636462456 1033.2039456830826) rotate(0 24.609375 16.799999999999272)"><text x="24.609375" y="26.50703125" font-family="Cascadia, Segoe UI Emoji" font-size="28px" fill="#1e1e1e" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="alphabetic">TCP</text></g><g stroke-linecap="round" transform="translate(1486.2284500735555 1002.8158437753373) rotate(0 140.43242208001084 46.24189805318747)"><path d="M23.12 0 C72.17 0, 121.22 0, 257.74 0 M23.12 0 C104.63 0, 186.15 0, 257.74 0 M257.74 0 C273.16 0, 280.86 7.71, 280.86 23.12 M257.74 0 C273.16 0, 280.86 7.71, 280.86 23.12 M280.86 23.12 C280.86 35.87, 280.86 48.62, 280.86 69.36 M280.86 23.12 C280.86 39.23, 280.86 55.35, 280.86 69.36 M280.86 69.36 C280.86 84.78, 273.16 92.48, 257.74 92.48 M280.86 69.36 C280.86 84.78, 273.16 92.48, 257.74 92.48 M257.74 92.48 C182.95 92.48, 108.16 92.48, 23.12 92.48 M257.74 92.48 C201.63 92.48, 145.51 92.48, 23.12 92.48 M23.12 92.48 C7.71 92.48, 0 84.78, 0 69.36 M23.12 92.48 C7.71 92.48, 0 84.78, 0 69.36 M0 69.36 C0 57.5, 0 45.63, 0 23.12 M0 69.36 C0 54.54, 0 39.71, 0 23.12 M0 23.12 C0 7.71, 7.71 0, 23.12 0 M0 23.12 C0 7.71, 7.71 0, 23.12 0" stroke="#1e1e1e" stroke-width="2" fill="none"></path></g><g transform="translate(1585.3991534035663 1032.2577418285218) rotate(0 41.26171875 16.799999999999272)"><text x="41.26171875" y="26.50703125" font-family="Cascadia, Segoe UI Emoji" font-size="28px" fill="#1e1e1e" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="alphabetic">HTTP2</text></g><g stroke-linecap="round" transform="translate(1797.5244311042234 1001.7984202758307) rotate(0 140.43242208001084 46.24189805318747)"><path d="M23.12 0 C70.71 0, 118.31 0, 257.74 0 M23.12 0 C112.64 0, 202.16 0, 257.74 0 M257.74 0 C273.16 0, 280.86 7.71, 280.86 23.12 M257.74 0 C273.16 0, 280.86 7.71, 280.86 23.12 M280.86 23.12 C280.86 34.24, 280.86 45.36, 280.86 69.36 M280.86 23.12 C280.86 40.14, 280.86 57.16, 280.86 69.36 M280.86 69.36 C280.86 84.78, 273.16 92.48, 257.74 92.48 M280.86 69.36 C280.86 84.78, 273.16 92.48, 257.74 92.48 M257.74 92.48 C166.46 92.48, 75.18 92.48, 23.12 92.48 M257.74 92.48 C206.45 92.48, 155.15 92.48, 23.12 92.48 M23.12 92.48 C7.71 92.48, 0 84.78, 0 69.36 M23.12 92.48 C7.71 92.48, 0 84.78, 0 69.36 M0 69.36 C0 58.89, 0 48.43, 0 23.12 M0 69.36 C0 56.49, 0 43.63, 0 23.12 M0 23.12 C0 7.71, 7.71 0, 23.12 0 M0 23.12 C0 7.71, 7.71 0, 23.12 0" stroke="#1e1e1e" stroke-width="2" fill="none"></path></g><g transform="translate(1888.7381031842342 1031.2403183290153) rotate(0 49.21875 16.799999999999272)"><text x="49.21875" y="26.50703125" font-family="Cascadia, Segoe UI Emoji" font-size="28px" fill="#1e1e1e" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="alphabetic">......</text></g><g stroke-linecap="round" transform="translate(2159.0752210425126 11.557414404844167) rotate(0 188.22359083312926 589.2451531685874)"><path d="M32 0 C155.06 0, 278.11 0, 344.45 0 M32 0 C111.15 0, 190.31 0, 344.45 0 M344.45 0 C365.78 0, 376.45 10.67, 376.45 32 M344.45 0 C365.78 0, 376.45 10.67, 376.45 32 M376.45 32 C376.45 288.83, 376.45 545.65, 376.45 1146.49 M376.45 32 C376.45 311.05, 376.45 590.09, 376.45 1146.49 M376.45 1146.49 C376.45 1167.82, 365.78 1178.49, 344.45 1178.49 M376.45 1146.49 C376.45 1167.82, 365.78 1178.49, 344.45 1178.49 M344.45 1178.49 C262.65 1178.49, 180.85 1178.49, 32 1178.49 M344.45 1178.49 C219.9 1178.49, 95.35 1178.49, 32 1178.49 M32 1178.49 C10.67 1178.49, 0 1167.82, 0 1146.49 M32 1178.49 C10.67 1178.49, 0 1167.82, 0 1146.49 M0 1146.49 C0 910.15, 0 673.81, 0 32 M0 1146.49 C0 912.59, 0 678.69, 0 32 M0 32 C0 10.67, 10.67 0, 32 0 M0 32 C0 10.67, 10.67 0, 32 0" stroke="#1e1e1e" stroke-width="2" fill="none"></path></g><g stroke-linecap="round" transform="translate(2182.384809038372 52.67178060770675) rotate(0 160.93897755828357 129.0799869160437)"><path d="M32 0 C115.97 0, 199.94 0, 289.88 0 C311.21 0, 321.88 10.67, 321.88 32 C321.88 102.93, 321.88 173.85, 321.88 226.16 C321.88 247.49, 311.21 258.16, 289.88 258.16 C205.72 258.16, 121.55 258.16, 32 258.16 C10.67 258.16, 0 247.49, 0 226.16 C0 158.41, 0 90.66, 0 32 C0 10.67, 10.67 0, 32 0" stroke="none" stroke-width="0" fill="#d0bfff"></path><path d="M32 0 C100.02 0, 168.04 0, 289.88 0 M32 0 C110.12 0, 188.24 0, 289.88 0 M289.88 0 C311.21 0, 321.88 10.67, 321.88 32 M289.88 0 C311.21 0, 321.88 10.67, 321.88 32 M321.88 32 C321.88 75.85, 321.88 119.7, 321.88 226.16 M321.88 32 C321.88 92.89, 321.88 153.78, 321.88 226.16 M321.88 226.16 C321.88 247.49, 311.21 258.16, 289.88 258.16 M321.88 226.16 C321.88 247.49, 311.21 258.16, 289.88 258.16 M289.88 258.16 C198.75 258.16, 107.62 258.16, 32 258.16 M289.88 258.16 C214.34 258.16, 138.81 258.16, 32 258.16 M32 258.16 C10.67 258.16, 0 247.49, 0 226.16 M32 258.16 C10.67 258.16, 0 247.49, 0 226.16 M0 226.16 C0 155.45, 0 84.74, 0 32 M0 226.16 C0 151.3, 0 76.45, 0 32 M0 32 C0 10.67, 10.67 0, 32 0 M0 32 C0 10.67, 10.67 0, 32 0" stroke="#1e1e1e" stroke-width="2" fill="none"></path></g><g transform="translate(2268.7983959716557 148.15176752374828) rotate(0 74.525390625 33.599999999998545)"><text x="74.525390625" y="26.50703125" font-family="Cascadia, Segoe UI Emoji" font-size="28px" fill="#1e1e1e" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="alphabetic">Zookeeper</text><text x="74.525390625" y="60.107031250000006" font-family="Cascadia, Segoe UI Emoji" font-size="28px" fill="#1e1e1e" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="alphabetic">......</text></g><g stroke-linecap="round" transform="translate(2186.132835139728 447.4646230842409) rotate(0 160.93897755828357 129.0799869160437)"><path d="M32 0 C94.91 0, 157.82 0, 289.88 0 C311.21 0, 321.88 10.67, 321.88 32 C321.88 93.19, 321.88 154.38, 321.88 226.16 C321.88 247.49, 311.21 258.16, 289.88 258.16 C194.95 258.16, 100.01 258.16, 32 258.16 C10.67 258.16, 0 247.49, 0 226.16 C0 173.63, 0 121.1, 0 32 C0 10.67, 10.67 0, 32 0" stroke="none" stroke-width="0" fill="#d0bfff"></path><path d="M32 0 C99.14 0, 166.29 0, 289.88 0 M32 0 C108.77 0, 185.54 0, 289.88 0 M289.88 0 C311.21 0, 321.88 10.67, 321.88 32 M289.88 0 C311.21 0, 321.88 10.67, 321.88 32 M321.88 32 C321.88 95.94, 321.88 159.89, 321.88 226.16 M321.88 32 C321.88 95.36, 321.88 158.72, 321.88 226.16 M321.88 226.16 C321.88 247.49, 311.21 258.16, 289.88 258.16 M321.88 226.16 C321.88 247.49, 311.21 258.16, 289.88 258.16 M289.88 258.16 C204.95 258.16, 120.02 258.16, 32 258.16 M289.88 258.16 C229.91 258.16, 169.95 258.16, 32 258.16 M32 258.16 C10.67 258.16, 0 247.49, 0 226.16 M32 258.16 C10.67 258.16, 0 247.49, 0 226.16 M0 226.16 C0 171.2, 0 116.25, 0 32 M0 226.16 C0 162.47, 0 98.79, 0 32 M0 32 C0 10.67, 10.67 0, 32 0 M0 32 C0 10.67, 10.67 0, 32 0" stroke="#1e1e1e" stroke-width="2" fill="none"></path></g><g transform="translate(2297.6616564480114 526.1446100002868) rotate(0 49.41015625 50.400000000001455)"><text x="49.41015625" y="26.50703125" font-family="Cascadia, Segoe UI Emoji" font-size="28px" fill="#1e1e1e" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="alphabetic">Random</text><text x="49.41015625" y="60.107031250000006" font-family="Cascadia, Segoe UI Emoji" font-size="28px" fill="#1e1e1e" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="alphabetic">CPU</text><text x="49.41015625" y="93.70703125" font-family="Cascadia, Segoe UI Emoji" font-size="28px" fill="#1e1e1e" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="alphabetic">......</text></g><g stroke-linecap="round" transform="translate(2186.7656813319086 831.0038093607) rotate(0 160.93897755828357 129.0799869160437)"><path d="M32 0 C133.1 0, 234.19 0, 289.88 0 C311.21 0, 321.88 10.67, 321.88 32 C321.88 95.8, 321.88 159.6, 321.88 226.16 C321.88 247.49, 311.21 258.16, 289.88 258.16 C229.39 258.16, 168.91 258.16, 32 258.16 C10.67 258.16, 0 247.49, 0 226.16 C0 171.44, 0 116.72, 0 32 C0 10.67, 10.67 0, 32 0" stroke="none" stroke-width="0" fill="#d0bfff"></path><path d="M32 0 C113.37 0, 194.75 0, 289.88 0 M32 0 C129.24 0, 226.49 0, 289.88 0 M289.88 0 C311.21 0, 321.88 10.67, 321.88 32 M289.88 0 C311.21 0, 321.88 10.67, 321.88 32 M321.88 32 C321.88 91.08, 321.88 150.16, 321.88 226.16 M321.88 32 C321.88 100.18, 321.88 168.36, 321.88 226.16 M321.88 226.16 C321.88 247.49, 311.21 258.16, 289.88 258.16 M321.88 226.16 C321.88 247.49, 311.21 258.16, 289.88 258.16 M289.88 258.16 C219.19 258.16, 148.5 258.16, 32 258.16 M289.88 258.16 C210.03 258.16, 130.19 258.16, 32 258.16 M32 258.16 C10.67 258.16, 0 247.49, 0 226.16 M32 258.16 C10.67 258.16, 0 247.49, 0 226.16 M0 226.16 C0 182.69, 0 139.21, 0 32 M0 226.16 C0 165.55, 0 104.94, 0 32 M0 32 C0 10.67, 10.67 0, 32 0 M0 32 C0 10.67, 10.67 0, 32 0" stroke="#1e1e1e" stroke-width="2" fill="none"></path></g><g transform="translate(2265.673408890192 926.4837962767415) rotate(0 82.03125 33.599999999998545)"><text x="82.03125" y="26.50703125" font-family="Cascadia, Segoe UI Emoji" font-size="28px" fill="#1e1e1e" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="alphabetic">logging</text><text x="82.03125" y="60.107031250000006" font-family="Cascadia, Segoe UI Emoji" font-size="28px" fill="#1e1e1e" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="alphabetic">(built-in)</text></g><g transform="translate(2261.4154777573262 61.278489613803686) rotate(0 84.8583984375 21.599999999998545)"><text x="84.8583984375" y="34.080468749999994" font-family="Cascadia, Segoe UI Emoji" font-size="36px" fill="#1e1e1e" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="alphabetic">Registry</text></g><g transform="translate(2235.8323533429157 455.80787824255094) rotate(0 116.2265625 21.599999999998545)"><text x="116.2265625" y="34.080468749999994" font-family="Cascadia, Segoe UI Emoji" font-size="36px" fill="#1e1e1e" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="alphabetic">LoadBalance</text></g><g transform="translate(2280.5833277747192 839.1269441043551) rotate(0 73.828125 21.599999999998545)"><text x="73.828125" y="34.080468749999994" font-family="Cascadia, Segoe UI Emoji" font-size="36px" fill="#1e1e1e" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="alphabetic">Logging</text></g><g stroke-linecap="round"><g transform="translate(475.8625613891759 124.28658176855242) rotate(0 -58.441970095320926 0.591573614430672)"><path d="M0 0 C-19.48 0.2, -97.4 0.99, -116.88 1.18 M0 0 C-19.48 0.2, -97.4 0.99, -116.88 1.18" stroke="#1e1e1e" stroke-width="2" fill="none"></path></g><g transform="translate(475.8625613891759 124.28658176855242) rotate(0 -58.441970095320926 0.591573614430672)"><path d="M-93.48 -7.6 C-100.89 -4.82, -108.3 -2.04, -116.88 1.18 M-93.48 -7.6 C-98.99 -5.53, -104.51 -3.46, -116.88 1.18" stroke="#1e1e1e" stroke-width="2" fill="none"></path></g><g transform="translate(475.8625613891759 124.28658176855242) rotate(0 -58.441970095320926 0.591573614430672)"><path d="M-93.31 9.5 C-100.77 6.86, -108.24 4.23, -116.88 1.18 M-93.31 9.5 C-98.86 7.54, -104.41 5.58, -116.88 1.18" stroke="#1e1e1e" stroke-width="2" fill="none"></path></g></g><mask></mask><g transform="translate(175.72488355045186 97.58460050871508) rotate(0 39.7705078125 27.151161707497522)"><text x="39.7705078125" y="42.83908880086239" font-family="Cascadia, Segoe UI Emoji" font-size="45.251936179165554px" fill="#1e1e1e" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="alphabetic">API</text></g><g transform="translate(82.48590444307274 321.14233580422297) rotate(0 132.568359375 54.30232341499868)"><text x="132.568359375" y="42.83908880086239" font-family="Cascadia, Segoe UI Emoji" font-size="45.251936179165554px" fill="#1e1e1e" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="alphabetic">Service</text><text x="132.568359375" y="97.14141221586105" font-family="Cascadia, Segoe UI Emoji" font-size="45.251936179165554px" fill="#1e1e1e" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="alphabetic">Governance</text></g><g stroke-linecap="round"><g transform="translate(478.4420974986092 368.248788854311) rotate(0 -58.441970095320926 0.591573614430672)"><path d="M0 0 C-19.48 0.2, -97.4 0.99, -116.88 1.18 M0 0 C-19.48 0.2, -97.4 0.99, -116.88 1.18" stroke="#1e1e1e" stroke-width="2" fill="none"></path></g><g transform="translate(478.4420974986092 368.248788854311) rotate(0 -58.441970095320926 0.591573614430672)"><path d="M-93.48 -7.6 C-100.14 -5.1, -106.8 -2.6, -116.88 1.18 M-93.48 -7.6 C-102.81 -4.1, -112.13 -0.6, -116.88 1.18" stroke="#1e1e1e" stroke-width="2" fill="none"></path></g><g transform="translate(478.4420974986092 368.248788854311) rotate(0 -58.441970095320926 0.591573614430672)"><path d="M-93.31 9.5 C-100.02 7.13, -106.73 4.76, -116.88 1.18 M-93.31 9.5 C-102.7 6.18, -112.1 2.87, -116.88 1.18" stroke="#1e1e1e" stroke-width="2" fill="none"></path></g></g><mask></mask><g transform="translate(100.72068075268328 555.0539858972988) rotate(0 106.31982421875 54.30232341499868)"><text x="106.31982421875" y="42.83908880086239" font-family="Cascadia, Segoe UI Emoji" font-size="45.251936179165554px" fill="#1e1e1e" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="alphabetic">RPC</text><text x="106.31982421875" y="97.14141221586105" font-family="Cascadia, Segoe UI Emoji" font-size="45.251936179165554px" fill="#1e1e1e" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="alphabetic">Protocol</text></g><g stroke-linecap="round"><g transform="translate(480.4988476231972 610.2367909709792) rotate(0 -59.88651031660356 0.8357696994571597)"><path d="M0 0 C-19.96 0.28, -99.81 1.39, -119.77 1.67 M0 0 C-19.96 0.28, -99.81 1.39, -119.77 1.67" stroke="#1e1e1e" stroke-width="2" fill="none"></path></g><g transform="translate(480.4988476231972 610.2367909709792) rotate(0 -59.88651031660356 0.8357696994571597)"><path d="M-96.4 -7.21 C-103.55 -4.49, -110.7 -1.78, -119.77 1.67 M-96.4 -7.21 C-101.87 -5.13, -107.34 -3.05, -119.77 1.67" stroke="#1e1e1e" stroke-width="2" fill="none"></path></g><g transform="translate(480.4988476231972 610.2367909709792) rotate(0 -59.88651031660356 0.8357696994571597)"><path d="M-96.16 9.89 C-103.39 7.38, -110.61 4.86, -119.77 1.67 M-96.16 9.89 C-101.69 7.97, -107.21 6.05, -119.77 1.67" stroke="#1e1e1e" stroke-width="2" fill="none"></path></g></g><mask></mask><g transform="translate(10 789.8261656705363) rotate(0 172.3388671875 27.151161707497522)"><text x="172.3388671875" y="42.83908880086239" font-family="Cascadia, Segoe UI Emoji" font-size="45.251936179165554px" fill="#1e1e1e" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="alphabetic">Serialization</text></g><g stroke-linecap="round"><g transform="translate(478.5796727577789 822.3021742182318) rotate(0 -58.441970095320926 0.591573614430672)"><path d="M0 0 C-19.48 0.2, -97.4 0.99, -116.88 1.18 M0 0 C-19.48 0.2, -97.4 0.99, -116.88 1.18" stroke="#1e1e1e" stroke-width="2" fill="none"></path></g><g transform="translate(478.5796727577789 822.3021742182318) rotate(0 -58.441970095320926 0.591573614430672)"><path d="M-93.48 -7.6 C-100.44 -4.99, -107.4 -2.38, -116.88 1.18 M-93.48 -7.6 C-98.49 -5.72, -103.5 -3.84, -116.88 1.18" stroke="#1e1e1e" stroke-width="2" fill="none"></path></g><g transform="translate(478.5796727577789 822.3021742182318) rotate(0 -58.441970095320926 0.591573614430672)"><path d="M-93.31 9.5 C-100.32 7.02, -107.33 4.55, -116.88 1.18 M-93.31 9.5 C-98.35 7.72, -103.4 5.94, -116.88 1.18" stroke="#1e1e1e" stroke-width="2" fill="none"></path></g></g><mask></mask><g transform="translate(79.5501323762901 1025.3625724425074) rotate(0 119.3115234375 27.151161707497522)"><text x="119.3115234375" y="42.83908880086239" font-family="Cascadia, Segoe UI Emoji" font-size="45.251936179165554px" fill="#1e1e1e" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="alphabetic">transport</text></g><g stroke-linecap="round"><g transform="translate(477.7129486250094 1051.97031187627) rotate(0 -58.441970095320926 0.591573614430672)"><path d="M0 0 C-19.48 0.2, -97.4 0.99, -116.88 1.18 M0 0 C-19.48 0.2, -97.4 0.99, -116.88 1.18" stroke="#1e1e1e" stroke-width="2" fill="none"></path></g><g transform="translate(477.7129486250094 1051.97031187627) rotate(0 -58.441970095320926 0.591573614430672)"><path d="M-93.48 -7.6 C-102.71 -4.14, -111.94 -0.67, -116.88 1.18 M-93.48 -7.6 C-102.04 -4.39, -110.6 -1.18, -116.88 1.18" stroke="#1e1e1e" stroke-width="2" fill="none"></path></g><g transform="translate(477.7129486250094 1051.97031187627) rotate(0 -58.441970095320926 0.591573614430672)"><path d="M-93.31 9.5 C-102.61 6.22, -111.91 2.94, -116.88 1.18 M-93.31 9.5 C-101.93 6.46, -110.55 3.42, -116.88 1.18" stroke="#1e1e1e" stroke-width="2" fill="none"></path></g></g><mask></mask></svg> \ No newline at end of file