1. A method of distributed computing, comprising the steps of: executing threads of an application in a plurality of interconnected nodes in a network; allocating memory of said nodes to data objects; responsive to said step of allocating memory for one of said data objects, applying a predefined set of criteria to individual fields of said one data object; selecting read-locally fields from said individual fields according to said predefined set of criteria; caching said read-locally fields in a cache of at least one of said nodes to define cached instances of said read-locally fields, performance of said step of caching being transparent to said application; and fetching at least one of said cached instances of said read-locally fields from said cache during execution of one of said threads by a proxy that is associated with said cache.