背景:
DICOM专栏文章中介绍过解构PACS(分布式PACS)Orthanc的安装和使用,以及相关插件、SQLite数据库等主要模块的分析,此次简单介绍Orthanc中嵌入的Web Server,Mongoose。依托于Mongoose这一轻量级Web Server,Orthanc很好的实现了RESTful API与传统DICOM服务的整合,这也是实现分布式PACS的关键。博文中先给出Mongoose的安装和简单的与C/C++的嵌入式编程,让大家对Mongoose有一个初步的认识,后续再深入分析。
Mongoose Web Server:
Mongoose Web Server的官网地址是http://cesanta.com/mongoose.shtml,开源项目托管在GoogleCode上(http://code.google.com/p/mongoose/),目前国内只能使用VPN打开。Mongoose英文原意代表一种动物的名字,这里Mongoose指的是一个Web服务器,通过提供一个web接口给它,可以轻松嵌入到现有的应用程序中。Mongoose Web Server的执行是自满足的,不依赖于任何其他服务。可随意将其复制到任何目录,它将启动web服务并将当前目录作为主目录、端口号是8080。当然这些配置选项都可以通过配置文件mongoose.conf设置。
下载与安装:
想快速体验一下Mongoose,可到官网中直接下载免费版的安装包双击打开即可,官网中有与Windows、MacOS、Linux系统分别对应的安装包,如下图所示:
作为优秀的开源项目,我们自然希望是下载到源码,对于Mongoose来说源码很少,只有mongoose.h和mongoose.c两个文件。其源码在Github的托管地址是https://github.com/cesanta/mongoose,从代码仓库中可以看到官方源码包中除了包含mongoose.h和mongoose.c源码文件外,还给出了说明文档和测试用例,这里我们下载完整的mongoose源码包,便于后续的学习和使用。在Mongoose的代码仓库中README.md文件给出了一个下载链接DownLoads,该处的链接与官网中下载运行包的流程略有不同,选择好对应版本后需要我们输入联系人方式才可获得下载链接。比较奇葩的是邮箱地址中输入163、126和QQ邮箱都会提示格式错误,看来只能使用国外的邮箱,例如GMail、Hotmail了。鉴于GMail目前在国内的服务稳定性,我直接选择使用Hotmail。