"tsnet (1) Received HTTP/0.9 when not allowed"?

Ralph DiMola rdimola at evergreeninfo.net
Thu Apr 1 20:12:20 EDT 2021


It is session specific. After 2 back-to-back requests to the LC server
script that uses sessions 50% of the time you get into this state:
1) Any server request that attempts to create or use an existing session
will lock up for 20-30 seconds and return empty.
2) Server requests that don't use sessions will continue to work.

After you delete the lcsessions.idx file then all is back to normal until 2
or 3 requests using sessions come back-to-back.
Very repeatable.

Ralph DiMola
IT Director
Evergreen Information Services
rdimola at evergreeninfo.net


-----Original Message-----
From: use-livecode [mailto:use-livecode-bounces at lists.runrev.com] On Behalf
Of Richard Gaskin via use-livecode
Sent: Thursday, April 01, 2021 4:59 PM
To: use-livecode at lists.runrev.com
Cc: Richard Gaskin
Subject: Re: "tsnet (1) Received HTTP/0.9 when not allowed"?

Ralph DiMola wrote:

 > Richard,
 >
 > I also have a problem when requests come too fast. This might be  >
related? I'm on an on-rev server. My problem was that using sessions  >
caused the LC server to choke about 50% of the time when sending back-  >
to-back requests. I confirmed this when stress testing by sending 2 or  >
more requests to LC server from the from the QCC demo client stack  >
back-to-back. I'm wondering if these two are connected?
 > https://quality.livecode.com/show_bug.cgi?id=22560

Thanks, Ralph.  I do use persistent session data, but in this app I use a
custom store, not LC Server's session handling. That's an interesting
report, though, and I've added myself to the CC there.

This loading-fonts-unnecessarily issue seems to be more related to my
circumstance:
https://quality.livecode.com/show_bug.cgi?id=14115

I'll know more if I get a chance I put the funky-font-fix workaround in
place, but TBH I'm more likely to just move the app to a VPS instead. 
So it'll be a question of making the time for a funky setup test, and while
that might narrow down root causes it won't fix anything since it's unlikely
to be addressed anytime soon:  two community members who've looked at the
engine code believe IF-DEFing the font init would be prohibitively
cumbersome given the imported subsystems that would need it (like Skia), and
the core team has other priorities.


 > I want to use LC Server sessions for some website work but am  >
reluctant to do so because if 2 users happen to hit the server  > too close
together then LC server locks up for any future requests  > that uses
sessions.

How certain are you the issue you're seeing is specific to sessions? 
I've skimmed your report but haven't tested it, so forgive me if this should
be obvious, but have you found any other circumstances where file
I/0 may be the trigger, rather than session storage specifically?


 > If you find a solution I'll be interested to see  > if it helps me also.

If your issue is session-specific, I got nothing.

If it may be general resource consumption (mostly memory), the
funky-font-fix may do the trick.  But setting it up is not for the feint of
heart.  If you're comfortable with bash I can provide instructions to try
it.


Kinda sad. LC's chunk expressions make our beloved language a nearly ideal
fit for so many server tasks.  General performance is more or less on par
with Python and Ruby where CGI stuff has been a famously good
fit- LC can do anything they can do, and with more readable code that's more
enjoyable to write. But we need to tighten it up and bring down the resource
consumption before I'll stake my reputation evangelizing it beyond the
current community of LC diehards.

--
  Richard Gaskin
  Fourth World Systems
  Software Design and Development for the Desktop, Mobile, and the Web
  ____________________________________________________________________
  Ambassador at FourthWorld.com                http://www.FourthWorld.com




_______________________________________________
use-livecode mailing list
use-livecode at lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode





More information about the use-livecode mailing list