summaryrefslogtreecommitdiffstats
path: root/src/libcephfs_proxy/proxy_helpers.c (follow)
Commit message (Collapse)AuthorAgeFilesLines
* Initial version of the libcephfs proxyXavi Hernandez2024-09-261-0/+81
The libcephfs proxy is composed by a new daemon process (libcephfsd) and a new library (libcephfs_proxy.so) that allow client applications to work without directly connecting to the libcephfs.so library. The libcephfs_proxy.so library exports binary compatible versions of the libcephfs.so functions. These functions forward the application requests to the libcephfsd daemon running on the same machine through a UNIX socket. The daemon, which is linked to the real libcephfs.so library, executes the incoming requests and sends back the answers. The client application doesn't need to be modified to use the proxy. It just needs to link against libcephfs_proxy.so instead of libcephfs.so, or even use LD_PRELOAD when executing it. The main advantage of using the proxy is that all ceph mounts are managed in a single place (the libcephfsd daemon), which will help reduce memory usage when many processes are connecting to the same Ceph volumes using the same configuration. Signed-off-by: Xavi Hernandez <xhernandez@gmail.com>