data synchronization - Sync 2 .net applications -


good morning/afternoon/evening!

there 2 systems - crm (customized splendidcrm) и home-brewedmonster (crm+cms+backoffice).

  1. crm - asp.net 2.0 website, sql server 2008; implemented using views, stored procedures, triggers; example auditing implemented trigger + sp; website simple ui; ado datasets used dtos
  2. home-brewed monster - asp.net 3.5 webapplication, sqlserver 2008; implemented using listtosql; sql server used storage only; logic , auditing implemented in c# code; vs`s designer generated classes used dtos.

i need implement 'duplex' synchronization between them:

object updated in crm -> changes applied in home-brewed monster object updated in home-brewed monster -> changes applied in crm 

sync should work in 'almost realtime mode' - delays acceptable. there not data - around 35000 objects , 120000 audit entries now, can 100000 objects. objects not big (60 columns in database).

for both systems there api allows updates: web service crm , wcf service home-brewed monster. because of monsters implementation changes can applied via wcf service (for audit work example). crm - can updated web service call or direct sp call (but web service preferable).

at moment there column in crm holds objects external id , there kind of sync more robust , professional solution required.

due reasons (administrators failure or wrong update applied) both systems can go 'offline'. should not affect sync - updates should applied system back. important data home-brewed monster of higher priority , should override changes crm.

the question technology/library better use? nice if sync taken "out of systems" (systems fire events data have changed , external tool sync changes). due systems , sync rules subjects frequent changes - e.g first 'version' of sync removing objects crm on condition, second version not removing exporting less data, in '3rd version' more more fields common both systems added. changes appear in future , not touch other system (or non of them) , change sync rules.

you might want check out microsoft sync framework though i'm not sure i'd recommend after having used while. uses sync orchestrator sit inbetween 2 or more systems sounds fit requirements.


Comments

Popular posts from this blog

c# - how to write client side events functions for the combobox items -

exception - Python, pyPdf OCR error: pyPdf.utils.PdfReadError: EOF marker not found -