Hi, I've been using Cassandra for a personal project, and I recently started porting my project to D within vibe.d.
I was wondering about the direction of this project, as I'm likely to use it a lot and to contribute when I'm able.
- I'm looking at DataStax's C++ driver, and I noticed this line:
It’s generally better to create a single session with more I/O threads than multiple sessions with a smaller number of I/O threads. It seems to me, as this project currently stands, it requires a fresh connectCassandraDB instance to be started per vibe.d thread/fiber (at least per client http request).. Am I wrong? (I'll admit I need to learn about the thread/fiber difference and how they work in vibe.d.)
- Regarding the answer to question 1, where is a good place to initialize the connection in vibe.d? It does seem as though a single connection would save much latency, but I'm not sure if this project is thread-safe yet (which I would be happy to work on as I learn more).
- Are there any guiding design principles you would prefer? If I was to start a driver like this from scratch, I would likely use the DataStax ones as guides/inspiration. Would you support that?
Thank you
Hi, I've been using Cassandra for a personal project, and I recently started porting my project to D within vibe.d.
I was wondering about the direction of this project, as I'm likely to use it a lot and to contribute when I'm able.
It’s generally better to create a single session with more I/O threads than multiple sessions with a smaller number of I/O threads.It seems to me, as this project currently stands, it requires a fresh connectCassandraDB instance to be started per vibe.d thread/fiber (at least per client http request).. Am I wrong? (I'll admit I need to learn about the thread/fiber difference and how they work in vibe.d.)Thank you