Ali,
Pretty sure - I've run all the network tests and even rolled out
Ethereal to check the packets on the network. I can see the requests
going from the browser to Cat and being stacked up. BTW this works
fine as well, as long as you don't having a pending request. Did your
app use the same long poll approach + have other traffic flowing
concurrently? If yes then that would be good to know.
Thanks - J

On Tue, Jun 7, 2011 at 2:59 PM, Mesdaq, Ali <[email protected]> wrote:
> Are you sure it's a Catalyst issue? Sounds like it could be a JS issue with 
> your script waiting for responses before moving on to the rest of the ajax 
> calls. Are you using any JS frameworks? A good test could be you create a 
> stub method in catalyst with different wait periods and verify that your JS 
> code is treating them async. I have implemented something that is almost 
> exactly the same (ajax js, catalyst, poe server that uses json interface over 
> tcp) and it worked as expected so I am pretty sure it's not an catalyst issue.
>
> Thanks,
> ALI MESDAQ
> Sr. Security Researcher
>
> WEBSENSE, INC.
> ph: +1.858.320.9466
> fax: +1.858.784.4466
> www.websense.com
>
> Websense TRITON(tm)
> For Essential Information Protection(tm)
> Web Security | Data Security | Email Security
>
>
>
> -----Original Message-----
> From: jeff robinson [mailto:[email protected]]
> Sent: Tuesday, June 07, 2011 10:08 AM
> To: The elegant MVC web framework
> Subject: [Catalyst] long poll AJAX
>
> HI,
> I am using Catalyst to display some server side data using AJAX.
> Essentially there are 3 main blocks:
> 1) The users browser, runing javascript and using the XMLHttpRequest object 
> for the AJAX calls
> 2) The Catalyst web server
> 3) A remote data server (RDS). This is another Perl app (POE based) that has 
> a simple API using JSON.
>
> Some calls on the RDS API basically perform login (to the data source) and 
> provide status info. One call in particular uses the long poll AJAX technique 
> to provide minimal delay when the server side data changes. A particular URL 
> on Catalyst is basically a relay to the remote data source. It uses 
> IO::Socket to create the necessary TCP connection.
>
> Here's the problem:
>
> Everything works fine if the data poll is not delayed and the various AJAX 
> requests are completed in a sequential fashion. However what I'm looking for 
> is the long poll request to just sit there while other AJAX requests check 
> status etc. The AJAX requests are made to a single URL, with an argument that 
> is the request, ie /myserver/ajax/?{JSON data}  From separate tests I know 
> the data source end works fine in this regard. I'm using firebug's networking 
> screen to check on the requests from the browser to Catalyst and that looks 
> good. The problem seems to be a bottleneck in Catalyst, because as soon as 
> the long poll completes all of the waiting status requests complete instantly 
> as well. I had imagined that the threading on Catalyst would support the 
> functionality I'm looking for. Any ideas how to resolve?
> Thanks - Jeff
>
> _______________________________________________
> List: [email protected]
> Listinfo: http://lists.scsys.co.uk/cgi-bin/mailman/listinfo/catalyst
> Searchable archive: http://www.mail-archive.com/[email protected]/
> Dev site: http://dev.catalyst.perl.org/
>
>
>  To report this as spam, please forward to [email protected].  Thank you.
>
>
>  Protected by Websense Hosted Email Security -- www.websense.com
>
> _______________________________________________
> List: [email protected]
> Listinfo: http://lists.scsys.co.uk/cgi-bin/mailman/listinfo/catalyst
> Searchable archive: http://www.mail-archive.com/[email protected]/
> Dev site: http://dev.catalyst.perl.org/
>

_______________________________________________
List: [email protected]
Listinfo: http://lists.scsys.co.uk/cgi-bin/mailman/listinfo/catalyst
Searchable archive: http://www.mail-archive.com/[email protected]/
Dev site: http://dev.catalyst.perl.org/

Reply via email to