Skip to main content
ArcBlock Community

Daap服务启动停止异常情况交互问题

shenxiuqiang
Developers
blocklet-serverdiscussion

在这个帖子中: 如何只查询出质押状态的NFT? 我期望把链作为服务注册中心,质押NFT相当于服务注册,可以被DAPP客户端发现服务,解除质押则不被客户端发现;

在服务preStart 时候查询NFT状态,没有则mint,并质押;在服务停preStop的时候取消质押,但是服务不能停,只要取回质押后才能停。

但是这里的如何与用户进行异常情况的交互才能友好一些。比如在mint失败、质押失败无法启动的时候,点stop但服务不能真正停止的时候,改如何交互。

image.png

1 reply

wangshijun2 years ago

目前 blocklet hooks 的设计:

  • preStart 是阻塞性的,如果 preStart 失败,则会导致应用无法启动
  • preStop 是非阻塞的,如果 preStop 失败,应用仍然会停止

实现上,建议将取消质押和应用的启停状态分开,而不是强绑定在一起。

Reply