Files
the-way-to-go_ZH_CN/eBook/21.2.md
Haigang Zhou 1573212775 第二十章和第二十一章的翻译 (#831)
Co-authored-by: Joe Chen <jc@unknwon.io>
2022-05-19 20:05:42 +08:00

30 lines
1.9 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# 21.2 MROffice一个使用 Go 的呼叫中心网络电话 (VOIP) 系统
http://mroffice.org/
这个例子表明Go 也适用于简单、可靠的应用程序编程。
MROffice 是一家位于新西兰的公司,专门从事市场调查软件。他们在 Freeswitch 的基础上使用 Go 为市场调查的呼叫中心建立了一个电话解决方案。Kees Varekamp 是有市场研究软件的背景的一位开发人员,他发现该领域的大多数现有软件都很糟糕,于是在 2010 年推出了 MROffice为市场研究行业提供更好的软件。
他的旗舰产品名为 [Dialer](http://mroffice.org/telephony.html)。
Dialer 主要做什么?
- 它把呼叫中心的面试官和受访者联系起来。
- 它在采访平台(提供脚本和收集统计数据)和 VoIP 拨号器(进行实际的电话通话)之间提供一座桥梁。
<u>为什么是 Go</u>
Dialer 的第一个版本是用 Python 写的但他的经验是Python 作为一种动态脚本语言,对于长期运行的服务器进程来说,也许不是一个好的选择:发生了很多运行时的错误,而这些错误本可以在编译时被发现。
正如 Varekamp 先生在悉尼 Go 用户组2011 年 3 月)所说:
> “当 Go 出现的时候,我立刻就理解到了 (made sense to me):类型安全,已编译,感觉像一种脚本语言。”
所以他把 Python 代码移植到 Go 上。*Go 的并发模型*适合这个问题:一个 goroutine 被启动来处理每个呼叫、面试者和被面试者,他们都通过通道来进行通信。`http``websocket` 库使得编写一个用户管理界面变得容易。
该产品现在已经在多个呼叫中心运行,并且正在进行使用神经网络的预测拨号器设计。
- [目录](directory.md)
- 上一节:[Heroku一个使用 Go 的高度可用一致数据存储](21.1.md)
- 下一节:[Atlassian一个虚拟机群管理系统](21.3.md)