0xharu / nerd-storage Goto Github PK
View Code? Open in Web Editor NEWA simple LAN storage
License: GNU General Public License v3.0
A simple LAN storage
License: GNU General Public License v3.0
Writing this as an open-ended discussion and will be submitting the same information to the respective packages involved in this issue. Please note that this issue has been raised several times before, but has yet to be fixed / resolved. (Flask #2086, Werkzeug #1041, Werkzeug #510, Codalab-Worksheet #301, see also: StackOverflow Question)
Currently, the default_stream_factory
that is embedded in Werkzeug (a Flask Dependency) splits files and performs one of two operations:
This creates one main visible problem:
And one hidden problem:
default_stream_factory
) still eat into the RAM of the host machine, despite being sent to /tmp via TemporaryFile
or SpooledTemporaryFile
.This redundancy can lead to a severe issue.
I was testing NS on a 4GB machine and performing a 4GB upload, which crashed the machine, and led me do two things:
/etc/fstab
I've not found a fix for this or any surefire way of counteracting the problem. Despite ensuring that /tmp has more than enough storage, RAM is still consumed. If the upload eats the RAM to 100% a system crash will occur, throwing the server offline. Somewhere in the reading I've been doing it's been suggested that Werkzeug stores the files into memory regardless of size (rendering formparser
useless?) and has sloppy management with the data.
Any possible fixes or monkey patches would be appreciated; collaboration and discussion is welcome!
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.