NodeBB v1.6.0 已发布 - 优化模板引擎,更漂亮的邮件系统 (包含突破性变更)



  • 原文: https://blog.nodebb.org/nodebb-1-6-0-release-faster-rendering-and-prettier-emails/ , 作者: Jay Moonah ,翻译: A632079.
    需要注意的是: NodeBB v1.6.0 存在一些突破性变更,建议检查兼容性后再尝试更新!

    我们一直喜欢认为 NodeBB 与其他论坛的软件相比是相当快的 —— 我们的代码已经相当精炼了,当然在 Node.js 上构建时并不会受到损失。 当我们的新员工说:“嘿,我觉得NodeBB可以更快”,我们中会有谁拒绝他呢?

    “如果你认为它可以更快,那就让它更快。”

    …你知道吗? 他真的做到了!


    NodeBB v1.6.0 使用了完全重写的模板引擎 Benchpress。 负责开发这个引擎的是我们新的开发团队成员 Peter Jaszkowiak(a.k.a. PitaJ)。 Peter 在我们的社区论坛上发布了有关 Benchpress 的细节。概括这个篇幅过长,让人难以看完的文章的内容 : 它能做的更快!

    这是 Julian 对 Benchpress 的看法:

    我使用 ApacheBench 对 NodeBB v1.6.0 进行载入测试。这是一个标准的负载测试工具,它给我们提供了一些很好的度量标准来衡量从一个版本到另一个版本的吞吐量增长。
    v1.5.2 的每秒吞吐量分数为 7.98,但在 v1.6.0 的分数为 24.30,整整提高了两倍(204.5%)多① !
    我们对于吞吐量分数的提高感到兴奋,也十分激动地能看到它能在 v1.6.0 中运行得十分良好。
    展望未来,我们可能会将负载测试策略转换为 Load.io – 为了一个更可观的结果②。

    NodeBB v1.6.0 还带来了什么呢?

    此外,v1.6.0 具有一个更美观的邮件通知模板,如确认和摘要。
    0_1505619765085_GdRpXJY.png

    IP黑名单已更新支持分析记录 ,并允许与第三方插件(如 nodebb-plugin-Blacklist-country)集成。当垃圾邮件的传播者采取人工干预( 这些通常是一些非常专职的垃圾邮件传播者)绕过我们的自动过滤措施,这时可以采取一些激进的措施来阻止整个国家的IP访问论坛。虽然这不是一个理想的解决方案,但可以作为一个有效的临时措施。
    0_1505621099159_05a683a9-0ca8-41a9-94a5-6b65387a1632-图片.png

    现在还提供新用户发帖后批准队列(queue)

    注: 功能应类似 DZ 的新用户发帖审核

    0_1505621210780_fc7b6841-0cca-4668-ae30-fc4a19d47743-图片.png

    还包含的其余变更:

    • 错误修复和安全增强功能 - 我们建议所有NodeBB用户升级到此版本,以确保它们受到保护,修复可能的安全漏洞
    • 小部件(Widgets) 现在将会以 冷加载(cold load) 的方式呈现,以确保搜索引擎能够获取小部件的内容,从而增强 SEO 功能。
    • 完整支持 NoScript – 这使用户在关闭 JavaScript 的状态下仍能浏览/回复主题(以前仅支持浏览)。
    • 能够将HTML和文本小部件放在特定的板块上,而不是只在站点范围内。
    • 增强的草稿功能 — 如果窗口关闭并重新打开,您保存的现有草稿将自动重新打开
    • 仅显示给客人的导航标题链接的选项,例如:成员不能看到的“注册”按钮(这是一个很好的例子吗?)

    注: 这个功能在社区的讨论我们也看到了,功能的实质就是允许站点导航的部分内容支持仅显示给游客

    • 轻松更新聊天页面界面,使其更加无缝
    • 通过管理面板激活插件现在将显示插件的许可文件文本(免责声明等)。
    • 管理员能够查看封禁用户的封禁期限
    • 通过npm安装的范围插件现在可以通过管理面板激活

    我的理解是: npm Scope(范围) package 现在已可被 NodeBB 正确识别

    对于 插件/主题 开发的突破性变更

    这是一个小版本更新,这意味存在突破性变更。请查阅 Github 问题列表 以了解变更细节。
    值得注意的是 Node.js 的最低要求已变更为 v6.x。我们在代码中使用了新的 Node.js 特性,所以你将不能在低于这个版本的Node.js(例如:4.x, 0.12.x 等) 中运行,并且我们将在这些环境中拒绝启动。安装和管理 Node.js 的最简单方式就是安装一个包管理器

    从这个版本开始,我们试图通过更好的内部跟踪和通信来改进我们对新版本的方法。 我们希望这将导致更有条理和更频繁的发布,并且不太可能在规划中发生变化(and less likelihood that changes will fly under the radar.)。我们还在https://try.nodebb.org上搭建了一个新的 NodeBB “测试床(testbed)” 实例,你可以在任何时候查看最新的功能变更。

    为我们投票

    最后,如果你已经阅读到这儿了,我们希望你再多花点时间在 CMS Critic Awards 中投票支持NodeBB,我们真的很感谢!


    备注:
    ① 此分数的计算方法是目标服务器成功处理的请求数,取平均值。 我们发送100个并发请求,总请求数为10,000。 目标服务器是我们在 https://community.nodebb.org 上的支持社区。
    ② 在我们的例子中,我们通过来自DigitalOcean的服务器上的ab和另一个在DigitalOcean上的服务器进行呼叫,因此优先路由可能会偏向于我们的理想。


  • 版主

    前排围观并支持一下



  • 前排支持 楼下要不要瓜子



  • 赞一下翻译质量_(:з」∠)_



  • 老版本可以升级1.60吗



  • @anubis 可以,但用于生产环境的话,请先检查兼容性。
    有关方法请参考我们的文档或官方英文文档。


 

Powered by NodeBB © 2018 PA Team All Rights Reserved Accelerated by UPYUN . 苏ICP备17002503号-2