logo NodeSeekbeta

优雅,实在是太优雅了

技术闲聊,NFD2.0这个项目的实现方式确实非常优雅,虽然体量不大,但算是符合短小精悍的评价

NFD2.0是个“3无产品”:无服务器、无数据库、无状态

无服务器

全部托管在snippets上,cf来操心所有操作
snippets大致相当于轻量版worker,但每个请求只能发出2个sub request,cpu时间限制严格,不能使用kv/d1等数据库,产品限制在请求修改转发上
因为没有源站,所以不怕攻击,不用自己守护程序,不用操心负载,几乎没有任何维护成本,估计程序运行几年都不用管
因为完全serverless,程序能够负载的用户量多到可怕

无数据库

本来以为这种是没法实现的,琢磨着得自己构建可靠数据存储。现在好了,原汤化原食,所有东西都让tg自己和cf协调了,我们不用操任何心。

无状态

telegram bot是典型的依托有状态设计的场景,举例说明,比如第一条对话是 /addEmail ,那么后台在内存或者储存上要记录下一个status为waitingForEmailInput,然后第二条输入的邮箱才能被正确识别。
有状态一般都要有状态存储,cf worker不用内存状态(durable-objects),不用自家数据库,那么就要用外部数据库,会增加维护成本和系统不可靠性。因此把服务设计为无状态的非常有用,在写代码前尽量考虑到。

123
  • 这样的缺点是不能100%自建,私有化部署?

  • Elegant, too elegant.

  • 优雅

  • 学不来

  • 前排学习并赞赏 xhj008

  • 《酒神の自夸》 ac01

  • @by #2 发布于2025/3/13 下午1:10:45
    Elegant, too elegant.

    酒神体?

  • 酒哥这算不算自卖自夸 xhj003

  • 悠亚永不过时

  • 搞错了 看成测评了 xhj011

123

你好啊,陌生人!

我的朋友,看起来你是新来的,如果想参与到讨论中,点击下面的按钮!

📈用户数目📈

目前论坛共有43653位seeker

🎉欢迎新用户🎉