[Glass] Large request via HTTP - how is this handled ?

James Foster via Glass glass at lists.gemtalksystems.com
Thu Feb 8 09:53:16 PST 2018


Marten,

The goal of streams is that you don’t have to handle everything at once, so size shouldn’t matter. Typically one would, in a loop, read a chunk from the socket stream and write that chunk to the file stream. The loop would continue until the entire upload is processed. With this, the internal buffer could be 1KB or 1MB, it wouldn’t matter. Such a loop could keep reading till the disk was filled, so effectively no limit.

As others have mentioned, the actual implementation will depend on your framework and if it follows this model. See https://github.com/jgfoster/WebGS/blob/master/WebGS.gs <https://github.com/jgfoster/WebGS/blob/master/WebGS.gs> for the HTTP framework used by GemTalk’s internal bug tracking database (which is always running on the latest release, so now 3.4.1). In this example the “delegate” (or application built on the framework) is passed an HttpRequest (which includes a socket) and can handle it by reading chunks.

James


> On Feb 7, 2018, at 11:42 AM, Marten Feldtmann via Glass <glass at lists.gemtalksystems.com> wrote:
> 
> Hello,
> 
> how is this handled in Gemstoine 3.4.x ? I send a request via HTTP to Gemstone - say a 1.5 GB upload. Gemstone/S will never be able to handle this . 
> 
> How is this handled by the Gemstone/S low level socket ? How large is the internal buffer of that socket ?
> 
> 
> 
> Marten
> 
> _______________________________________________
> Glass mailing list
> Glass at lists.gemtalksystems.com
> http://lists.gemtalksystems.com/mailman/listinfo/glass

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.gemtalksystems.com/mailman/private/glass/attachments/20180208/8da8c39a/attachment.html>


More information about the Glass mailing list