相关疑难解决方法(0)

Go Webserver的流程管理

我是一名新的Go程序员,来自Web应用程序和服务开发领域.道歉这是一个关于dep deprp的问题,但我的谷歌搜索答案还没有找到任何答案.此外,这是边缘服务器故障区域,但由于我对API /编程接口更感兴趣,我在这里问.

我使用net/http软件包的内置Web服务器编写了一个小程序.我正准备部署到生产环境,但我对模型Go Go的Web服务器以及我应该如何部署的过程有点不清楚.

具体来说 - 在我习惯的环境(PHP,Ruby,Python)中,我们在应用程序前面有一个Web服务器(Apache,Nginx等),我们将这些Web服务器配置为使用一定数量的工作进程/线程,并配置每个线程应处理的单个HTTP(S)连接数.

我无法找到有关Go的Web服务器如何处理此信息的信息,或者有关如何扩展/规划Go Web服务器规模的实用信息.

即 - 如果我有一个简单的程序运行,准备处理HTTP请求

func main() {
   http.HandleFunc("/", processRequest)
   http.ListenAndServe(":8000", nil)    
}
Run Code Online (Sandbox Code Playgroud)

HandleFunc一次会尝试处理多少个连接?或者它会在连接打开时开始阻塞,并且只在连接关闭后才提供下一个连接?

或者我应该不担心这一点,并把所有东西都塞进一个常规程序?但是,如果我这样做,我如何防止系统被太多执行线程陷入困境?

我基本上是想要

  1. 了解go web服务器的进程模式
  2. 找到调整它的内置功能,和/或任何标准包使用者

就像我说的,我很新,所以如果我完全错过了这方面的情节,请告诉我!

http scale go net-http

10
推荐指数
2
解决办法
1907
查看次数

标签 统计

go ×1

http ×1

net-http ×1

scale ×1