2月5-7日QCon全球软件开发大会携手100+位大咖讲师落定北京,点击查看完整日程>> 了解详情
写点什么

反 Twitter 平台用户激增 250 万,这名 29 岁程序员如何凭一己之力扛住超 8 倍流量增长?

  • 2023-01-03
    北京
  • 本文字数:3712 字

    阅读完需:约 12 分钟

反Twitter平台用户激增250万,这名29岁程序员如何凭一己之力扛住超8倍流量增长?

作为 Twitter 的替代品,Mastodon 越来越受欢迎,但这个平台背后,只有一名全职员工。面对激增而来的用户,凭一己之力运营 Mastodon 是个什么感受?

 

Mastodon 明显需要感谢 Twitter 的 CEO 马斯克。马斯克于 10 月下旬正式接管 Twitter,Mastodon 用户数量就开始激增。仅在马斯克接掌 Twitter 的几天之后,Mastodon 宣称其用户已从 30 万涨到了 65 万 5 千人。这段时间,马斯克削减开支、大幅裁员和对平台进行混乱更改,在这些神操作下,越来越多用户涌向了 Mastodon 平台,终于在 12 月底,每月活跃用户增加到了 250 万。

 


除了普通用户,还有些组织也宣布入驻 Mastodon。12 月 20 日, Firefox 浏览器的开发商Mozilla宣布将开始运行Mastodon“实例”,并计划于明年初进行公开测试,正式开启了在该平台上建立业务的热潮。

 

资金也希望能够流入 Mastodon,据《金融时报》消息,来自硅谷风险投资公司对 Mastodon 充满了兴趣,但 Mastodon 创始人为了保持这个社交媒体平台的非营利地位,在近几个月里数次拒绝了他们的投资提议。

 

Mastodon 的名气不断上升,马斯克不得不承认链接到 Twitter 竞争对手是一个错误,他一度禁止掉了所有指向竞争对手服务的链接,还封禁了不少相关用户账户。



用户多了,创始人的压力也更大了

 

Mastodon 由一位名叫 Eugen Rochko 的德国程序员创立。2016 年,Twitter 平台将信息流改为采用算法驱动的乱序默认时间线,当时,Rochko 刚从一所德国大学里获得计算机科学学位,因为对 Twitter 平台的不满,他决定实现一个自己的社交媒体。

 

Mastodon 被设计成为了一个开源的社交媒体平台,建立在 Fediverse 去中心化网络上,这是由数千个独立服务器连接的应用程序和网站构成的在线世界。目前 Fediverse 上大约有 5,700 台 Mastodon 服务器。该软件使用名为ActivityPub的协议,由 Ruby on Rails 后端、JavaScript 前端、Sidekiq 作业管理和 PostgreSQL 关系数据库组成。作为反 Twitter 平台,Mastodon 没有使用推荐算法,也不会尝试向用户推荐任何东西,也没有统一的审核机制,各分支可以按照自己的规则来决定哪些人可以加入、哪些内容可以发布。

 

2017 年,Rochko 发布了第一版代码,但用户增长一直十分缓慢,最开始 Mastodon 的追随者都是技术作家和黑客,这也是创建时的目标人群,而且对“权力下放”和“开源”的强调只会让最精通技术的人感到鼓舞和受到吸引。

 

2021 年,美国前总统特朗普团队使用了 Mastodon 的源代码,开发了他们的新社交媒体平台,即所谓的 Truth Social,并获得了上百万的独立访问用户,这才让 Mastodon 名声大噪。特朗普团队最初还隐瞒了使用了 Mastodon 代码这一事实,但该行为违反了 GNU 开源协议。后来这一事实被 Mastodon 团队发现了,他们给 Truth Social 的开发人员发了律师函,特朗普团队才不得不公布了源代码。Truth Social 也是最著名的 Mastodon 实例。

 


作为该项目唯一一个全职员工,Eugen Rochko 曾说:“我们没有办法控制成功何时才能到来,只能不断为它奠定基础。”现在,因为马斯克的神操作,Mastodon 用户激增,这位现年 29 岁的德国程序员也在几周之内突然再次闻名全球,同时也让他压力倍增。

 

新增的上百万 Mastodon 帐户,使流行的服务器不堪重负,新手介绍、问题和投诉淹没了现有用户的时间线。自从马斯克接管 Twitter 以来,Rochko 一直在长时间工作以保持自己的服务器Mastodon.Social正常运行,同时还准备对 Mastodon 进行重大升级。

 

今年 11 月,Rochko 在接受 Wired 采访时表示,自从该网络上个月人气暴涨以来,他每天需要工作 14 个小时。

 

与巨头竞争对手 Twitter 相比,Mastodon 的规模和结构看起来非常不同。在公司 2021 年的年度报告中,罗奇科是唯一的固定雇员,他在在德国东部一个小镇的家中编程,每月收入 2,400 欧元,团队中还有一些合同工。去年社区向运行 Mastodon 的非营利性组织捐款总计 55,000 欧元,但该团队只花了 23,000 欧元。

 

