龙盟编程博客 | 无障碍搜索 | 云盘搜索神器
快速搜索
主页 > 软件开发 > JAVA开发 >

[推荐]一位SCJDer(153/155)的Design details

时间:2009-12-23 15:42来源:未知 作者:admin 点击:
分享到:
Design details : 1. Data layer : Data class is implemented as a Singleton pattern . (Only one exists per VM) . Defined a new LockManager for locking / unlocking methods . Also a Singleton. Changed the signature of the lock / unlock methods

  Design details :
  1. Data layer :
   Data class is implemented as a Singleton pattern .
   (Only one exists per VM) .
   Defined a new LockManager for locking / unlocking methods .
   Also a Singleton.
  
   Changed the signature of the lock / unlock methods to
  track the owner of the lock by clientID passed from the
  client.
  
   Locking scheme checks for the following :
   a. Before performing full database lock, check if database already locked by another client,
   b. Before record unlocking or full database unlock, check if the clientID is the same as the owner of the lock.
   c. Before full database unlock, check if the database is locked in the first place.
  2. Server layer
   Adapter pattern .
   Multithreading implementation.
  3. Client Layer :
   Factory , Mediator
  
  4. Other points :
  Used RMI . Modified Data class. Used Multithreaded Server design .
   Only Write Locks (no read locks) .
  
精彩图集

赞助商链接