Art*_*yom 5 winapi porting posix mingw
我正在尝试/考虑使CppCMS - C++ Web Framework项目更加跨平台.
今天我可以轻松支持Linux,OpenSolaris,FreeBSD甚至Cygwin.但是当涉及Native Windows时,它变得非常痛苦:
情况概述:
这是一个使用在Unix世界中流行的API的Web项目,例如:在大多数UNIX Web服务器中实现的CGI,FastCGI和SCGI; 但我知道我无法在IIS中使用它,因为它不支持TCP/IP上的FastCGI(仅限Windows管道).
因此,即使它可以工作,它也可能仅在Apache的Windows端口上运行.
我在POSIX API上大量接力:
底线:
有很多非常重要的工作要做,即使它完成了,它可能只适用于MingW工具而不是Windows程序员熟悉的" 本机 "工具.
所以,我的问题是:
编辑:
对我来说,了解有多少Windows开发人员更喜欢使用开源开发工具MingW而不是像VS这样的Microsoft开发解决方案,这一点也很重要.
编辑#2:关于"原生"Windows解决方案和IIS的清除.
事实上,用IIS运行框架确实很难.我解释:
该项目与标准 Web服务器API相关,如FastCGI或SCGI,允许通过sinlge套接字接受许多请求.因此,在应用程序方面,我接受新请求继续它并返回答案.有时几个线程处理多个请求.
因此,实现一个或两个标准协议我打开与任何现有服务器的通信:Apache,lighttpd,nginx,cherokee ......或任何其他服务器; 除了IIS之外
IIS具有FastCGI的实现,但是......它仅支持每个本地进程的1个连接,仅由Web服务器控制...
所以...绝对没有标准的方法将我的应用程序连接到IIS.
请注意,我实现了标准的 Web服务器API,我没有实现既不是IIS专有的ISAPI也不是Apache专有的API,即使是第二个更重要的是针对UNIX世界.
所以,只是Windows IIS Web世界还没有为这样的项目做好合作准备,所以如果有人在Windows下使用它,它会将它用于更开放的Web服务器.
您应该根据用户需求做出决定。用户是否曾要求在 Windows 上使用该框架?如果是这样,他们是否解释了为什么他们想要使用 Windows(例如他们有哪些额外的限制、他们想要使用什么网络服务器等)?
通常,Windows 用户确实希望一切按照 Windows 方式运行。这意味着 Visual Studio 支持、IIS 支持、MSI 安装程序等。如果某些东西仍然感觉像 Unix,我宁愿使用 Unix 本身,而不是与半工作的端口作斗争。
| 归档时间: |
|
| 查看次数: |
1573 次 |
| 最近记录: |