r2d2
A generic connection pool for Rust (by sfackler)
rust-mysql-simple
Mysql client library implemented in rust. (by blackbeam)
Our great sponsors
r2d2 | rust-mysql-simple | |
---|---|---|
1 | 3 | |
1,421 | 643 | |
- | - | |
2.3 | 6.7 | |
8 months ago | 11 days ago | |
Rust | Rust | |
Apache License 2.0 | Apache License 2.0 |
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
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.
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.
r2d2
Posts with mentions or reviews of r2d2.
We have used some of these posts to build our list of alternatives
and similar projects. The last one was on 2022-04-13.
-
How to create a connection pool for MongoDB in Rust?
When you look at r2d2 (https://crates.io/crates/r2d2), it says:
rust-mysql-simple
Posts with mentions or reviews of rust-mysql-simple.
We have used some of these posts to build our list of alternatives
and similar projects. The last one was on 2022-07-22.
-
Diesel 2.0.0 RC1
We use libmysqlclient mostly for historic reasons. The mysql crate did just not exist back then when diesel started and rewriting all the internal code now is just something that we did not have the time nor motivation for. That written: Diesel is designed in such a way that connections can be provided by third party crates, even for existing backends. Diesel 2.0 adds explicit documentation for this as part of the connection trait and we are definitively interested to see pure rust implementations for the postges and mysql backend there. Also there is this discussion in the rust-mysql crate repository about a potential diesel integration. If someone is interested in working on this (or the equivalent implementation for postgresql), please reach out to us. We definitively can provide some pointers where to look for stuff and how to generally approach such an implementation. It's likely nothing that's really hard, it just requires someone to spend some work on it.
-
Reviews of the Diesel ORM, are there better alternatives?
I can understand that this can be frustrating and I know that the situation there is not ideal for diesel. There are certainly things to improve there by either providing a bundling support which builds the native library as part of the normal build process or by implementing a pure rust connection implementation. Both is possible with diesel, but requires some work. At least the pure rust connection implementation is something that can be provided by a third party crate now with upcoming diesel 2.0 release. If you are interested in that checkout this and this issue. As for the bundling support: This requires changes in the mysqlclient-sys and pq-sys crates. Again help there is welcome. In the end it makes me sad that some people have repeating decided that a solution to this problem is to write just another crate instead of helping to fix these issues. This just results in everyone have more work to do, as there are now two non-perfect solutions instead of having one slightly improved solution.
What are some alternatives?
When comparing r2d2 and rust-mysql-simple you can also consider the following projects:
mysql_async - Asyncronous Rust Mysql driver based on Tokio.
diesel - A safe, extensible ORM and Query Builder for Rust
redis-rs - Redis library for rust
mysql-proxy-rs - A highly scalable MySQL Proxy framework written in Rust
rust-postgres - Native PostgreSQL driver for the Rust programming language
rusqlite - Ergonomic bindings to SQLite for Rust
rust-etcd - An etcd client library for Rust.
mongo-rust-driver-prototype
rust-rocksdb - rust wrapper for rocksdb
SQLite - Interface to SQLite
sqlx - 🧰 The Rust SQL Toolkit. An async, pure Rust SQL crate featuring compile-time checked queries without a DSL. Supports PostgreSQL, MySQL, and SQLite.