Inter pod communication using shared memory

Hi all, Is Boost supports inter pod communication using shared memory or other ways like boost interprocess communication. Looking inputs on this. Regards, Murali ________________________________ This e-mail message may contain confidential or proprietary information of Mavenir Systems, Inc. or its affiliates and is intended solely for the use of the intended recipient(s). If you are not the intended recipient of this message, you are hereby notified that any review, use or distribution of this information is absolutely prohibited and we request that you delete all copies in your control and contact us by e-mailing to security@mavenir.com. This message contains the views of its author and may not necessarily reflect the views of Mavenir Systems, Inc. or its affiliates, who employ systems to monitor email messages, but make no representation that such messages are authorized, secure, uncompromised, or free from computer viruses, malware, or other defects. Thank You

Yes Ion, like boost inter process, is it possible to use boost library for using shared memory between Kubernetes pods?
Regards,
Murali
-----Original Message-----
From: Boost
I don't fully understand your question. Are you are talking about Kubernetes pods? In this case any network communication stack will work and Boost has tools for that (Asio, Beast, etc.) Best, Ion _______________________________________________ Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost ________________________________ This e-mail message may contain confidential or proprietary information of Mavenir Systems, Inc. or its affiliates and is intended solely for the use of the intended recipient(s). If you are not the intended recipient of this message, you are hereby notified that any review, use or distribution of this information is absolutely prohibited and we request that you delete all copies in your control and contact us by e-mailing to security@mavenir.com. This message contains the views of its author and may not necessarily reflect the views of Mavenir Systems, Inc. or its affiliates, who employ systems to monitor email messages, but make no representation that such messages are authorized, secure, uncompromised, or free from computer viruses, malware, or other defects. Thank You

El 28/08/2024 a las 13:54, Murali Bathina escribió:
Yes Ion, like boost inter process, is it possible to use boost library for using shared memory between Kubernetes pods?
No, I'm not aware of any library that can do that. I don't know if that is even possible, as you need to share memory and guarantee atomic operations on memory between pods that can be in different nodes (which implies network traffic). Best, Ion

Hi all, Adding to above question, scenario details: if kubernetes pods are created in the same machine with enabling shared memory so that both pods can access this shared area. In this case, if we run one process in pod 1 and another process in pod2, and these processes are using boost interprocess to create/find class objects, STL containers. I am able to create the above scenario and run 2 pods and verified class object sharing using boost interprocess library, want to check with you all if there are any risks in using this way w.r.t performance and stability (unexpected behaviour). Are there any limitations/ design aspects that need to be taken care while using boost library ? Regards, Murali Kishore On Thu, Aug 29, 2024 at 3:55 PM Murali Bathina via Boost < boost@lists.boost.org> wrote:
-- Regards, Murali Kishore

El 29/08/2024 a las 12:40, Murali Kishore escribió:
Hi, Glad to hear Boost.Interprocess is being used in innovative ways. If usual shared memory (/dev/shm) between Linux containers is used, then I don't expect any problem and/or performance issue because there is no kubernetes/docker software layer between Boost.Interprocess accesses to mapped memory. Usual linux kernel is managing those accesses. In any case, I've never tried using Boost.Interprocess between linux containers so I can't 100% guarantee everything will work fine. We'll try to help if something unexpected happens ;-) Best, Ion

Hi all You should not store STL containers in shared memory. Shared memory pages may be mapped to different addresses in different processes. If the STL container uses pointers to nodes (like list, map etc. do), these pointers are only valid for processes that mapped the shared memory to the address. And it is not possible to always map the shared memory to the same address. You should use the containers from Boost.Interprocess, because they store address offsets instead of pointers == addresses. Best regards René Am Fr., 30. Aug. 2024 um 02:56 Uhr schrieb Murali Kishore via Boost < boost@lists.boost.org>:
-- “Dubito ergo cogito; cogito ergo sum. (I doubt, therefore I think; I think therefore I am)” René Descartes
participants (4)
-
Ion Gaztañaga
-
Murali Bathina
-
Murali Kishore
-
René Eng