Посмотрите в сторону
WebDAV. Поднимается либо поверх обычного веб-сервера, либо встраивается прямо в приложение.
Для Python есть
easywebdav.
Для Java неплохо выглядит
sardine.
Если вам нужно что-то распределенное и для больших объемов, но при этом своё, посмотрите в сторону распределенных ФС. Например, GridFS, GlusterFS, pohmelfs. У них разное назначение и ниша, поэтому не все из них могут быть применимы в ваших задачах.