An adaptive view mechanism can dynamically adapt to changing conditions and provide the benefits of both optimistic and pessimistic notifications. This can, for example, provide a consistent and jitter-free GUI to display the state of distributed replicated data objects in the presence of concurrency control conflicts and losses. In a Model-View-Controller architecture of building distributed collaborative applications where model objects are replicated at distributed sites, adaptive views can dynamically switch between behaving like pessimistic views and like optimistic views. When the number of concurrent updates is low, the adaptive views can be made to operate in an optimistic mode—providing good responsiveness to users. However, during those periods of heavy activity, when the number of concurrent updates becomes high, the adaptive view can be made to operate in a pessimistic manner—providing more reliable response to users. For each adaptive view, a programmer can specify a policy object that can monitor the prevailing conflict rate and loss rate as if the adaptive view were behaving optimistically. Using these rates, the policy object can apply arbitrary application logic or thresholds to determine whether it is beneficial for the adaptive view to behave optimistically or pessimistically. The policy object can then request the adaptive view to dynamically adapt its behavior to the appropriate manner. In general however, the dynamic switching can be based on any application specific request to switch modes. Distributed sites that have replicated copies of the same model object can view the replica heterogeneously, that is, pessimistically, optimistically, or adaptively, according to the user's requirements.

 
Web www.patentalert.com

< Access authorization with anomaly detection

< Versioning component for applications

> Method and system for providing consistent data modification information to clients in a storage system

> Event routing model for an extensible editor

~ 00212