Lack of interest Easily allow for multiple web servers and load balancers by moving disk cache to Redis

This suggestion has been closed automatically because it did not receive enough votes over an extended period of time. If you wish to see this, please search for an open suggestion and, if you don't find any, post a new one.

Mouth

Well-known member
Load balancers and multiple web servers/nodes is quickly becoming normal product offerings in hosting environments, and very easy to setup. Utilising this functionality makes lots of sense for XF sites, particularly those with the majority of users/visitors in the the same/similar time zone or geographic area. Start and stop web servers as needed for peak/normal load vs low/overnight load, as well as the ability to still have your site operational whilst performing maintenance or upgrades on a server.

Disk caching is currently the complexity to easily activating/achieving the above, eg. internal_data/code_cache since it must be separately synchronised/maintained between servers using tools like rsync, nfs, file cluster etc.

Thus, the suggestion is for config.php directives to instead move disk cache into Redis ( my internal_data/*_cache/ total is only 350M, easily handled by RAM on a seperate server/node ), similar to guest page caching.
 
Upvote 0
This suggestion has been closed. Votes are no longer accepted.
This is not possible, PHP files can't be loaded from Redis natively - PHP can only load files from a filesystem.
(At least not without resorting to evil eval or using FUSE).

There are a few Redis/FUSE projects on Github, but none seems to be maintained.
Even if there was one, it would basically be just another distributed filesystem - so you could just use one that's established (GlusterFS, CephFS, etc.)

Metadata performance for distributed/cluster filesystems usually isn't great, so keep this in mind if you consider taking this route.
A sync approach with local filesystems would most certainly result in better/optimal performance but does require a bit of plumbing things together.
 
Last edited:
Top Bottom