Closed benjioh5 closed 3 years ago
I think nexrender-server use db or seperated files for each jobs for efficient management. Nexrender-server is too simple to manage lots of render works (~1000 jobs/daily).
Can I contribute by adding db or patching these code on nexrender-server?
Yeah, for sure. Seems to me that the simple file-based read/write for database outlived itself. At the very least for projects with high amounts of render jobs.
I think it would be great to add something like a switch allowing the user to choose which database backend he'd like to use, with the current single-file-based one being the default (at least for some time, for adoption purposes). And adding some abstraction layer within nexrender so that other users would be able to contribute by adding their database drives of choice as well. What do you think @benjioh5 ?
@inlife Is there any progress on this issue? What DB would be the first one to be supported?
@ivansenic first thing that would be probably is the interface and basic file-based storage system, as well as legacy single-file database. From my side I might add some basic Mongodb support, SQLite, and maybe even Redis.
But I have to warn you, no work has been started on this issue yet, so to answer your question: no progress yet.
Been thinking about working on something like this lately, but life still hasn't let me
For my project I'll end up dumping server data in a postgres database, eventually, just don't know how to structure the code.
Interface DB operations or a DB class and let user choose? Is this a server-side config file, environment variable or something else?
This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.
Describe the bug
When
~/nexrender/database.js
's size exceeds nodejs (v8)'s heap size or JSON.stringify's length spec, nexrender-server always fail until remove~/nexrender/database.js
file manually.Information about environment
Expected behavior Use JSONStream or automatically remove
database.js
's finished jobs.Screenshots