.net - Design Pattern Suggestion for data synchronization -


need suggestion designing below system: requirement is, have 4 app server connected 4 db server. user can use app server access same application hosted on 4 app servers. data updated user in 1 server should instantly available user accessing same app different app server.

is there design pattern exist such kind of synchronization?

"i asked find solution @ application design level instead of database" - in case, fact there 4 db servers behind irrelevant.

since should solved @ application level, these app servers need communicate through media. others have said, db sane choice, requirements preclude that.

therefore, app servers must able communicate among , implement consensus resolution protocol (e.g. paxos quite known) ensure agree on 'truth'

this done @ infrastructure level, , not in app itself. suggest using distributed cache (e.g. memcached or redis cluster - latter not ready yet) depends on other requirements (durability, etc). additionally, imo falls under definition of database in context i.e. infrastructure level, not app level.

the requirement 'find solution @ application design level' seems rather synthetic , not driven functional requirements or driven unsound non-functional requirements, can wrong. imagine being driven performance requirements, degrade performance.


Comments

Popular posts from this blog

jquery - How can I dynamically add a browser tab? -

node.js - Getting the socket id,user id pair of a logged in user(s) -

keyboard - C++ GetAsyncKeyState alternative -