首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >嵌入式Web服务器与外部Web服务器

嵌入式Web服务器与外部Web服务器
EN

Software Engineering用户
提问于 2011-03-14 11:47:05
回答 3查看 2.2K关注 0票数 2

因此,我考虑用Lisp或其他功能语言创建web应用程序,并考虑将web服务器嵌入到应用程序中(让我的应用程序处理HTTP请求)。我不认为有任何问题,然而,我是新的创建web应用程序(以及在大的事情,编程以及)。在您的程序中处理HTTP请求而不是使用web服务器有什么缺点吗?有什么好处吗?

EN

回答 3

Software Engineering用户

回答已采纳

发布于 2011-03-14 12:02:22

处理您自己的HTTP请求而不是使用现有的web服务器来服务器您的应用程序的主要缺点是,在构建能够更快、更安全地处理HTTP请求的web服务器上花费了无数小时的开发时间,这比您自己编写的任何代码都要快。如果您担心开销,您可以使用FastCGI或特定于您的语言的模块(用于Python的wsgi)来尝试轻量级的http服务器(如Lighttpd或nginx ),以及您的应用程序、LISP或其他任何类型的服务器。

或者,您可以始终使用Lighttpd或NGinx作为静态内容,并向应用程序或应用程序服务器提供动态内容的代理请求。

票数 3
EN

Software Engineering用户

发布于 2011-03-14 13:05:49

在您真正正确回答这个问题之前,您必须考虑web处理程序的要求是什么,以及您正在做的交互类型是什么?根据您正在做的事情,赞成/反对的集合可能不同:

  • 完整的Web应用程序:使用外部web服务器。外部web服务器将被优化以处理非应用程序对静态内容的请求(即图像、样式表、JavaScript和静态HTML页面)。使用一个好的web框架将使构建web应用程序更加顺畅。
  • 只是几个Web服务:这是一个平局。没有静态资源可供使用,这取决于您需要扩展多少。您预期的并发请求越多,它就越将您推向外部web服务器。主要原因是外部web服务器被设计用于负载平衡和其他共享工作负载的方法。
  • 点对点应用程序协议:嵌入式服务器工作最好。处理少数(相对简单)请求的编程工作,以及您期望的低得多的通信量,都使嵌入式服务器具有吸引力。您可以忽略大量HTTP规范,因为您不担心浏览器缓存,并且只关注需要应用程序做什么。

归根结底,嵌入式服务器可以做很多工作。您可能可以嵌入其他人为节省一些时间而创建的开源web服务器。事实上,这是Rails和基于Maven的web应用程序项目用于进行内部测试的方法。他们将web服务器嵌入到构建基础设施中,从而使项目的工作更加容易。然而,这两类项目的最终目标是将产品部署在外部web服务器上。

票数 4
EN

Software Engineering用户

发布于 2011-03-14 15:25:58

我会在我的应用程序中嵌入一个web服务器的唯一原因是,如果我有一个合理的期望,它将被安装在一个我无法期待或需要一个独立的web服务器的环境中。请记住,您的应用程序可能必须与其他web服务器共存,因此它必须是可配置的(特别是端口)。这是您想要求用户做的配置吗?

如果这是一个试验性的应用程序,用户基础有限,你想玩,那就去吧!但在“现实世界”中,你几乎永远不会想这样做,就像其他人提到的那样。我以前已经实现了自己的web服务器,一旦您需要做的不仅仅是提供静态页面和一个简单的应用程序,它很快就会变成大量的代码(即使您忽略了安全性和可伸缩性)。

票数 1
EN
页面原文内容由Software Engineering提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://softwareengineering.stackexchange.com/questions/57811

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档