[ANN] Swazoo beta3 with final WebSockets released

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
6 messages Options
Reply | Threaded
Open this post in threaded view
|

[ANN] Swazoo beta3 with final WebSockets released

Janko Mivšek
Dear all,

Here is hopefully last beta for Swazoo 2.3 with WebSockets upgraded to
final RFC. Thanks to Hans-Martin Mosner :)

You can find it with Squeak/Pharo on SqueakSource:

        http://www.squeaksource.com
                /MetacelloRepository/ConfigurationOfSwazoo2
        http://www.squeaksource.com/Swazoo/Swazoo-2.3beta3.0.mcz

and for VisualWorks in Public Store.

>From release comment:

Swazoo 2.3 beta3 release, same as on Squeak/Pharo

1. WebSockets protocol upgraded to a final RFC thanks to Hans-Martin Mosner

2. IP blacklising and whitelisting introduced, add IP address patterns
to collections in
    SwazooServer singleton ipBlacklist or ipWhiteList
- urlBlacklist added, to filter by url patterns
- ipAllowedList added, for kind of 'root' IPs, always allowed access

3. more:
- SwazooServer instvar #other introduced, #watchdog removed and moved to
#other
- SpTimestamp extended with #millisecond method
- HTTPRequest printOn: for POSTs prints postdata or entity body too
- Collection count: added on VW, for Squeak/Pharo compatibility

2. pathces:
- HTTPConnection close didn't terminate the loop process
- SwazooWebSocket asByteArray:, implemented here for portability
- Sport patch: SpAbstractSocketReadRequest #close missing
- HTTPRequest printOn: prints AJAX for such requests
- HTTPConnection interact raises error for non OsErrors (VW specific!)
- extension: Collection #count: added, for compatibility with Squeak/Pharo
- HTTPConnection getAndDispatchMessages don't close http10 with keepAlive!
- SwazooStream anyDataReady ignore any exception when #fillBuffer
- SwazooURI proper parsing of protocol, host and port
- patch: HTTPRequest printOn:
- SwazooServer
 -- stop, stops all instances of HTTPServer, just for sure
 -- category private-wathcdog removed
- FileResponse printEntityOn: binary
- SpFileStream binary, nextAvailable
- Collection count: added
- patch: HTTPConnection close nils self server, nextPutError ignores any
further error
- HTTPConnection produceResponseFor: exception catching removed, there
is another one upper in #interact anyway

Best regards
Janko

------------------------------------------------------------------------------
Everyone hates slow websites. So do we.
Make your web apps faster with AppDynamics
Download AppDynamics Lite for free today:
http://p.sf.net/sfu/appdyn_sfd2d_oct
_______________________________________________
Swazoo-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/swazoo-devel
Reply | Threaded
Open this post in threaded view
|

Re: [ANN] Swazoo beta3 with final WebSockets released

Paolo Bonzini-2
Il 31/10/2012 20:06, Janko Mivšek ha scritto:

> Dear all,
>
> Here is hopefully last beta for Swazoo 2.3 with WebSockets upgraded to
> final RFC. Thanks to Hans-Martin Mosner :)
>
> You can find it with Squeak/Pharo on SqueakSource:
>
> http://www.squeaksource.com
> /MetacelloRepository/ConfigurationOfSwazoo2
> http://www.squeaksource.com/Swazoo/Swazoo-2.3beta3.0.mcz
>
> and for VisualWorks in Public Store.
>
>>From release comment:
>
> Swazoo 2.3 beta3 release, same as on Squeak/Pharo

Sigh, no SwazooBuffer refactoring and no printer/parser framework for
SCGI... :(

Paolo


------------------------------------------------------------------------------
Everyone hates slow websites. So do we.
Make your web apps faster with AppDynamics
Download AppDynamics Lite for free today:
http://p.sf.net/sfu/appdyn_sfd2d_oct
_______________________________________________
Swazoo-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/swazoo-devel
Reply | Threaded
Open this post in threaded view
|

Re: [ANN] Swazoo beta3 with final WebSockets released

Janko Mivšek
Dne 01. 11. 2012 07:57, piše Paolo Bonzini:
> Il 31/10/2012 20:06, Janko Mivšek ha scritto:

>> Here is hopefully last beta for Swazoo 2.3 with WebSockets upgraded to
>> final RFC. Thanks to Hans-Martin Mosner :)

