[squeak-dev] Server timeouts and 504 return codes

Tobias Pape Das.Linux at gmx.de
Tue Jan 29 07:31:07 UTC 2019


> On 29.01.2019, at 01:06, Chris Muller <asqueaker at gmail.com> wrote:
> 
>>> Levente, what about the trunk directory listing, can it cache that?
>>> That is the _#1 thing_ source.squeak.org is accessing and sending back
>>> over, and over, and over again -- every time that MC progress box that
>>> says, "Updating [repository name]".
>> 
>> I speeded that up in squeaksource3 by caching the listing on squeak and pushing that as txt.
> 
> Interesting idea, but if your found yourself needing to cache on that
> level, that would seem to be time to delegate that sort of work to
> nginx, wouldn't it?
> 

Funny, I had that in 2010 with our local squeaksource when the Squeaksource based on the original sources died every day.
We used an apache at that time to serve the mcz.
It was fast.
But it also sucked, as ACLs were hard to enforce and no manageability whatsoever.

That's why I got on board with SqueakSource3 in the first place.

-t
> 
> - Chris
> 
> 
> 
>> SSUrlFilter>>rawListingOfProject:
>> 
>> rawListingOfProject: projectName
>>        <get>
>>        <path: '/{projectName}/?format=raw'>
>>        <produces: 'text/plain'>
>> 
>>        self projectNamed: projectName do: [ :project |
>>                (self isAllowed: SSAccessPolicy read in: project)
>>                        ifFalse: [ self authResponseFor: project ]
>>                        ifTrue: [ self requestContext respond: [:response |
>>                                response nextPutAll: project rawDirectoryListing]]].
>> 
>> in http://www.squeaksource.com/squeaksource3.html )
>> 
>> TL;DR: serve the directory listing as plain list of file names when ?format=raw is requested. Only invalidate this listing when a version is added or removed.
>> 
>> -t
>> 
> 



More information about the Squeak-dev mailing list