Upwork 利用 Cloudflare Workers 提高其工程效率

Upwork($UPWK)是领先的在线人才解决方案,为专业人才派遣带来了变革。Upwork 让企业能够根据需要更加灵活地聘用优质人才。通过 Upwork 的匹配技术和服务,公司可以使用全球公认的专业人才库,从而动态扩展团队来满足业务需求。Upwork 还为专业人士带来了更多机遇。

Upwork 的使命是创造经济机会,让人们过上更美好的生活。在 Upwork 支持下运作的独立专业人士社区涵盖许多职业,包括软件开发、创意和设计、财务和会计、咨询、运营和客户支持,囊括了 8,000 多种技能。

Upwork’s challenge: Configure 150,000 URL redirects efficiently and accurately

Upwork 是两个独立自由职业平台的“结晶”:成立于 2003 年的 oDesk,以及成立于 1998 年的 Elance。这两家公司于 2013 年合并为 Elance-oDesk,后来又更名为 Upwork。

品牌重塑与重大平台升级同步开展,带来了技术挑战。其中最为棘手的任务是从 oDesk 和 Elance 域重定向大约 150,000 个 URL。可靠性工程高级总监 Wilson Chong 回忆道:“许多 URL 没有得到重定向,致使一些访问者收到了错误。”

从搜索引擎优化角度来看,这种局面完全不可接受;而更重要的是用户体验角度。

这项工作势在必行。遗憾的是,没有一种简单办法能在截止日期之前完成这样大的更改。这将需要数百小时的手动工作。Upwork 知道他们需要寻找一些帮助。

Chong 说道:“我们一度以为必须要手动重定向所有 150,000 个 URL,这几乎是不可能的。”

Upwork’s solution: Use serverless to perform bulk redirects at scale

向 Cloudflare 求助是自然而然的一步;Upwork 与 Cloudflare 的合作关系从两家公司的时代便已开始。Chong 回忆道:“我们是 Cloudflare 的早期合作伙伴之一。三年半前我刚加入 Upwork 时,我们就在使用其 CDN 和 DDoS 防护,以及其他提高网站性能的产品了。鉴于我们与 Cloudflare 悠久的良好合作关系,我们非常有信心,他们能够提供攻克批量重定向问题的解决方案。”

让 Upwork 摆脱困境的方法是使用 Cloudflare 的无服务器平台 Cloudflare Workers;通过这个平台,Upwork 能够快速、高效和准确地完成其庞大的批量重定向项目。Workers 允许开发人员使用他们熟知的编程语言将自定义代码部署到 Cloudflare 的网络边缘。

Chong 解释道:“能够使用 JavaScript 完成这项工作再好不过,因为速度快得多了。我们要设立一个测试域并设置一些规则,一旦通过验证,我们便只需在 Upwork 的生产域中进行同样的设置。能够在部署之前测试不同的域并查看错误,这大有裨益。”

通过使用 Cloudflare Workers,完成批量重定向项目的用时大约是 Chong 估计团队手动作业所需时间的五分之一。

除了使用 Cloudflare Workers 之外,Upwork 还利用广泛的 Cloudcloudre 解决方案来增强可靠性、性能和安全性,包括负载平衡、WAF 和速率限制等解决方案。借助 Cloudflare 强大的 API 及 Terraform 支持,Upwork 可以自动执行这些产品的配置更改,进一步提高了运维效率。

Cloudflare 一整套易用的集成式解决方案给 Chong 留下了深刻印象。

Chong 说道,“Cloudflare 不仅配备容易,而且将所有内容集于一处。我们只要进入门户网站便可,一切都在那里。例如,我们一个面向公众的 DNS 指向两个不同的 IP。只要在 Cloudflare 中进行相应设置,我们就不用再操心了。DDoS 防护亦是如此。只要登录门户网站并启动防护,就这么简单。”

Upwork 还受益于 Cloudflare 提供的分析工具。Chong 说道:“通过防火墙分析仪表板,我们能够查看哪些请求触发了安全事件。这样一来,我们可以定期检查安全态势,确保以最佳的姿态防御不断演变的威胁。GraphQL Analytics API 是另一个非常有用的工具,我们可以使用它来查询和准确检索必要的数据,从而自行构建自定义仪表板。”

Chong 补充道:“Cloudflare 不是寻常的合作伙伴。在我刚加入 Upwork 时,Cloudflare 目前的许多功能尚不存在。我提供了反馈后,Cloudflare 便实施了那些功能。我非常欣赏这样的合作伙伴关系。”

Upwork 利用 Cloudflare Workers 提高其工程效率
相关产品
主要成果
  • 通过使用 Cloudflare Workers,Upwork 以手动操作五分之一的时间配置了 150,000 个 URL 重定向。

  • 每天有多达 100 万个请求受到速率限制、质询或阻止,防止异常和恶意流量。

  • Cloudflare 强大的 API 和 Terraform 支持使 Upwork 能够自动执行任务,提高了效率并降低了成本。

通过使用 Cloudflare Workers,我们能够在很短时间配置 150,000 个 URL 重定向,准确性也要比手动配置每个 URL 高得多。多亏了 Workers,我们以最低的稳定性风险轻松节省了数百工时的艰苦劳动。

Wilson Chong
Upwork 可靠性工程高级总监