[Seaside] Re: Re: i10n or speed?
philippe.marschall at gmail.com
Mon Mar 19 17:17:31 UTC 2007
2007/3/19, Klaus D. Witzel <klaus.witzel at cobss.com>:
> On Mon, 19 Mar 2007 17:17:56 +0100, Philippe Marschall wrote:
> > 2007/3/19, Klaus D. Witzel <klaus.witzel at cobss.com>:
> >> On Mon, 19 Mar 2007 11:58:11 +0100, Philippe Marschall wrote:
> >> > Hi
> >> >
> >> > Have you ever tried a counter in a recent version of Seaside? I don't
> >> > know about you but for such a simple application it is way too slow
> >> > for my taste. As part of the 2.8 cycle we look into ways of making
> >> > Seaside faster.
> >> >
> >> > Attached you will find several traces for the counter application.
> >> > As you can see, an awful lot of time is spent to convert URLs to
> >> > String. Of that most time is spent in#encodeForHTTP.
> >> I know how to speed up #isSafeForHTTP :)
> > At the string level I now use #isByteString + #indexOfAnyOf: with a
> > character set of unsafe latin1 characters.
> > At the character level I use
> > (aCharacter charCode < 128 and: [ (unsafeCharacterSet includes: each)
> > not ])
> > works pretty dandy so far.
> Sure. Must be so, for #isByteString cases :)
> >> Could you make me the traces
> >> again, with the following "correction": there seems to be an #ensure:
> >> (at
> >> the top of tree) which seems to obscure,
> > That's from the MessageTally.
> Never seen that; do you see it in (MessageTally spyOn: [12345 timesRepeat:
> [Processor nextReadyProcess]]) ?
No, I think it comes from the way SeasidePlatformSupport uses
MessageTally. If I directly use MessageTally spyOn: I get debuggers in
the world update loop and red morphs with yellow crosses.
> > What excatly do you want to have profiled?
> The levels underneath #encodeForHTTP and #isSafeForHTTP, for all the cases
> for which #isByteString returnes false. Exactly enough?
Well I just got rid of them all. If it isn't an ASCII character then
it is not safe for HTTP. No need to go into EncodedCharSets and
friends. If it is an ASCII character, well, there is the CharacterSet
of unsafe latin1 characters that does a pretty fast lookup.
> >> what details are touched by
> >> #encodeForHTTP and #isSafeForHTTP.
> > URL generation for anchors and stuff.
> > Philippe.
> >> /Klaus
> >> > So what do you find more important, that Seaside is fast or that is
> >> > supports non-ascii urls?
> >> >
> >> > Cheers
> >> > Philippe
> >> >
> >> > P.S.: the original mail had several traces more but was apparently too
> >> > big, maybe it will arrive later.
> >> _______________________________________________
> >> Seaside mailing list
> >> Seaside at lists.squeakfoundation.org
> >> http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside
> Seaside mailing list
> Seaside at lists.squeakfoundation.org
More information about the seaside