SyncFX 2.1 Online/Offline Automatic Detection RRS feed

  • Question

  • Hi

    We're developing a large-scale medical system with hundrends of clients. Since the clients are only occasionally connected, we found SyncFX to be a native choice for this project.

    The clients run on a tiny MID (Intel ATOM-based hardware powered by Windows 7) with our custom WPF application, hosting SQLCE 3.5 SP2 as a local data store. The servers run SQL Server 2008 R2, which stores logging information from all clients.

    One challenge we're facing, is the ability to provide "real-time" experience for collected data. The client application should detect automatically whether a server connection is available, and if so - sync the data automatically. Additionally, data on the server may be updated (by a different client), and when this happens, the client should display the up-to-date data ASAP.

    To accomplish this, we currently call the SyncOrchestrator.Synchronize() method in seperate thread, using a timer, every 5 seconds. This works, however seems sub-optimal an not scalable.

    Is there a built-in mechanism in SyncFX to provide a close-to-realtime online/offline experience?

    If so, can someone please provide a code example?

    ...and if not... are there any plans to add such a mechanism to future versions of SyncFX?

    Thanks in advance!

    Thursday, May 5, 2011 10:41 AM


  • Hi,

    SyncFx is designed to provide a generic sync library for developers to build sync applications with any protocol and any storage. SyncOrchestrator.Synchronize() is the only way to start a sync. App developers can use this method to achieve scheduled sync. If you want a close-to-realtime sync than just 5 seconds, you should consider finding a way to detect the local storage changes in the real time and trigger sync immediately. Since SyncFx doesn't know the particular storage, it could not add this capability.


    This posting is provided AS IS with no warranties, and confers no rights.
    Thursday, May 5, 2011 11:32 PM