Code Monkey home page Code Monkey logo

Comments (2)

krizhanovsky avatar krizhanovsky commented on August 10, 2024

Actually, there is no application for the file system. Web cache, as well as Web content files, are HTTP header and response/content body compilation with binary data. So the files aren't suitable for user reading and modifications. The data and HTTP headers binary representation are not trivial to represent to a user. Such records representation are more suitable for databases, so tdbq should be used instead. Also it'd be hard, at least not fast, to recreate directory tree from URIs of stored Web cache entries.

The binary representation is required to avoid overheads like Nginx has: parsing of raw text representation of cached HTTP headers, storing HTTP headers in Web cache which always are rewritten, hash lookups to get suitable Content-Type for a serviced file etc.

Also consider this nice presentation about HTTP proxy servers. ATS uses lovely database-like approach for Web-cache. File system databases for Web cache looks too old school.

from tempesta.

krizhanovsky avatar krizhanovsky commented on August 10, 2024

Actually we do need the filesystem, but for other purpose - provide mmap() and msync() interfaces to tdbq for faster true zero-copy data access.

Also tdbfs could be a good point for containers isolation, so containers, just like they do this with filesystem, can load and manage their web content with Tempesta FW in isolated way.

.htaccess

tdbfs may provide directory-based per-vhost configuration like Apache's .htaccess - the vhost-specific configuration files must be dynamically reloaded along with the main configuration file (see #67). In this sense the file based access in only an interface for a user.

tdbfs must provide user/group access control.

from tempesta.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.