BES服务器推送机制分析(二)

作者: 邓明轩

 

 

推送细节分析

 

 

了解 本的 M DS 是不 数据 数据 的可 推送 本章 整个 送的 调用 关键 的细

 

 

M DS 推送的整体时序

 

 

   

如上图所示,数 推送 要是应用服务器 MD S   务器、网络服务 手机 几个组件

之间 在网 这一 层是 不做考虑 对于 法提 供服 过手 线 或者 线屏 式模 是应 MDS /BE S 服务 分。

数据 MDS /BE S HT TP P o s t 请求 需要 HT TP P o s t 请求是否 MDS /BE S 这一 到达 MDS / BE S 服务 论。

MDS /BE S 收到 HT TP P o s t 请求 的格 式错 如指 ,则 MDS /BE S 40 0 要考 虑是 证所 到达 MDS /BE S   器的 关这 查”

详细 述。


MDS /BE S 数据以后 判断 有足 空间 果没 有发 数据器返 5 0 3 因此 第三 况会 占满 情况 这一 点在 MDS /BE S 队列

MDS /BE S 送到 端程 相应 应用 逻辑 然后 端应 并不 推送 获取 的是 在队 程序 数据 都提 在“ 处理

手持 后会 MDS / BE S MDS /BE S 用服 发送 返回 20 0 者是 4 0 0 通知 是推 是推 息对 的意 数据 达客

户端 推送 然后 商都 的返 2 0 0 和“ 40 0 并不 映数 收情所以 ,如 使 异步消息 ,在 景下 不同 应用 而言重要 点在 确认 述。

 

 

 

推送请求是否 到达 M DS/BE S

 

 

有关 M DS /BE S 务器, 开发 人员 请求 到达   MDS / BE S   代码 ,一 体现 必须 这个问题 确实 用服 的推法到 MDS / BE S 致推 送数 题。

 

 

推送   MDS /BE S   服务的直 接原 不正 者是 BE S 理员 BE S 器名 IP 者是 口。

这种 一方所有 Bla ck Berr y 到推 据, 服务 异常   ja v a   当指 器名 的情 的推

java.net.ConnectException : Connection refused 或者 网络 发现这种情况只需 代码中指定的服务端口号是否和生产同就可以

解决 题。

 

 

推送   MDS /BE S   服务可能 性是 太大

MDS /BE S 接收 求。 这种 因为 到推 户的 分数

据丢失了 种问 题在 容易发生 有在 测试 存在 大量 容易 现。

题的 源是     M DS /BE S   服务 MD S   务器 实是 行在

T om ca t 服务器务, T om ca t 应用 容器   T om ca t

服务 请求 达到 推送 处理 等待 时前 会出


 

java.net.ConnectException : Connection timed out: connect

根据 同版 本的 BE S 发网 2 0 0 个并 同一 2 0 0 连接 以向 MDS /BE S 服务 器发 求。   20 1   后有所有将进 待状态,   T CP /IP   限制 之前 MDS /BE S 放前 20 0 状态 时而 断。

当应 线 机制 下有情况 果因 务原 量等 应用 务器 20 0 线 程发 送推 如果 送的太大 送线 行计 能导 线程 的连 在短 间内 闭。 多于   20 0   线 于这 状态 MDS /BE S 续接求了 题的 务器 超时 绝的 常。

 

 

总的 送的 证推 到达 MDS /BE S   服务 发现   M DS /BE S   该对 行检 步确 因。

 

推送请求检查

 

 

MDS /BE S 推送 MDS / BE S 务器 只有 推送求才 MDS / BE S MD S /BE S 会返 值为

2 0 0   HT TP 答复 用服   M DS /BE S 推送

根据 的错误码的错 误码 4 0 0 , 4 03 , 5 0 3 等。 下面 情况 述。

 

第一 是推 包括 U R L H TTP 确两 M DS /BE S 会返 4 0 0 U R L 式不 U RL   中不包含“ DES TINA TI ON ”参数,或者是不包 P OR T ”参数等。 HTTP   头不正确包括 PUS H ID 一等为推 送请求中 HTTP 有缺 使 HTTP 头属 性并错误 MDS / BE S 该参 HTTP X -RI M -PUS H -ID X -RIMP US HID MDS / BE S   服务 并不 拒绝 请求, 是使用 X -RIM -PUS H -ID ”的缺 省值 成一 ID 息。

对于 HT TP 服务 40 0 器一 般性错误 消息 会以 形式获。 ja v a 为类 网络 常:

java.io.IOException : Se rv er re tu rn ed HT TP re sp on se co de : 40 0 fo r UR L:

http://...


 

 

 

第二 情况 件人 务器

推送 使 DES TIN A TIO N 数指 或者 人并 Bla ck B er r y MDS / BE S 返回 40 3 注意 BE S 服务

  3 . 7 于这 种情 返回   4 0 0

        j a v a    代码为例   收件人不正确   情况   程序会捕获到以下网络异    

java.io.IOException : Se rv er re tu rn ed HT TP re sp on se co de : 40 3 fo r UR L:

http://...

 

第三   MDS /BE S   送队 更多 送请 返回 50 3 有足 够的 这种 ja v a 应用 常:

java.io.IOException : Se rv er re tu rn ed HT TP re sp on se co de : 50 3 fo r UR L:

http://...

 

这种 正确 MDS / BE S 服务 MDS /BE S

服务 一节 讨论。


 

如果通过 MDS /BE S MDS /BE S 将该 放入 同时 2 0 0

成功 HT TP R e s po ns eCo de 发人以通 HTTP 的相应 方法获取   ja v a   代码中   R e s po ns eCo de   的函数是   g et R e s po ns eCo d e 。只有确认 MDS /BE S R e s po ns eCo de 2 00 确定已经 MDS / BE S 接收 于其 由程 何调 过程。

有一 的是 MDS / BE S   并不 意味 达手 备端 致手 不到

 

 

 

 

 
 

 

 

BlackBerry SDK下载

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值