sqlite | rq | |
---|---|---|
7 | 27 | |
554 | 9,523 | |
- | 0.8% | |
0.0 | 8.6 | |
15 days ago | 4 days ago | |
C | Python | |
ISC License | GNU General Public License v3.0 or later |
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.
sqlite
-
Redis Re-Implemented with SQLite
> You can get substantially better performance out of sqlite by using the lower level https://github.com/crawshaw/sqlite, turning on WAL etc, using a connection per goroutine for reads, and sending batches of writes over a buffered channel / queue to a dedicated writer thread. That way you can turn off SQLite’s built in per-connection mutex but still be thread safe since each connection is only used on a single thread at a time.
Would this protect against a row update in the middle of a read? e.g. would a row at least be internally consistent at the time it was read?
-
SQLite in Go, with and Without Cgo
The default go sqlite driver is https://github.com/mattn/go-sqlite3, which is quite lovely, but I ran into issues with concurrency on read only databases.
I'm now using https://github.com/crawshaw/sqlite and it seems to address those issues (but I haven't gotten around to setting up a proper test to confirm). It may be worth perusing if you do run into performance problems. It does come with the caveat of not being a database/sql driver though.
-
Awesome SQLite
crawshaw/sqlite - Low-level Go interface to SQLite
-
A pure Go embedded SQL database
crawshaw/sqlite actually uses CGo -- it's a wrapper around the C version of SQLite. For example, see https://github.com/crawshaw/sqlite/blob/23d646f8ac00d9dd2390...
zombiezen/go-sqlite uses cznic's pure Go converted version of SQLite, so avoids CGo. It's explicitly stated to be "a fork of crawshaw.io/sqlite that uses modernc.org/sqlite, a CGo-free SQLite package. It aims to be a mostly drop-in replacement for crawshaw.io/sqlite."
-
Are both MySQL and Postgres drivers similar in quality?
The second well known driver is https://github.com/crawshaw/sqlite
rq
-
Redis Re-Implemented with SQLite
That's pretty cool. Reckon it would work with existing code that calls Redis over the wire for RQ?
https://python-rq.org
-
The Many Problems with Celery
https://github.com/rq/rq is to the rescue.
-
Keep the Monolith, but Split the Workloads
We use RQ[0], it has Redis as a dependency. It’s pretty straightforward and we’re very happy with it. If you are using Django you may want to look at Django RQ[1] as well. RQ has built in scheduling capabilities these days, but historically it did not so we used (and still use) RQ Scheduler[2] which I think still has some advantages over the built in stuff.
[0] https://python-rq.org/
-
SQL Maxis: Why We Ditched RabbitMQ and Replaced It with a Postgres Queue
Also had a similar experience using RabbitMQ with Django+Celery. Extremely complicated and workers/queues would just stop for no reason.
Moved to Python-RQ [1] + Redis and been rock solid for years now.
[1] https://python-rq.org/
- Ask HN: Redis Queue Hacks and Questions
- What libraries do you use the most alongside django?
-
Recommendations other than celery to send an API processing in background, which would only take 5 mins to process and API usage would be once a month or so.
Yep, rq is simple and good: https://python-rq.org/ It also has a Django wrapper: https://github.com/rq/django-rq
-
GPU instance crashes when two python processes use the same pt file
We have a GPU (G5) instance that uses Python RQ (https://python-rq.org/).
- Dynamically update periodic tasks in Celery and Django
- Celery + RabbitMQ alternatives
What are some alternatives?
sqlite
celery - Distributed Task Queue (development branch)
go-sqlite-lite - SQLite driver for the Go programming language
huey - a little task queue for python
go-sqlite - Low-level Go interface to SQLite 3
RabbitMQ - Open source RabbitMQ: core server and tier 1 (built-in) plugins
go-sqlite3 - sqlite3 driver for go using database/sql
mrq - Mr. Queue - A distributed worker task queue in Python using Redis & gevent
chai - Modern embedded SQL database
procrastinate - PostgreSQL-based Task Queue for Python
ql
Apache Kafka - Mirror of Apache Kafka