A computer-implemented method performed by one or more processors of a mobility controller configured with specific instructions, the computer-implemented method comprising: determining, by the mobility controller, that a user equipment (UE), associated with a first base station within a network affiliated with a wireless service provider, is within a coverage area of a second base station, wherein the UE is using first computing resources at a first location within the network to perform application processing for an application associated with the UE; determining, by the mobility controller and from a plurality of locations associated with the network, second computing resources at a second location to perform the application processing for the application; obtaining, by the mobility controller and from probes (222, 222A-222D) at different locations within the network, latency data for the different locations; and determining, by the mobility controller, based at least in part on a first performance level associated with the application processing using the first computing resources and a second performance level associated with a use of the second computing resources to perform the application processing for the application, and based on the latency data, to perform one or more operations, including: switching from the first base station to the second base station; and selecting the second computing resources to perform the application processing for the application, wherein the mobility controller is separate and distinct from the UE, the first base station, and the second base station; wherein the determining to perform one or more operations is further based on a projected movement of the UE, and the locations of computing resources in relation to the first base station currently being used and the second base station. determining, by the mobility controller, that a user equipment (UE), associated with a first base station within a network affiliated with a wireless service provider, is within a coverage area of a second base station, wherein the UE is using first computing resources at a first location within the network to perform application processing for an application associated with the UE; determining, by the mobility controller and from a plurality of locations associated with the network, second computing resources at a second location to perform the application processing for the application; obtaining, by the mobility controller and from probes (222, 222A-222D) at different locations within the network, latency data for the different locations; and determining, by the mobility controller, based at least in part on a first performance level associated with the application processing using the first computing resources and a second performance level associated with a use of the second computing resources to perform the application processing for the application, and based on the latency data, to perform one or more operations, including: switching from the first base station to the second base station; and selecting the second computing resources to perform the application processing for the application, wherein the mobility controller is separate and distinct from the UE, the first base station, and the second base station; wherein the determining to perform one or more operations is further based on a projected movement of the UE, and the locations of computing resources in relation to the first base station currently being used and the second base station. switching from the first base station to the second base station; and selecting the second computing resources to perform the application processing for the application, wherein the mobility controller is separate and distinct from the UE, the first base station, and the second base station; wherein the determining to perform one or more operations is further based on a projected movement of the UE, and the locations of computing resources in relation to the first base station currently being used and the second base station.