内容
- 能力框架组成
- 邮件能力
- PaaS相应应用
- 调试方法
能力框架
server
- 认证接口 http://enabler.free4lab.com/api/authentication
- 鉴权接口 http://enabler.free4lab.com/api/authorization
- 计次接口 http://enabler.free4lab.com/api/accounting
enabler-server工程(war)下实现。
SVN地址:http://svn.free4lab.com/svn/paas/source/enabler/trunk/enabler-server
sdk
- 认证封装
- 鉴权封装
- 计次封装
enabler-sdk工程(jar)下实现;封装与server交互细节,完成认证、鉴权及计次功能;本地测试已知bug,计次接口getMethod("mark")判断不是第一次调用时,抛出没有mark方法异常。
SVN地址:http://svn.free4lab.com/svn/paas/source/enabler/trunk/enabler-sdk
billing
- 查询余额 http://billing.free4lab.com/api/inquiryBalance
- 查询记录 http://billing.free4lab.com/api/queryRecord
- 计费服务 http://billing.free4lab.com/api/billing
- 充值服务 http://billing.free4lab.com/api/charge
enabler-billing工程(war)下实现;实际上,至少对邮件服务来说,并没有使用billing功能。
SVN地址:http://svn.free4lab.com/svn/paas/source/enabler/trunk/enabler-billing
邮件能力
enabler-mail
发邮件服务在enabler-mail工程中实现,使用能力框架sdk完成认证、鉴权及计次功能;暂时注释掉了计次接口的调用。
SVN地址:http://svn.free4lab.com/svn/paas/source/enabler/trunk/enabler-mail
PaaS应用
-
应用名:enabler
即enabler server
应用名:enabler-mail
- 应用名:enabler-billing
调试方法
以enabler-mail为例
最重要的手段开头说,PaaS重新部署enabler及enabler-mail
-
重启大法不行,那只能逐一服务调试
- 本地调试enable-mail:本地启动enable-mail,即可
- 本地调试enable:修改sdk中的enable接口地址,maven install,本地启动enable-mail,即可
这次Mail Down的现象
实际上发邮件接口可通过浏览器地址栏访问(get)参数为空,然而程序中带参数访问(post)总返回404。
恢复服务过程
- 重启enable-mail,仍不可用。
- 无奈,本地测enable-mail,发现认证就抛异常了,也就是enabler server可能有问题。
- 改sdk,本地跑enable-server及enable-mail,okay,这次认证还有鉴权都没有问题了,但是sdk中的计次封装又抛了个异常
- 计次封装调用了一个不存在的方法,导致了异常;学长们的考虑暂时不清楚,暂且enable-mail不调用sdk中的计次方法
- 修改后,重新部署enabler及enabler-mail,it works。
回想,当时重新部署enable及enabler-mail也许就好了,因为即使计次异常,那也是在发送邮件之后:)
感谢
龚指导如何查看PaaS上的应用日志
宋神对enabler-mail工程结构的分析