随着服务变得越来越流行, Mastodon 实例的托管成本也显着增加,Mastodon 不得不扩大规模并为服务器支付更多费用。“但是 Mastodon 和 Fediverse 网络提供了将负载分散到多个不同参与者的能力。我可以在我的服务器上关闭注册,其他服务器和网络将立即接收正在尝试注册的人。”

 

值得强调的是,跟 Twitter 是单一的一个网站不同,Mastodon 并不是一个单独的平台。它也不是一个实实在在的“东西”,不是由某个人或某个公司拥有。Mastodon 的核心是 Rochko 提供的开源软件系统,任何人都可以在自己的服务器上部署这样一个系统,运作自己的 Mastodon 服务,每个服务也可以称为“实例”(instance)。每一个 Mastodon 服务器,都是一个自给自足的“微型”社交网络,可以有它自己的主题,比如金融、数码、生活、职场等等。用户在注册 Mastodon 的时候,必须选择其中一个。

 


当所有 Mastodon 服务器连接在一起,才形成了一个非集中性的网络。这也是去中心化平台的粉丝们所喜欢的一个特点,因为这种平台不会像 Twitter 那样容易被控制。

 

虽然作为一个全球分布式现代应用程序,但激增的用户也会给维护这些服务器的人员和团队带来挑战。就像 Rochko 所说的,当压力增大时,有的服务器可以在不堪重负的情况下选择关闭注册,将压力分摊给其他服务器或网络。

在压力下,运行 Mastodon 服务器的技术人

 

Jaz-Michael King 就是其中一位运营 Mastodon 服务器中的人。他是一名威尔士人,经营一家美国互联网公司,业余时间运营着一个叫作 Toot Wales 的 Mastodon 服务器。与其他 Mastodon 服务器一样,在马斯克接管 Twitter 后,Toot Wales 用户活跃度呈指数级增长

 

“在马斯克抱着水槽走进 Twitter 办公室之前,我们每天大概处理 15 万条消息……现在每天要处理 300 万到 400 万条消息。我们的注册用户是之前的 3 倍,活跃度也大大增加了。”



Toot Wales

 

为了运营好 Toot Wales,King 选择了一家知名的托管公司 mastohost。“我对技术了解得足够多,可以要求他们做出任何我想要的调整,但我还是尽量不去这么做。我的另一个原则是我们只运行主分支,不使用任何试验性的东西,也不使用不稳定的软件更新。我想要稳定的、功能性的、经过实战测试的代码。我在边缘部分做了一些改动——我以前会在前端做很多改动,最近升级到 Mastodon 4.0 后,我甚至把前端大部分东西都去掉了,所以它非常简洁。我想要知道我运营的是什么,想要知道什么是有效的,但我尽量不去动它。”

 

他还对设计做了一些修改。主要是为了让非技术用户不会对 Mastodon 的用户界面感到厌烦——即使是最狂热的信徒也应该承认,与 Twitter 的用户体验相比,Mastodon 的用户界面略显逊色。Mastodon 的布局看起来有点像 TweetDeck(一款 Twitter 客户端),有多个列。虽然这对于关注列表或标签搜索很有用,但它的实现不如 TweetDeck 的好。他说:“我所能做的是改进用户体验。我坚信我们不需要多列视图,我们是一个提供单列试图的服务器。”

 

尽管他尽量不插手托管方技术上的事情,但自从发生 Twitter 收购事件以来,King 一直忙于处理社区和内容方面的事情。“内容和社区管理,包括内容审核,一直是一个沉重的负担。我们需要巧妙地向人们描述我们为什么存在,以及为什么我们并非另一个特推——很多人以为 Mastodon 是在不久前创建的,目的是为了替代 Twitter。因此,我们需要向人们解释他们使用的其实是几年前就有的东西,然后管理现有的和即将到来的社区期望,并找到中间地带。”

 

King 希望 Mastodon 在社区管理功能方面做出改进。首先,他希望“在产品中加入比现在更多的联邦和去联邦服务。”他指的是与其他服务器通信的方法,比如阻止清单。他想要一种在服务器之间“谨慎、合乎道德、谨慎地共享”信息的方法。

 

作为一个开源软件项目,Mastodon 的一个设计是不鼓励用户使用关键字搜索。默认情况下,你可以搜索话题标签,但(与 Twitter 不同)不能输入搜索关键字——比如“马斯克”——然后等待结果。这在不同的服务器之间的实现是不同的,有些服务器可以搜索到自己发的或参与的帖子,但从更大的范围来看,并没有结果。

 

Mastodon 的 GitHub 主页有一个关于搜索限制的争议。King 对此表示,从 Twitter 迁移过来的用户期望他们能够搜索关键字,因为他们在 Twitter 上已经习惯了,但他仍然对此持抵制态度。Toot Wales 的用户甚至不能搜索自己的帖子。King 考虑过开启这个选项,但他担心这会对他的服务器造成影响。“我们可以开启搜索功能的增强特性,让用户可以搜索自己的内容。说实话,我认为它不值得浪费 CPU 资源。”

 

