Issue 32518: HTTPServer can't deal with persistent connection properly (original) (raw)

Created on 2018-01-08 08:09 by 杨鹏, last changed 2022-04-11 14:58 by admin. This issue is now closed.

Pull Requests
URL Status Linked Edit
PR 5135 closed 杨鹏,2018-01-08 08:09
Messages (6)
msg309659 - (view) Author: 杨鹏 (杨鹏) * Date: 2018-01-08 08:09
when client is using persistent connection, HTTPServer will hang with that connection. As a result, it can't deal with other clients.
msg309660 - (view) Author: Martin Panter (martin.panter) * (Python committer) Date: 2018-01-08 10:49
Perhaps this can be treated as a duplicate of Issue 31639.
msg309664 - (view) Author: R. David Murray (r.david.murray) * (Python committer) Date: 2018-01-08 12:59
Yes, I would say it is. Note that this isn't going to get "fixed" in 2.7, because 2.7 doesn't get new features, and the proposed change to the CLI is a new feature. As noted in that issue discussion we aren't going to change the inheritance hierarchy of the classes. It is up to the library user to make that choice and implement it.
msg309683 - (view) Author: 杨鹏 (杨鹏) * Date: 2018-01-09 02:41
OK,i got it. thanks for your reply. But i have to say, the BaseHTTPServer document is kind of confusing. It claims to support persistent connection, but actually it hangs with such situation, i can't even shut it down with shudown() method. After diving into source code of SocketServer, i finally found the myth.
msg309696 - (view) Author: R. David Murray (r.david.murray) * (Python committer) Date: 2018-01-09 13:34
Well, it does support a persistent connection, but that connection lasts until it is shut down from the other side. Documentation improvement suggestions are welcome.
msg309697 - (view) Author: R. David Murray (r.david.murray) * (Python committer) Date: 2018-01-09 13:36
In particular, if we don't already have an example of using the threading mixin we should, so a doc RFE to add that would be nice.
History
Date User Action Args
2022-04-11 14:58:56 admin set github: 76699
2018-01-09 13:36:07 r.david.murray set messages: +
2018-01-09 13:34:40 r.david.murray set messages: +
2018-01-09 02:41:54 杨鹏 set messages: +
2018-01-08 20:31:02 martin.panter set superseder: HTTPServer can't deal with persistent connection properly -> http.server and SimpleHTTPServer hang after a few requests
2018-01-08 20:31:02 martin.panter unlink issue32518 superseder
2018-01-08 12:59:32 r.david.murray set status: open -> closedsuperseder: HTTPServer can't deal with persistent connection properlynosy: + r.david.murraymessages: + resolution: duplicatestage: resolved
2018-01-08 12:59:32 r.david.murray link issue32518 superseder
2018-01-08 10:49:35 martin.panter set nosy: + martin.pantermessages: +
2018-01-08 08:09:03 杨鹏 create