跳到主要内容

LAIKA 创意使用 RabbitMQ 作为动画公司的 IT 神经系统

·5 分钟阅读
Dormain Drewitz

LAIKA 位于俄勒冈州波特兰市,是一家顶级的定格动画公司。LAIKA 以其独特的审美而闻名,其获奖影片包括 卡罗琳通灵男孩诺曼盒子怪久保与二弦琴,以及最近的 遗失的环节。LAIKA 制作电影的方式是高科技与模拟技术的结合。

LAIKA 小型 IT 团队对动画业务充满热情。“我们支持制作,制作电影。” LAIKA 高级技术专家 Mahlon Smith 解释道。该团队在幕后,与布景木工、油漆工和电影导演一起工作。“我们尽可能高效地支持制作。节省的每一美元都可以用于屏幕。”

这种财务责任感引导团队转向可重用的技术。尤其是在集成方面。考虑到这种节俭,该团队早在 2009 年就开始关注 RabbitMQ。他们在过去六年中使用 RabbitMQ 所学到的是如何使用灵活的消息传递骨干网解决更多问题。

挑战:“发生的一切都是事件”

为动画公司运营 IT 带来了一些独特的挑战。电影设计、布景制作和拍摄的周期性变化导致艺术家们来来往往。“我们的行业历来都是一个游牧群体,”Smith 解释说。对于一家如此规模的公司来说,身份管理活动的量非常大。

从广义上讲,LAIKA 的 IT 团队面临着当今普遍存在的挑战。“我们有各种内部和第三方系统,”Smith 说。需要集成的环境数量不断增长。新的软件和系统不断被引入,而现有系统很少被淘汰。

最后,始终存在故障排除的需求。从网络事件、桌面支持到渲染农场本身,获取关于活动的警报和洞察力至关重要。正如 LAIKA 高级系统管理员 Will Fife 指出的那样,“越来越多的事情发生是因为事件,或者因为事件而做某事。”

RabbitMQ:“它是公司的神经系统”

面对动态的用户群体,IT 团队开发了一套工具,用于在离散系统之间配置帐户。他们采用了 RabbitMQ,这是最流行的开源消息代理,用于系统集成。例如,新用户需要配置电话分机,但标准 LDAP 身份验证无法直接访问电话系统。使用 RabbitMQ,新用户帐户创建事件会进入队列。电话系统监听该队列并配置分机。

“我们的桌面支持管理员可以创建一个新用户帐户,我们对该帐户现在被推送到所有需要推送的地方具有一定的可靠性和一致性,”Smith 解释说。该团队开始使用 RabbitMQ 的 Web Socket 层 向浏览器发送实时更新。这使桌面支持团队能够实时查看正在发生的事情,以便排除用户问题。

随着 LAIKA 添加新的软件和系统,这种事件驱动的方式来添加新用户简化了繁琐的流程。“随着时间的推移,我们为新的用户事件添加了越来越多的监听器,这些监听器执行额外的任务和额外的事情。这使其更具弹性,”Fife 说。

与其他消息传递工具(如 NATS 或 NSQ)相比,RabbitMQ 设置策略的能力脱颖而出。例如,该团队可以使用策略来确保私有信息保留在访问受限的非常安全的 V-host 上。

RabbitMQ 已成为 LAIKA 的 IT 瑞士军刀。“我们通过 AMQP 控制网络上的大部分 VM,”Fife 解释说。“这包括启动它们、关闭它们、销毁它们、创建它们、为它们创建存储。” 如果 VM 未在预期的时间内重启,则读取 RabbitMQ 队列的应用程序会通过聊天通知所有者。

虽然 LAIKA 大约 90% 的内部代码是用 Ruby 编写的,但 IT 团队很欣赏 RabbitMQ 本身与语言无关。“RabbitMQ 提供的 STOMP 层 使您可以使用原始套接字轻松参与网络事件,”Smith 说。

由于 RabbitMQ 易于扩展和集成,因此它已成为首选的集成工具。“如果我们需要系统之间的任何类型的通信,那就是我们将要使用的工具,”Smith 说。“它是我们信息技术环境的神经系统。”

“我们知道我们有一条集成之路”

使用 RabbitMQ 作为消息传递骨干网减少了 IT 团队的大量工作。“从 IT 的角度来看,一旦我们部署了它并建立了框架,现在当我们启动某些东西时,几乎是零工作量,”Smith 说。

从新用户到 VM 操作,IT 部门实现了任务自动化并降低了出错风险。例如,最近的建筑搬迁通过向事件队列添加监听器来配置网络端口而得到简化。

RabbitMQ 的事件模型意味着团队不必硬编码集成。“我们可以松散地耦合事物。我们不需要系统之间存在具体的合同,”Smith 说。

灵活性和对策略的支持使 LAIKA 团队不断回到 RabbitMQ 以寻求更多用例。集成越多,它就越有助于解决下一个挑战。

“它现在是一个有大量东西流经的组件,当我们解决问题时,它是我们首先去的地方,因为我们知道信息在那里,或者可以以最小的努力在那里获得。” Smith 说。“我们知道,当出现新问题时,我们有一条与该事件流集成的途径。”

听取更多 RabbitMQ 用户的声音

© . All rights reserved.