前方是长篇内容。我保证,这是一篇经过深思熟虑、条理清晰的 Discourse 成功案例!
我对 Discourse 的使用场景一直非常独特,甚至可能因此引起过不少人的侧目。我会简要提及这一点,虽然我在其他帖子中也曾讨论过该用例,但我不想费力去翻找并链接它们。
我的用例是搭建一个内部站点,用于托管我们 Roblox 游戏的所有 Moderation(审核)操作。随着平台的成长,要放手并不容易;最近两年,我的新角色是社区经理。我们之前多年一直使用 Trello,它简单、易于管理,等等。然而,就像所有美好的事物一样,资本主义出手给了致命一击,他们对现有用户也施加了一些看似慷慨却极其增加成本的限制。如果我没记错的话,每个工作区仅限 1 个看板,且最多支持 10 名用户。这给当时由约 45 名 Moderation 人员组成的团队带来了问题。最终我们不得不使用 [注:每个看板必须预留 3 个用户账号给管理员] 6 个工作区和 6 个看板。我不知道你们的情况如何,但考虑到我的大多数 Moderation 人员都是青少年,管理和维护 6 个看板绝非易事。而且当用户提交申诉时,在手机上翻遍这 6 个看板简直糟糕透顶。
于是,我动起了脑筋。我有太多年的 IT 经验,不可能不知道一些自己不懂的东西,但这就是业余爱好者知识风格的代价:你花 12 小时学习新东西,然后就能上手了。因此,我尝试了几种其他开源方案,摆弄了一番,看看自己将面临什么。在尝试了第 3 个看板替代方案后,我说“够了”,让我们跳出思维定式吧。
顺便提一下,我以前用过 Discourse,上次使用还是很久以前,大概是 2016 年或 2017 年左右?我一直都知道它在其适用领域是一个出色的平台。
于是,我思考了自己的需求。日志记录的需求其实很简单:只需发布用户名、其 Roblox 个人资料链接、标注违规类型,并提供证据链接。
如今,我使用 Discourse 已近两年,我可以毫不怀疑地说,它绝对是一把多功能的瑞士军刀,适用于各种场景。
由于其高度灵活和可定制,整体体验是我经历过的最佳体验之一。
我也遇到过一些怪癖、问题和缺点,但总体而言,体验非常愉快。
好了!现在你已经了解了我的背景故事!接下来谈谈我最新的需求。
我的社区正为即将发布的 Version 2 游戏版本做准备,备受期待。我真的很喜欢定制事物,喜欢那种极客感,能够精简到只保留我真正需要的功能——因此我开始思考如何在此基础上推动其他资源的升级。
我深思熟虑,并与团队讨论后,认为第二个 Discourse 站点将大有裨益。它拥有文档、工单系统、Moderation 工具,并支持自定义插件,例如将用户的 Roblox 个人资料与 Discourse 账号关联。
快进到今天,我们将在大约 60 天后发布 v2 版本,所以我开始着手研究多站点安装方案。我找到了所需内容,进行了深入搜索,甚至使用了 AI。我必须承认,即使拥有 10 年经验,YML 文件中的一些技巧仍让我想拔头发。
我昨晚 10 点开始整个流程,直到凌晨 12:30 才结束。起初我遇到许多问题,有些让我感到困惑。是的,我知道“经验丰富的系统管理员”的免责声明就摆在眼前,但即使是最有经验的人偶尔也会感到疑惑,对吧?我今天早上重新开始,大约在下午 2 点左右完成。
所以,最终问题出在配置上,具体是 YML 的语法问题。我对哪些文件需要放在哪里、哪些数据需要包含在内感到有些困惑,但最终全部修复了。
我还使用了 Caddy,因为安装说明建议需要反向代理,而 Caddy 运行得完美无缺。我也在使用 Cloudflare,同样运行顺畅。
我目前运行在 2GB 内存、4GB 交换空间、2 核 CPU 的配置上,显然已经接近极限。但我认为在最初的几周内应该没问题,之后升级可能是最迫切的需求。
总之,我只是想借此机会赞扬 Discourse、整个社区、每一位贡献者和创始人。你们真正推动了 Discourse 成为一个无论受众或目的如何,都能服务于社区的场所。我很自豪能成为其中一员。