在go程序中,我想同时运行两个Web服务器,
显然它们将在两个不同的端口(如果需要,还有IP地址)上提供服务,
问题在于调用http.handle
,当我尝试为’ /’对于第二台服务器,它会慌张,并说已经有一个与’/’相关联的处理程序,
我想我除了需要之外还需要创建一个多路复用器DefaultServeMux
,我尝试使用来实现,gorillaMux
但无法弄清楚,
在同一程序/进程中运行两个Web服务器是否存在根本性的错误。
更清楚地说,这两个Web服务器之一是用作常规Web服务器,我需要第二个Web服务器充当RPC服务器,以便在群集的不同节点上运行的程序实例之间进行通讯,
编辑:更清楚一点,这不是实际的代码,但是要点
myMux := http.NewServeMux()
myMux.HandleFunc("/heartbeat", heartBeatHandler)
http.Handle("/", myMux)
server := &http.Server{
Addr: ":3400",
Handler: myMux,
}
go server.ListenAndServe()
gorillaMux := mux.NewRouter()
gorillaMux.HandleFunc("/", indexHandler)
gorillaMux.HandleFunc("/book", bookHandler)
http.Handle("/", gorillaMux)
server := &http.Server{
Addr: ":1234",
Handler: gorillaMux,
}
log.Fatal(server.ListenAndServe())
我认为您只需要删除以下几行:
http.Handle("/", myMux)
http.Handle("/", gorillaMux)
在myMux和gorillaMux中已经定义了所有路由。
检查此:http :
//play.golang.org/p/wqn4CZ01Z6
问题内容: 如果我有另一个正在运行的apache / web-server实例,我用所有这些命令痛苦地分析了昨天的全部内容 我没有在端口8080上运行的Apache或任何其他服务器的另一个实例。 但是,XAMPP给了我这个: 我该怎么办? 我也将httpd.conf编辑为LISTEN到端口9876,并且仍然相同。 问题答案: 如果: 然后,也许有一个锁定文件位于启动要检查的地方?这些通常在/ va
如果我有另一个apache/web服务器实例在运行,我已经痛苦地分析了昨天的所有内容,包括所有这些命令 我没有在端口8080上运行的Apache或任何其他服务器的另一个实例。 然而,XAMPP给了我这样的信息: 我该怎么办? 我还编辑了httpd.conf监听端口9876,仍然是一样的。
我创建了一个dash应用程序来显示另一个代码正在收集的信息,我希望使用Python中的asyncio模块同时运行这两个应用程序。 我的代码使用异步函数,Dash应用程序(基于Flask)在服务时阻止其他任何东西执行。 我不确定这是否需要打开更多的线程。 这是我当前的代码,它只运行主协程。 如何同时运行main和_dashboard?
我正在尝试调试应用程序的流程。因此在这个过程中,我需要调试两个运行在两个不同tomcat服务器上的应用程序(其中一个应用程序中的方法调用不同应用程序的另一个方法)。我如何在eclipse中实现这一点(可能吗)? 注意:这两个应用程序都在同一个eclipse实例中,没有任何调试配置。
问题内容: 我刚刚发现我可以使用Python编写一个非常简单的Web服务器。我已经有一个Apache Web服务器,我想在这台机器上尝试基于Python的Web服务器。但是,如果尝试尝试,可能会引起某种冲突。我的意思是两个Web服务器将如何“决定”谁需要服务器处理来自客户端的请求? 问题答案: 让他们监听不同的端口,您会没事的。 默认的Web端口是80。当您在浏览器中打开某些网址而不指定端口时,默
我试图制作一个时钟,如果 如何同时运行警告语音和时钟,使时钟在播放警告语音()时不会停止? 语音代码: 时钟代码: