采访:昆士兰州 TAB 的 Stephen Wockner

作者:Bob Hepple
Interview: Stephen Wockner of the TAB of Queensland

昆士兰州赛马博彩管理局(普遍且亲切地称为 TAB,呼!)负责管理这个阳光明媚、休闲娱乐的州澳大利亚公众相当大的博彩需求。几乎每个酒吧(在这里令人困惑地称为“酒店”)、俱乐部和商业街都设有高科技博彩中心,供澳大利亚彩民(投注者)使用。所有这些每年的总额达到 13 亿澳元(约合 9 亿美元)——使昆士兰州成为世界上人均最大的博彩社区之一。

从班德堡到库伦加塔,从凯恩斯到伍伦加巴,黄金海岸的冲浪者和度假者以及偏远内陆的农民都很高兴地忽略了一个事实,即所有这些技术都是由一个庞大的分布式网络交付和控制的,该网络由 580 多台运行 TAB 自有博彩软件的 Linux 计算机组成。这些 Linux “分支控制器”遍布每个投注站、代理处、酒店和俱乐部,以

  • 控制视频显示信息,以帮助彩民决定支持哪匹马。

  • 下注。

  • 与布里斯班总部的主机计算机进行通信。

  • 让彩民通过 EFTPOS 银行终端(销售点电子资金转账)访问他们的银行资金。

在本次采访中,客户系统经理兼 TAB 资深员工 Stephen Wockner 将带我们回顾 TAB 使用 Linux 的历史,以及在当时做出如此大胆的决定时,促使其采用 Linux 而非传统系统的一些业务需求。

Interview: Stephen Wockner of the TAB of Queensland

图 1. 昆士兰州 TAB 分支示意图

Stephen (wockner@tabq.com.au) 参与计算机系统开发已有 17 年以上,包括 VMS、Unix、NT 和 PC 系统。他拥有技术管理硕士学位。他喜欢技术和业务挑战,而 Linux 确实能够提供这些挑战。

Bob:请为我们介绍一下 TAB。

Stephen:最初,自动投注机于 1907 年在澳大利亚发明——一种用于计算已下注赔率和奖金的机械装置。现在它在悉尼的动力博物馆里。TAB 本身于 1962 年左右开始营业,是由政府设立的法定机构,董事会由政府任命——明年它将成为一家独立的 корпорация。该产品主要是每日赛马的小额投注,是全国各地酒吧和俱乐部以及海外的一种廉价娱乐形式,彩民们在这里运用他们的智慧和对马匹的了解相互竞争。

在每 100 美元中,TAB 将 85 美元作为奖金返还给公众,6 美元用于税收,6 美元用于资助比赛的赛马行业,3 美元用于运营 TAB;因此,当您意识到该组织在如此广阔的地域内的规模时,就会发现这是一个非常精简高效的运营。

Bob:TAB 何时首次实施 Linux,以及原因?

早在 1990 年,我们就有一个基于 QNX2 的系统,QNX2 是一种专有的类 UNIX 系统,具有实时扩展功能。它在每台 [Intel] 386 机器上以 4MB 内存运行,并控制着整个商店,包括通过 2400 波特租用线路与总部进行通信。它支持多个视频显示设备,以向彩民展示赛事,并支持用于接受投注的输入设备。这些都是非常专业的“标记感应”读卡器和打印机。

1994 年,QNX2 的制造商宣布将停止使用 QNX2,转而使用一种名为 QNX4 的新的、更好的系统,这对我们来说是一个打击。新系统将符合 POSIX 标准,并具有许多新功能,使其成为真正的通用操作系统,但不幸的是,我们不需要这些功能。QNX4 的占用空间也更大——基本上需要我们将所有投注点(当时为 250 个)升级到更大的硬件。

这促使我们开始寻找替代方案——毕竟,如果我们必须升级硬件,那么我们希望最大限度地减少对组织和总成本的影响,并利用更新的软件技术。

Interview: Stephen Wockner of the TAB of Queensland

图 2. 使用中的 Mini-TAB

Interview: Stephen Wockner of the TAB of Queensland

图 3. 已安装的 Mini-TAB

Interview: Stephen Wockner of the TAB of Queensland

图 4. Mini-TAB

Bob:你们还调查了哪些其他系统?

Stephen:我们当时考虑了当时可用的大多数操作系统,包括 DOS 加上附加的实时多任务管理器、Windows 3.1、早期 NT、Windows 95 (Chicago) 的 beta 版本、OS/2、Coherent UNIX、Xenix、Solaris、QNX4 和 Linux 1.0。

Bob:是什么最终让你们选择了 Linux?

Stephen:这个过程非常客观。我们对 UNIX 本身没有任何宗教或其他方面的坚持——我们只是有非常具体的业务问题需要解决。最终,这些问题归结为成本最小化以及在 500 多个地点(其中一些非常偏远)完成工作的能力。

做出决定的许多因素是

  • 功能:它必须在当时合适的硬件上运行——1994 年的 486 配备 16MB 内存,今天升级到奔腾——并且必须支持我们需要的各种特殊设备。这包括通过黑盒控制器连接四个电视显示器、用于显示结果的四端口异步端口以及用于控制投注终端(通常为四个)的 RS485 多点 LAN。

  • 性能:支持特别繁重的、中断驱动的、高负载的、同步的通信,使用 X.22 协议通过 2400bps HDLC(高级数据链路控制)返回总部。

  • 可靠性:系统崩溃很容易导致难看的场面——当比赛只剩两分钟时,彩民可能会非常不耐烦。不,当被告知系统正在重启时,他们不会高兴。您必须记住的是,许多彩民会在最后一刻观看赔率并下注。可靠性和压力下的性能是我们计算机系统的关键要求。

  • 可维护性:我们的许多安装都不在城镇中。它们可能位于遥远的北部或内陆地区,由不精通计算机甚至不是常驻员工的酒吧老板管理。系统必须能够自我维护,并可以从布里斯班进行一些远程管理。

  • 持续性:我们必须确信该系统能够长期运行。我们的系统寿命为五到七年,我们痛苦地了解到,专有供应商的支持无法保证这一点。此外,我们希望确保今天编写的代码能够在明天的处理器上运行。因此,就硬件而言,我们使用商品级 Intel PC——专有的“改进”越少越好。

  • 开发环境:我们的理念是“内部采购”。我们的应用程序是专门化的,由内部或第三方供应商开发——所有应用程序都提供源代码供我们使用。良好的开发环境非常重要。

  • 购买和维护成本:当涉及 580 个系统时,操作系统的许可成本会迅速累积。一些供应商比其他供应商更能应对这种情况。

Bob:不同的系统表现如何?

Stephen:首先,很快就显而易见,即使使用高端 PC,Windows NT 也无法应对我们将要施加的繁重通信负载和中断率。Windows 95 也差不多。在配备 16MB 内存的 486 上运行甚至无法与配备 4MB 内存的旧 QNX2 系统相媲美。可靠性是另一个问题——系统必须保持运行——如果彩民在下注时感到沮丧,臭名昭著的“蓝屏死机”可能会变成字面意义上的死亡!

带有附加多任务器的 DOS 实在太难了。我们预测,如果我们选择第三方供应商,就会出现持续性问题,如果我们自己编写,就会出现技术困难和延误。

Coherent 和 Xenix 都太旧了——我们对支持能否持续下去没有信心。同样,OS/2 在技术上很好,但未来非常有限。

Solaris 和其他 UNIX 系统也遇到了与 QNX4 相同的问题——占用空间大,许可费也不合理。我们也不确定供应商能否在我们的五年到七年的时间范围内继续提供支持。

最终,Linux 是唯一能够在各个方面都达到要求的系统。购买成本也很不错,但绝不是最重要的因素——对于合适的系统,我们完全愿意支付许可费(就像我们使用 QNX2 一样)。在 1994 年那个时候,Linux 发展迅速,我们能够看到它拥有美好的未来。

Bob:实施过程如何?

Stephen:我们于 1995 年初开始工作,并在 1997 年首次发布生产系统。需要做一些工作来启动 X.22 HDLC 和 RS485 网络,并将主要的投注应用程序从 QNX2 系统移植过来。除了必须修复一些小错误外,一切都非常顺利。

除了运行我们的代码和支持我们的设备外,Linux 还在继续运行。到目前为止,我们还没有因为计算机故障而在投注站发生骚乱——事实上,我们最大的可靠性问题是这里发生的巨大热带风暴造成的电涌。闪电甚至可以撕裂 e2fs 磁盘并使其报废。我们不知道有多少系统需要在如此恶劣且实际上无人值守的环境中运行。

为了应对天气和其他紧急情况,我们在每个系统中都构建了一个救援分区,可以远程启动该分区,该分区只做一件事——它重建主分区并重启机器。通过这种方式,我们可以及时修复最常见的服务呼叫——所有这些都无需派遣技术人员前往 700 公里外的灌木丛。我们甚至有一个工具(尚未使用的)可以在我们发布错误版本的情况下重新安装以前版本的软件。

Bob:你们从哪个版本的 Linux 开始使用?

Stephen:嗯,我们现在使用的是 Slackware 3,内核 2.0.14,但最初我们使用的是 1.0,然后是 1.1——是的,不要惊慌,我们实际上是在开发人员版本上运行生产系统,它们非常稳定——我们需要新功能。从本质上讲,访问源代码使我们能够为自己的目的定制线路驱动程序并自我支持。有了源代码,我们可以确信我们能够生存下来。事实上,我们发现自己修复了 3c509 驱动程序中的错误。

Bob:当然,作为优秀的网民,你们也回馈了这些修复程序,对吗?

Stephen:嗯,并非总是如此——奇怪的是,像当时的许多 корпорация 一样,TAB 不信任互联网。毕竟,我们是一家主要的金融机构,对安全性要求很高。我们在工作中根本无法访问互联网——我们使用 InfoMagic CD-ROM 版本,程序员在家中进行黑客攻击以下载和上传额外的代码。在没有互联网的情况下支持 Linux 是一件非常痛苦的事情,因此在早期,我们可能更多的是消费者而不是贡献者。当然,今天我们拥有完整的互联网连接——您可以在 http://www.tabq.com.au/ 上看到我们(并在线投注)。

至于将完成的系统回馈给社区,我们与我们的合作伙伴合作——我们的合同通常允许他们根据他们为我们所做的工作生产产品和子系统,因此这些代码通过他们返回到系统中。显然,我们的顶级投注应用程序太专业化了,无法引起许多人的兴趣,而且安全问题始终存在。我们主要谈论的是子系统。

这种综合的一个很好的例子是 Mosaic Pty Ltd 为我们开发的 20 端口 X.22 多路复用器卡,现在由他们销售。它为我们的 Unisys 主机提供了一个非常经济的基于 PC 的通信前端。

Bob:最终用户呢?他们从 Linux 中获得了哪些优势?

Stephen:他们获得的优势是他们不知道它的存在!它很可靠——它不会轻易崩溃。对于临时员工或计算机新手来说,它简单易学易用——不涉及鼠标,只有一套非常简单的级联菜单,易于学习且不易引起麻烦。

Bob:I.T. 业务呢——它如何受益?

Stephen:Linux 真正帮助我们实施内部采购,这反过来又使我们能够保持一个紧密的循环,以便在我们的系统中开发新功能。营销人员和高层管理人员会想出新的投注方式,我们可以快速支持他们的想法。我们的行动相当迅速,上市时间是一个关键问题。

所有这些都是以远低于使用大型供应商并依赖其专有锁定功能和不断升级的支持成本的成本完成的。毕竟,大多数供应商都是以销售为导向的。例如,如果我们在第 0 年购买一个小部件,那么在第 5 年或第 10 年会销售多少个小部件?继续支持的动力是什么?我们相信 Linux 将继续推出我们需要的功能,但允许我们以我们可以控制的速度迁移我们的已安装基础,而不是因为某些供应商需要从新版本中获得收入。因此,开源方法使我们能够控制持续性,并能够排除代码膨胀。

高效维护如此庞大的系统也是降低成本的关键。派遣技术人员前往许多分支机构是一件需要两天时间的事情,涉及机票和住宿。Linux 允许我们远程监控和维护系统——甚至安装下一个伟大版本——所有这些都通过 2400 波特/秒的线路完成!

Interview: Stephen Wockner of the TAB of Queensland

图 5. TABQ 的 Linux 团队

Interview: Stephen Wockner of the TAB of Queensland

图 6. Linux 网络控制器机房

Bob:使用 Linux 有什么问题或担忧吗?

Stephen:在 1995 年采用 Linux 对于一家 корпорация 来说是一个很大的进步,并且伴随着通常的恐惧和反对意见,即“谁是支持我们的供应商”。事实上,这种恐惧被证明是虚惊一场(谣言)——我们从互联网上获得的支持比大多数大型供应商的支持都要好,而且我们的“内部采购”理念使我们能够在陷入困境时修改源代码。

我们不得不配备工具以实现独立,这是不利的一面。我们需要快速培养高水平的技能和内部核心竞争力,然后确保我们留住员工。我们以历史悠久的方式做到这一点——我们向我们的工程师支付处于较高百分位的工资,并为他们提供双重职业发展道路,因为他们会成熟为管理人员或专业工程师。许多公司不提供这种成长道路,然后想知道为什么他们最优秀的人才纷纷离职。

关于 KDE 与 GNOME 以及 Linux 标准的一些争论让我们停下来思考——但总的来说,这是一场健康的战斗,如果对这些问题漠不关心,我们会更加担心。我们确信 Linux 是由一个紧密而有凝聚力的社区开发的,他们对产品充满热情。

Bob:现状如何?

Stephen:目前,我们已安装了约 580 个带有 Linux 系统的分支控制器,我们将在另外 50 个站点继续淘汰旧的 486 QNX 系统。我们购买顶级的商品 PC——现在是奔腾 II——并在开发人员的办公桌上对其进行强化。当每批大约 50 个 PC 到货时,最后一批就会发送到分支机构。然后我们让他们工作到报废——我提到过七年的生命周期。问题在于,我们甚至无法将我们的旧东西捐赠给有价值的事业,因为我们的旧机器在我们用完它们时真的非常老旧和疲惫。

运行 Linux 的能力显然是所有新设备的首要验收标准。

Bob:Linux 还有其他应用程序吗?

Stephen:在另一个项目中,我们一直在将基于 Linux 的“迷你 TAB”放入较小的网点,如酒吧和俱乐部,这些网点不需要完整的系统。这些迷你 TAB 的大小与可口可乐自动售货机差不多,我们可以以合理的成本制造它们——我们在其他州的同行无法做到这一点,因为主机支持成本很高。Linux 使我们能够使用真正的客户端-服务器方法,同时将可靠性保持在主机级别。我们还可以通过 Linux 客户端-服务器向最终用户提供更多信息,例如,每个屏幕支持 30x80 个字符,而主机版本则以 24x30 (Teletext) 运行。

在总部,我们还使用 Linux 作为整个网络的身份验证服务器——在 Linux 验证远程系统之前,不会下注任何赌注。

我们还有大约 20 个运行 QNX4 的盒子,作为主机的前端通信,并与现场的所有 Linux 盒子进行通信。这取代了每个 20 条线路 60 万美元的专有前端。不幸的是,Linux 还没有足够的实时性能来做到这一点,但随着硬件速度的提高和实时功能被添加到 Linux 中,我们将密切关注它。

顺便说一句,整个总部的主机和前端处理器以及身份验证服务器都在昆士兰州的一个单独的站点镜像,以防发生灾难。

最后,我们在我们的开发区有大约 50 台 Linux 机器,它们都运行 X Window System 和各种桌面——例如,我们喜欢 Enlightenment。较新的开发环境对我们来说是一个非常好的优势,并且真正支持了我们使用 Linux 的决定——例如“Nedit”,它看起来很像 Virtual Studio,并提供了出色的生产力。像 gdb 这样的东西显然得到了很好的利用,但漂亮的新 GUI 前端有助于我们保持生产力。

Bob:互联网呢?

