kazu2012 / persevere-framework

Automatically exported from code.google.com/p/persevere-framework
0 stars 0 forks source link

Long Running Process Comet Failure #245

Open GoogleCodeExporter opened 8 years ago

GoogleCodeExporter commented 8 years ago
What steps will reproduce the problem?
1. curl -d "{name:''}" http://localhost:8778/example_simple
2. use nc or telnet to:
nc localhost 8778
GET /example_simple HTTP/1.0
Accept: */*
X-Subscribe: *
Cache-Control: max-age=0
X-Seq-Id: 1
X-Client-Id: 867208037610061686690753

3. Use nc or telnet to:
POST /channels HTTP/1.0
Accept: */*
X-Create-Client-Id: 867208037610061686690753

4. Continue to run 'creation' in a loop for extended period:
watch -n 60

5. Continue to check comet channel updates from step 3.

6. After about 40 minutes or so it appears to stop sending updates to that
channel.

7.  If you resubscribe with a new client-id then you get updates for the
next ~40 minutes or so, then it stops again.

What is the expected output? What do you see instead?
You should continue to get comet updates, which you don't.

Please use labels and text to provide additional information.
The problem was first observed using other methods, but it boils down to
the above case failing.

Original issue reported on code.google.com by beau.cro...@gmail.com on 10 Sep 2009 at 9:19

GoogleCodeExporter commented 8 years ago
The Comet connection is designed to intentionally close after 200KB have been 
sent to 
the client because continuous streaming tends to consume massive amount of 
memory on  
browsers if the connection is not reset occasionally. Once the connection is 
closed 
(the response is finished), it is expected that the client will immediately 
reconnect.

Original comment by kris...@gmail.com on 14 Sep 2009 at 9:25