dot Redis 8 已发布,并且是开源的

了解更多

Redis Enterprise 如何助力 TransNexus 的微服务架构,共同打击骚扰电话

(随着组织寻求现代化应用,许多组织正转向微服务架构,将传统应用分解为一系列松耦合的服务。这种深刻的变革启发我们联系处于微服务架构转型不同阶段的 Redis 用户。我们正在通过一系列博客文章讲述他们的微服务故事,始于 2019 年末。)

你在去杂货店的路上,手机响了。这是一个你不认识的号码。你会接听吗?

如果你觉得即使是陌生来电,不接听手机也会引起不安和担忧,恭喜你:你是一个正常的 21 世纪人类,也是骚扰电话的绝佳目标。

去年,美国普通消费者平均接到 178 个骚扰电话。正如每个经历过的人都明白的那样,骚扰电话令人非常恼火,并且会带来真正的负面后果。例如,当消费者对持续的骚扰电话感到厌烦时,他们可能会完全不再接听不认识的号码。这意味着他们可能会错过重要的联系,而正当的企业也无法联系到他们的客户。

幸运的是,在骚扰电话战争前线的颠覆性公司正在构建旨在恢复我们对电话服务信任的新技术。 Alec Fenichel 是电信软件提供商 TransNexus 的高级软件架构师,他就是一位这样的超级英雄,致力于为全球消费者、企业和电话服务提供商现代化电信服务。在一个以复杂性著称的行业中,TransNexus 的电话软件简化了防止骚扰电话、拒绝服务攻击和收费欺诈等关键功能,同时还实现了最低成本路由、呼叫认证等。

TransNexus 成立于 1997 年,为电信公司提供两款产品:NexOSS,本地部署的 VoIP 电信应用;以及 ClearIP,托管在云端的电信软件平台。消除骚扰电话的关键技术包括:

  1. 用于骚扰电话缓解的呼叫分析
  2. 用于主叫方 ID 认证和验证的 STIR/SHAKEN(称为安全电话身份,旨在防止骚扰电话更改其主叫方 ID 号码)
  3. 用于防止邻居欺骗(骚扰电话使用与被叫方号码相似的号码,包括区号和交换机号码)的黑名单

作为云产品的实时数据库,Redis Enterprise 对 TransNexus 的成功至关重要。“当我们接到电话时,我们需要决定如何路由该呼叫,例如是否应该允许或阻止。所有这些过程都是通过与 Redis 的交互完成的,”Fenichel 说,“而且必须实时完成。”

可靠性、安全性和性能

Fenichel 解释说,可靠性、安全性和高性能是 ClearIP 设计的重点,也是微服务架构的固有特性。TransNexus 的呼叫处理,包含大量工作,通常在约 20 毫秒内完成。目标是快速完成工作,以便用户毫无察觉。

从一开始,TransNexus 的 ClearIP 就被设计为在微服务架构内执行复杂的呼叫处理。“微服务架构使得按需扩展变得非常容易,而且也非常容易维护和保持可靠。如果一台服务器发生故障,它会自动被替换,甚至没有人会注意到,”他说。

Redis 是最重要的数据库

TransNexus 目前在 Redis 数据库中拥有数亿个键。TransNexus 的一些客户每秒进行数千次呼叫。由于性能对 TransNexus 的运营至关重要,团队一直小心谨慎地限制 Redis 的操作范围。团队几乎完全依赖 Strings 和 Hashes,但在少数情况下使用 Lists,并针对一个特定的用例使用 Sorted Sets。

Redis Enterprise 充当实时数据库,存储配置数据并帮助确保 TransNexus 的服务能够即时响应,满足公司苛刻的应用需求。“Redis 是我们在线执行呼叫处理所需的唯一数据库。它是最重要的数据库,”Fenichel 说。“我们的其他数据库用于支持用户界面和诸如此类的东西。但当处理呼叫时,它只接触 Redis 数据库。这是设计如此,以最大限度地减少任何其他数据库故障的影响。这使得 Redis 成为迄今为止最重要的数据库。”

但这还不是全部。Redis 还充当中介队列系统,将任务分配给云服务器:记录处理完成后,会放入 Redis 中的队列,然后刷新到数据仓库中。Redis 还是呼叫历史记录和账户的历史信息存储。Fenichel 说:“例如,如果这些来电出于某种原因异常,Redis 会存储对于从 异常检测 角度进行后续判断而言非常重要的信息。”

想了解更多关于微服务的信息?查看 Mutualink 如何使用 Redis 构建拯救生命的微服务架构,以及软件机构 Z3 Works 如何在不同行业中使用 Redis 进行各种项目。聆听 Redis 开发者布道师 Kyle Davis 和 Loris Cro 在 The New Stack 播客上讨论他们的新免费电子书《Redis 微服务傻瓜书》。