> Sigh, no SwazooBuffer refactoring and no printer/parser framework for
> SCGI... :(

I don't have an experience with SCGI to properly test your contribution,
can you merge into Squeak/Pharo or VW by yourself?

About SwazooBuffer refactoring, this is tricky and can destabilize
Swazoo-s in production, on the other side current solution works
reliably and with near optimal performance. As I remember your patch
won't improve it much?

Best regards
Janko





--
Janko Mivšek
Svetovalec za informatiko
Eranova d.o.o.
Ljubljana, Slovenija
www.eranova.si
tel:  01 514 22 55
faks: 01 514 22 56
gsm: 031 674 565

------------------------------------------------------------------------------
Everyone hates slow websites. So do we.
Make your web apps faster with AppDynamics
Download AppDynamics Lite for free today:
http://p.sf.net/sfu/appdyn_sfd2d_oct
_______________________________________________
Swazoo-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/swazoo-devel
Reply | Threaded
Open this post in threaded view
|

Re: [ANN] Swazoo beta3 with final WebSockets released

Philippe Marschall
In reply to this post by Paolo Bonzini-2
On Thu, Nov 1, 2012 at 7:57 AM, Paolo Bonzini <[hidden email]> wrote:

> Il 31/10/2012 20:06, Janko Mivšek ha scritto:
>> Dear all,
>>
>> Here is hopefully last beta for Swazoo 2.3 with WebSockets upgraded to
>> final RFC. Thanks to Hans-Martin Mosner :)
>>
>> You can find it with Squeak/Pharo on SqueakSource:
>>
>>       http://www.squeaksource.com
>>               /MetacelloRepository/ConfigurationOfSwazoo2
>>       http://www.squeaksource.com/Swazoo/Swazoo-2.3beta3.0.mcz
>>
>> and for VisualWorks in Public Store.
>>
>>>From release comment:
>>
>> Swazoo 2.3 beta3 release, same as on Squeak/Pharo
>
> Sigh, no SwazooBuffer refactoring and no printer/parser framework for
> SCGI... :(

Where does the interest in SCGI come from? AFAIK SCGI doesn't use
persistent TCP connections so it doesn't strike me as a particular
desirable protocol.

Cheers
Philippe

------------------------------------------------------------------------------
Everyone hates slow websites. So do we.
Make your web apps faster with AppDynamics
Download AppDynamics Lite for free today:
http://p.sf.net/sfu/appdyn_sfd2d_oct
_______________________________________________
Swazoo-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/swazoo-devel
Reply | Threaded
Open this post in threaded view
|

Re: [ANN] Swazoo beta3 with final WebSockets released

Paolo Bonzini-2
In reply to this post by Janko Mivšek
On Thu, Nov 1, 2012 at 8:35 AM, Janko Mivšek <[hidden email]> wrote:

> Dne 01. 11. 2012 07:57, piše Paolo Bonzini:
>> Il 31/10/2012 20:06, Janko Mivšek ha scritto:
>
>>> Here is hopefully last beta for Swazoo 2.3 with WebSockets upgraded to
>>> final RFC. Thanks to Hans-Martin Mosner :)
>
>> Sigh, no SwazooBuffer refactoring and no printer/parser framework for
>> SCGI... :(
>
> I don't have an experience with SCGI to properly test your contribution,
> can you merge into Squeak/Pharo or VW by yourself?
I mostly care about having the abstract classes in the upstream Swazoo
distribution.

SCGI itself is only ~50 lines of code with the proper abstractions.

> About SwazooBuffer refactoring, this is tricky and can destabilize
> Swazoo-s in production

That's what unit testing is for.

> , on the other side current solution works
> reliably and with near optimal performance. As I remember your patch
> won't improve it much?

It is mostly a portability improvement.  But there were also other
optimizations to HTTP request parsing that brought it down from 7% to
little more than 1%.  See
http://smalltalk.gnu.org/blog/bonzinip/optimizing-http-header-manipulation-part-2

I attach the Monticello changesets.  Sorry they're obsolete.  I sent
these patches for the first time three years ago and I don't have time
to update them now.

Paolo

------------------------------------------------------------------------------
Everyone hates slow websites. So do we.
Make your web apps faster with AppDynamics
Download AppDynamics Lite for free today:
http://p.sf.net/sfu/appdyn_sfd2d_oct
_______________________________________________
Swazoo-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/swazoo-devel

swazoo.zip (1M) Download Attachment
Reply | Threaded
Open this post in threaded view
|

Re: [ANN] Swazoo beta3 with final WebSockets released

Paolo Bonzini-2
In reply to this post by Philippe Marschall
> Where does the interest in SCGI come from? AFAIK SCGI doesn't use
> persistent TCP connections so it doesn't strike me as a particular
> desirable protocol.

Nicolas was using Swazoo behind an Apache (or nginx, don't recall)
proxy, and it was quite effective.  Parsing is faster than HTTP,
though some optimizations to GNU Smalltalk could give noticeable
savings even with HTTP.

Paolo

------------------------------------------------------------------------------
Everyone hates slow websites. So do we.
Make your web apps faster with AppDynamics
Download AppDynamics Lite for free today:
http://p.sf.net/sfu/appdyn_sfd2d_oct
_______________________________________________
Swazoo-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/swazoo-devel