首页 > 代码库 > RestPSXdms学习

RestPSXdms学习

1. 简介

  1. RestPSXDMS 提供了除sip消息外的,轻量级的访问机制来获取ps的功能

  2. 5410 PS 与XDMS交互,储存获取user储存的文档,并且当文档改变时获取notfiy消息。这就是XDMS的主要作用

  3. sip  stack负责load balance

  4. sip servlet负责处理sip消息,注册,发布订阅等。 http proxylet负责提供访问Presence document 和administration feature

HTTP

   imsPresenceServer (1.2710.49)
      (PresenceInformationProxylet)
      (PresenceInformationPublishProxylet)
      (PresenceInformationWinfoProxylet)
SIP
   imsPresenceServer (1.2710.49)
      (presenceserverservlet)
      (watcherInfoServerServlet)
SESSIONS


  1. XDMS作用: 存储xml文档,查询,访问,修改这些文档。数据改变时发送notify消息

  2. 所有的操作利用xCAP协议进行,也可以接受sip消息

  3. XCAP是一种能够映射 HTTP URL 到服务器上的 XML 内部结构的协议,这些 XML 文档保存每个应用程序里的每个用户的个性化信息。

  4. 一个符合XCAP 的 URL 由三部分组成,第一部分叫文档选择器,与普通 HTTP URL 类似,用于定位 XML文档,路径结构是: Application/User/Document ;第二部分是路径分隔符: ~~ ;第三部分叫节点选择器,使用XPath 表达式来定位 XML 的元素、属性等。

  5. XCAP 服务器可以用 HTTP 协议直接访问,对于定位到的 XML 元素、属性等,可用 HTTP GET 方法查询值, HTTP PUT 创建或修改,用 HTTP DELETE 删除

  6. XCAP一般url实例:    http://xcap.test.com/fae-config/users-will/example/~~/userInfo/entry/name  XML文档结构(文档名example):XCAP实质就是URI与XML文件映射。XCAP实现将URI映射为实体XML文件,使用HTTPMethod对XML文件进行读,写,删除操作。XML文件根据应用实际使用情况可直接存储于本地文件,数据库,内存

  7. XCAP实质就是URI与XML文件映射。XCAP实现将URI映射为实体XML文件,使用HTTPMethod对XML文件进行读,写,删除操作。XML文件根据应用实际使用情况可直接存储于本地文件,数据库,内存。

  8. 平台mysql cluster有许多库,xdms使用的是xcapdb, xml文档就存储在xcap表中。二进制形式存储,稍后研究效率问题。如下:

   

mysql> show databases;

+--------------------+

| Database           |

+--------------------+

| information_schema |

| avatardb           |

| ccfbackupdb        |

| dhafw              |

| mysql              |

| ndbinfo            |

| performance_schema |

| xcapdb             |

     

mysql> desc  XCAP;

+---------------+-----------------+------+-----+-------------------+-------+

| Field         | Type            | Null | Key | Default           | Extra |

+---------------+-----------------+------+-----+-------------------+-------+

| USERNM        | varchar(60)     | NO   | PRI | NULL              |       |

| AUID          | varchar(60)     | NO   | PRI | NULL              |       |

| FILENM        | varchar(60)     | NO   | PRI | NULL              |       |

| ETAG          | int(5)          | NO   |     | 0                 |       |

| DOC           | varbinary(7500) | NO   |     | NULL              |       |

| DOC_SZ        | int(8)          | NO   |     | NULL              |       |

| CONTENT_TYPE  | varchar(50)     | NO   |     | NULL              |       |

| MODIFIED_DATE | timestamp       | NO   |     | CURRENT_TIMESTAMP |       |

+---------------+-----------------+------+-----+-------------------+-------+

 

RestPSXdms学习