moka
Stretto
moka | Stretto | |
---|---|---|
4 | 8 | |
1,345 | 615 | |
3.0% | - | |
9.3 | 5.0 | |
13 days ago | about 2 months ago | |
Rust | JavaScript | |
Apache License 2.0 | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
moka
-
Python deserves a good in-memory cache library!
If you know Caffeine(Java)/Ristretto(Go)/Moka(Rust), you know what Theine is. Python deserves a good in-memory cache library.
-
caching, asynchronous, request deduplication - deduplicate 0.3.1
Thanks for the feedback. I am aware of Moka. We used it on a work project but stopped because we had a couple of issues with it. The main one was: https://github.com/moka-rs/moka/issues/154 which I think is fixed now and a smaller issue which was caused by the Quanta crate crashing on AMD chips (also fixed).
-
Writing a concurrent LRU cache
Ya, I saw concache but I looked into it and it doesn't implement what is needed. Each bucket has its own linked-list backing (hence "lock-free linked list buckets"). An LRU needs each value in each bucket to be part of one linked list I believe. After posting this I realized my line of research was failing because it was state of the art five years ago. Caffeine replaced `concurrentlinkedhashmap` in the java world (by the same author). A rust version of that is Moka. These are much more complicated than a concurrent LRU but faster (aka more state of the art). Another rust crate is Stretto which is a port of dgraph's Ristretto (in go). The question becomes is it worth it to essentially port `concurrentlinkedhashmap` to have a great concurrent LRU when there are more state of the art caches out there.
-
Stretto - a thread-safe, high-performance, high hit-ratio cache.
How does it compare to https://github.com/moka-rs/moka ?
Stretto
-
Open source Spotify client that doesn't require Premium nor uses Electron
This being native is super nice!
I maintain an open source web-based music player called Stretto[1]. It works well as a PWA on Android, but it depends on a chrome extension to bypass CORs.
Allows you to import playlists from Spotify and automatically backs them with a YouTube track (similar to this service). Also supports adding SoundCloud tracks, for those that love their remixes.
[1]https://github.com/benkaiser/stretto
-
Every single day of my life :)
GitHub: https://github.com/benkaiser/stretto Website: https://next.kaiserapps.com/
-
Stretto Music Player
This blog post is a write-up about the open-source web-based music player I've worked on for the last 8 years. https://github.com/benkaiser/stretto
-
r/audius improvements / ideas thread
Checkout my music player, https://next.kaiserapps.com I added basic audius support (you can add audius songs to your library) and it supports offlining songs.
-
Stretto Music Player now supports Audius playback
You can find the hosted version of Stretto here: https://next.kaiserapps.com/ (requires installing a chrome extension to make API calls work).
What are some alternatives?
stretto - Stretto is a Rust implementation for Dgraph's ristretto (https://github.com/dgraph-io/ristretto). A high performance memory-bound Rust cache.
moOde Audio - moOde sources and configs
ristretto - A high performance memory-bound Go cache
ympd - Standalone MPD Web GUI written in C, utilizing Websockets and Bootstrap/JS
dashmap - Blazing fast concurrent HashMap for Rust.
Volumio - Volumio 2 - Audiophile Music Player
rust-memcache - memcache client for rust
Snapcast - Synchronous multiroom audio player
concurrentlinkedhashmap - A ConcurrentLinkedHashMap for Java
mStream - The easiest music streaming server available
cached - Rust cache structures and easy function memoization
AzuraCast - A self-hosted web radio management suite, including turnkey installer tools for the full radio software stack and a modern, easy-to-use web app to manage your stations.