CPC G06F 21/566 (2013.01) [G06F 9/505 (2013.01); G06F 21/577 (2013.01); G06F 2221/033 (2013.01)] | 30 Claims |
1. A computer-program product comprising a non-transitory machine-readable storage medium storing computer instructions that, when executed by one or more processors, perform operations comprising:
initializing, within a compute environment, a first container that provides a set of runtime components for a target programming language and a predetermined set of algorithms written in the target programming language;
writing, by a resource transfer task executing within the first container, the set of runtime components for the target programming language and the predetermined set of algorithms written in the target second programming language to a shared storage volume of the compute environment;
initializing, within the compute environment, a second container that provides a runtime environment for executing an analytics backend service written in a first programming language, wherein the second container securely executes the runtime environment independent of the set of runtime components of the first container to mitigate a risk of cross-container security threats associated with the set of runtime components;
mounting, within the second container, the shared storage volume that includes the set of runtime components for the target programming language and the predetermined set of algorithms written in the target programming language;
invoking, by a first computer process operating within the second container, an analytics function provided by the analytics backend service, wherein the analytics function is configured to use at least one algorithm of the predetermined set of algorithms written in the target programming language to perform a computational task;
launching, within the second container, a second computer process that executes the at least one algorithm to perform the computational task specified by the analytics function using the set of runtime components included in the mounted shared storage volume; and
transferring an analytical output computed by the at least one algorithm that performed the computational task from the second computer process to the first computer process via a cross-process queue.
|