Stephen:我们将互联网视为未来远程投注的首选媒介——换句话说,电话投注。显然,它以最及时的方式向我们的彩民提供信息,这才是游戏的名称。相比之下,报纸提供的形式和赔率信息已经过时一天以上,而广播和电视只在他们想提供信息时才提供信息。我们的客户目前使用电话或互联网,具体取决于哪种方式对他们更方便。因此,这是给彩民的一个提示——使用互联网获取最新的赛马信息。

我们使用 Linux 作为互联网和安全服务器,为我们在互联网上注册的彩民提供数字证书。我们投注页面上的 Java 小程序使他们屏幕上的信息保持最新——数据是 30 秒或更短时间内的。除了进入 TAB 代理机构之外,您在任何地方都无法做得更好。Linux 盒子颁发的数字证书具有特殊的安全功能——我们认为这在金融环境中至关重要——如果客户认为他们的证书已泄露(例如,被盗),他们可以致电并在几分钟内取消它。没有多少(如果有的话)证书颁发机构可以提供此选项。

Bob:未来呢?

Stephen:我们有电话投注中心——实际上是呼叫中心——在布里斯班有大约 550 名接线员,在南部大约一小时车程的黄金海岸有 110 名接线员,全部在 NT 上运行。我们正处于新 Linux 版本的测试阶段,该版本将使用数字声音系统将所有呼叫存储到巨大的磁盘阵列中。这将取代我们现在拥有的庞大而过时的磁带录音系统,并提供更快的检索速度——我们将录音保存 28 天,以防与彩民发生纠纷(“我没有说在 'Neddy' 上下注 10 美元,我说的是 'Freddy'”)。这将于明年年底部署,到 1999 年底,我们将运行超过 1000 台 Linux 机器。

后端主机正在转换为在 NT 平台上运行。随后,为 NT 编写的许多应用程序随后被移植到 Linux 环境中。在从 NT 到 Linux 的转换中,我们将能够利用我们一直努力保持的 C++ 代码可移植性——我们有一套通用的库,并充分利用可重用的 C++ 代码。例如,每个系统,无论是 NT、Linux 还是 QNX,都使用整个投注系统的通用基于内存的模型——几乎是一个内存数据库。它在所有机器上都是相同的,并且不断更新。

在完全不同的另一个方面,我们正在考虑转向卫星拨号通信而不是租用线路,因为 Linux 应该能够很好地做到这一点。这可以为我们节省一大笔资金,每年我们在固定的 2400bps 线路上的花费为 200 万美元,并且还可以让我们以 19.2Kbps 的速度进行交易。

Interview: Stephen Wockner of the TAB of Queensland

图 7. 昆士兰州的早餐溪酒店

Bob:对于企业和政府 I.T. 领域的其他人有什么建议吗?

Stephen:首先,我们通过经验发现,尽可能避免新系统开发的“大爆炸”方法要好得多——在我们对各个组件应用增量改进的地方,我们取得了更大的成功。

Stephen:Linux 在客观评估中适合我们特定和特殊的业务问题,并产生了最佳、最具成本效益、功能性和可靠性的长期解决方案。我们并没有因为系统中缺少供应商的支持而感到不安,即使它在各方面都是一项关键任务应用程序。我们认为,关于供应商支持的 FUD(恐惧、不确定性和怀疑)通常是伪装成专有锁定的借口。当然,我们拥有一种内部采购和自给自足的理念,这可能并不适合所有实体。

Stephen:我们使用 Linux 节省的成本远远超出了零许可费的范围,进入了不太容易量化的良好可靠性、可维护性、可升级性和持续性领域。

Bob:非常感谢!

Interview: Stephen Wockner of the TAB of Queensland
Bob Hepple 是 HP、Sun、Unisys 和 Visa International 在新加坡、香港和澳大利亚拥有 15 年 UNIX 和 5 年 Linux 经验的资深人士。他最初在英国学会了不喜欢寒冷。最近搬到美丽的昆士兰州布里斯班后,他正在合同之间休息。可以通过 bhepple@bit.net.au 联系到他。
加载 Disqus 评论