| CPC G06F 9/445 (2013.01) [G06F 8/63 (2013.01); G06F 9/451 (2018.02); G06F 9/45545 (2013.01); G06F 9/5072 (2013.01)] | 24 Claims |

|
1. A method implemented by a data processing system for enabling an application in a container image to execute across host systems by assigning instances of the container image to the host systems and enabling a portion of the application in an instance on a host system to output data to another portion of the application in another instance on another host system, the method including:
accessing the container image that includes a first application and a second application, wherein the first application includes a first portion and a second portion, and wherein the second application causes a communication between the data processing system and a host system for executing an instance of the container image;
determining, by the data processing system, a number of parallel executions of the first application;
generating a plurality of instances of the container image in accordance with the number of parallel executions determined, with an instance including the first and second applications;
configuring a first instance to execute the first portion of the first application on a first host system;
causing each of a plurality of configured instances to execute on one or more of the host systems;
receiving, from the second application of a second instance on a second host system, a communication;
based on the communication received from the second application of the second instance on the second host system, transmitting, by the data processing system to the first instance on the first host system, information for the first instance to locate the second portion of the first application of the second instance on the second host system to receive an output from the first portion of the first application, wherein the second portion of the first application on the second host system is configured to receive the output from the first portion of the first application on the first host system; and
based on the transmitted information to locate the second portion of the first application, causing the first portion of the first application of the first instance on the first host system to transmit its output data to the second portion of the first application of the second instance on the second host system, wherein the second portion of the first application is located by the information transmitted to the first instance of the container image on the first host system.
|