8bffcfe82b
This cache can serve invalid responses, and has an extremely low hit rate. It serves invalid responses because because it's only keyed off the `since` parameter, but many of the other request parameters also affect the response or it's side effects. This will become worse once we implement filtering, because there will be a wider space of parameters with different responses. This problem is fixable, but not worth it because of the low hit rate. The low hit rate is because normal clients will always issue the next sync request with `since` set to the `prev_batch` value of the previous response. The only time we expect to see multiple requests with the same `since` is when the response is empty, but we don't cache empty responses. This was confirmed experimentally by logging cache hits and misses over 15 minutes with a wide variety of clients. This test was run on matrix.computer.surgery, which has only a few active users, but a large volume of sync traffic from many rooms. Over the test period, we had 3 hits and 5309 misses. All hits occurred in the first minute, so I suspect that they had something to do with client recovery from an offline state. The clients that were connected during the test are: - element web - schildichat web - iamb - gomuks - nheko - fractal - fluffychat web - fluffychat android - cinny web - element android - element X android Fixes: #336 |
||
---|---|---|
.gitea | ||
.github/workflows | ||
.gitlab | ||
bin | ||
debian | ||
docs | ||
nix/pkgs | ||
src | ||
tests | ||
.dockerignore | ||
.editorconfig | ||
.envrc | ||
.git-blame-ignore-revs | ||
.gitignore | ||
.gitlab-ci.yml | ||
audit.toml | ||
book.toml | ||
Cargo.lock | ||
Cargo.toml | ||
clippy.toml | ||
CODE_OF_CONDUCT.md | ||
conduwuit-example.toml | ||
CONTRIBUTING.md | ||
default.nix | ||
engage.toml | ||
flake.lock | ||
flake.nix | ||
LICENSE | ||
README.md | ||
renovate.json | ||
rust-toolchain.toml | ||
rustfmt.toml |
conduwuit
a very cool, featureful fork of Conduit
Visit the Conduwuit documentation for more information.
What is Matrix?
Matrix is an open network for secure and decentralized communication. Users from every Matrix homeserver can chat with users from all other Matrix servers. You can even use bridges (also called Matrix Appservices) to communicate with users outside of Matrix, like a community on Discord.
What is the goal?
An efficient Matrix homeserver that's easy to set up and just works. You can install it on a mini-computer like the Raspberry Pi to host Matrix for your family, friends or company.
Can I try it out?
An official conduwuit server ran by me is available at transfem.dev (element.transfem.dev / cinny.transfem.dev)
transfem.dev is a public homeserver that can be used, it is not a "test only homeserver". This means there are rules, so please read the rules: https://transfem.dev/homeserver_rules.txt
transfem.dev is also listed at servers.joinmatrix.org
What is the current status?
conduwuit is a hard fork of Conduit which is in beta, meaning you can join and participate in most Matrix rooms, but not all features are supported and you might run into bugs from time to time.
Contact
If you run into any question, feel free to
- Ask us in
#conduwuit:puppygock.gay
on Matrix - Open an issue on GitHub
Donate
- Liberapay: https://liberapay.com/girlbossceo
- Ko-fi: https://ko-fi.com/puppygock
- GitHub Sponsors: https://github.com/sponsors/girlbossceo
Logo
Original repo and Matrix room picture was from bran (<3). Current banner image and logo is directly from this cohost post.
Is it conduwuit or Conduwuit?
Both, but I prefer conduwuit.
Mirrors of conduwuit
- GitHub: https://github.com/girlbossceo/conduwuit
- GitLab: https://gitlab.com/conduwuit/conduwuit
- git.girlcock.ceo: https://git.girlcock.ceo/strawberry/conduwuit
- git.gay: https://git.gay/june/conduwuit
- Codeberg: https://codeberg.org/girlbossceo/conduwuit
- sourcehut: https://git.sr.ht/~girlbossceo/conduwuit