撇开用户喜好不谈,King 通过 Toot Wales 为威尔士在线社区提供了很好的服务。他没有从中赚到钱,这个网站的运营主体实际上是 King 创立的一个美国慈善机构。

 

参考链接:

https://joinmastodon.org/zh/servers

https://github.com/mastodon/mastodon

https://www.section.io/blog/mastodon/

https://www.wired.com/story/the-man-behind-mastodon-eugen-rochko-built-it-for-this-moment/

https://www.lemonde.fr/en/m-le-mag/article/2022/11/21/who-is-eugen-rochko-the-young-creator-behind-mastodon_6005052_117.html

https://www.euronews.com/next/2022/11/25/the-anti-elon-musk-meet-eugen-rochko-the-man-behind-twitter-rival-mastodon

https://thenewstack.io/what-its-like-to-run-a-mastodon-server-in-the-musk-twitter-era

 

2023-01-03 11:094055

评论 1 条评论

发布
用户头像
社交平台玩的已经这么高级了吗?
2023-01-07 08:46 · 河南
回复
没有更多了
发现更多内容

聪明人的训练(十七)

Changing Lin

4月日更

ScheduledThreadPoolExecutor源码解读(二)ScheduledFutureTask时间调度执行任务(延迟执行、周期性执行)

徐同学呀

线程池 Java源码 ScheduledThreadPool JUC

【腾讯阿里最全面试题】Redis持久化RDB和AOF 的区别

Linux服务器开发

面试 后端 面经 Linux服务器开发

Spark运行状态监控与优化

小舰

4月日更

架构师实战营 模块二总结

代廉洁

架构实战营

TcaplusDB君 · 行业新闻汇编(4月17日)

TcaplusDB

数据库 nosql 数据 TcaplusDB

关于ReentrantReadWriteLock,首个获取读锁的线程单独记录问题讨论(firstReader和firstReaderHoldCount)

徐同学呀

AQS Java源码 JUC

华为帐号服务学习笔记(四):Authorization Code模式服务端开发

Coding狙击

Java android

HarmonyOS开发者日再现上海,生态最新进展、核心代码解析、创新案例分享

Geek_283163

CopyOnWriteArrayList源码解读之CopyOnWrite思想的利与弊

徐同学呀

Java源码 JUC CopyOnWriteArrayList

ThreadPoolExecutor源码解读(二)execute提交任务,Worker详解。如何执行任务?如何回收空闲线程?

徐同学呀

线程池 Java源码 JUC ThreadPoolExecutor

苏州园区:面向全国“发帖”聚力 加快创建区块链技术应用高地

CECBC

华为“引商”,VR“刻羽”,共觅知音人

脑极体

ThreadPoolExecutor源码解读(一)重新认识ThreadPoolExecutor(核心参数、生命周期、位运算、ThreadFactory、拒接策略)

徐同学呀

线程池 Java源码 JUC ThreadPoolExecutor

ThreadPoolExecutor源码解读(四)如何正确使用线程池(总结坑点+核心参数调优)

徐同学呀

ThreadPoolExecutor

架构实战营 - 模块二作业

凯迪

架构实战营

业务架构训练营第 0 期模块二作业

目标一个亿

读懂「数据」在区块链网络中流动的3种范式?

CECBC

区块链

增强产业链供应链自主可控能力,区块链能否贡献力量?

CECBC

区块链

WEB-API的设计与开发

吉极客

HTTP 软件设计 web tech

史上最强的:京东北极星商业系统权限管控实践

Java架构师迁哥

极客架构模块2作业-朋友圈高性能架构分析

Geek_649372

架构实战营

架构实战营 - 模块 2- 作业

请弄脏我的身体

架构实战营

架构实战营 - 模块 2- 作业

冬天的树

FutureTask源码解读,阻塞获取异步计算结果(阻塞、取消、装饰器、适配器、Callable)

徐同学呀

Java源码 JUC Future

ScheduledThreadPoolExecutor源码解读(一)DelayedWorkQueue高度定制延迟阻塞优先工作队列

徐同学呀

线程池 Java源码 ScheduledThreadPool JUC

阿里架构师如是说:权限系统就该这么设计

Java架构师迁哥

openLooKeng如何应对“野蛮零散”的大数据

openLooKeng

大数据 开源 openLooKeng

ThreadPoolExecutor源码解读(三)如何优雅的关闭线程池(shutdown、shutdownNow、awaitTermination)

徐同学呀

线程池 Java源码 JUC ThreadPoolExecutor

Flutter 学习笔记(二) Container 组件

U+2647

flutter 4月日更

反Twitter平台用户激增250万,这名29岁程序员如何凭一己之力扛住超8倍流量增长?_开源_明知山_InfoQ精选文章