[squeak-dev] [ANN] First public version of rSTAdd-ons (Remote Smalltalk)

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

[squeak-dev] [ANN] First public version of rSTAdd-ons (Remote Smalltalk)

Sebastian Sastre-2
Hi there,

        I've released rSTAdd-ons package. I've been working with rST and found
some issues and improvements I needed which I was monkey-patching in this add
ons package privately. As others here I've believe on the gains the open model
can bring to us so I'm releasing all this in squeak source under MIT license.

        All tests are green. You can find it at rST repository.

        This add ons mainly add one feature and starts housekeeping which will
be evaluated to selectively incorporate in main rST package in team work.

        If you use rST in your projects or for any reason you are willing to
cooperate on maintaining and/or improving it please be my guest to write about
it to coordinate efforts in that regard. For its future I've made some tests to
prove we can improve its performance by about x10. Some discussion is needed
about it to see the more convenient strategy for that.

        So today what's new about it?

        The more remarcable feature added by rSTAdd-ons package is in
BlockContext. You can do things like:

| salute |
salute := 'hello world'.
[1 to: 3 do:[:index|
        Transcript cr; show: salute, index asString] valueAt: '192.168.1.5'
port: 9999.

...or this one:

| salute remote |
salute := 'hello world'.
remote := 'Transcript@192.168.1.5' asLocalObject.
[1 to: 3 do:[:index|
        remote cr; show: salute, index asString] valueAt: '192.168.1.5' port:
9999.

(of course all that from other host than 192.168.1.5)

That's was critical to be able to create new objects in the remote image from
"data" in a client image. Also for updating objects. This allows to easily use
an image as an ODB. If you add some disk support (like Sandstone) you have a
pretty interesting persistence alternative. Specially for those who use Seaside
or any scalability hungry architecture by allowing to prevent points of
contention in the persistence layer.

Other feature is about increasing security by using BoundedTcpListener so the
broker accepts incoming connections to the specified ip and not from others.

Also removed some dependecies on Microsoft Windows so in linux all tests can be
green

        cheers,

Sebastian Sastre


Reply | Threaded
Open this post in threaded view
|

Re: [squeak-dev] [ANN] First public version of rSTAdd-ons (Remote Smalltalk)

garduino
Very interesting work Sebastián.

I will try asap and count me as one of the "users" of rST.

Cheers.
Germán.


2008/4/16, Sebastian Sastre <[hidden email]>:
Hi there,

        I've released rSTAdd-ons package. I've been working with rST and found
some issues and improvements I needed which I was monkey-patching in this add
ons package privately. As others here I've believe on the gains the open model
can bring to us so I'm releasing all this in squeak source under MIT license.

        All tests are green. You can find it at rST repository.

        This add ons mainly add one feature and starts housekeeping which will
be evaluated to selectively incorporate in main rST package in team work.

        If you use rST in your projects or for any reason you are willing to
cooperate on maintaining and/or improving it please be my guest to write about
it to coordinate efforts in that regard. For its future I've made some tests to
prove we can improve its performance by about x10. Some discussion is needed
about it to see the more convenient strategy for that.

        So today what's new about it?

        The more remarcable feature added by rSTAdd-ons package is in
BlockContext. You can do things like:

| salute |
salute := 'hello world'.
[1 to: 3 do:[:index|
        Transcript cr; show: salute, index asString] valueAt: '192.168.1.5'
port: 9999.

...or this one:

| salute remote |
salute := 'hello world'.
remote := '[hidden email]' asLocalObject.
[1 to: 3 do:[:index|
        remote cr; show: salute, index asString] valueAt: '192.168.1.5' port:
9999.

(of course all that from other host than 192.168.1.5)

That's was critical to be able to create new objects in the remote image from
"data" in a client image. Also for updating objects. This allows to easily use
an image as an ODB. If you add some disk support (like Sandstone) you have a
pretty interesting persistence alternative. Specially for those who use Seaside
or any scalability hungry architecture by allowing to prevent points of
contention in the persistence layer.

Other feature is about increasing security by using BoundedTcpListener so the
broker accepts incoming connections to the specified ip and not from others.

Also removed some dependecies on Microsoft Windows so in linux all tests can be
green

        cheers,


Sebastian Sastre







Reply | Threaded
Open this post in threaded view
|

Re: [squeak-dev] [ANN] First public version of rSTAdd-ons (Remote Smalltalk)

Jason Rogers-4
Sebasitian,

This is pretty nice.  I wanted to clarify something.  You said "(of
course all that from other host than 192.168.1.5)".  Is there
something in the package that prevents communication between two
images on the same machine, using different ports of course?

--
Jason

On Wed, Apr 16, 2008 at 9:15 AM, Germán Arduino <[hidden email]> wrote:

> Very interesting work Sebastián.
>
> I will try asap and count me as one of the "users" of rST.
>
> Cheers.
> Germán.
>
>
> 2008/4/16, Sebastian Sastre <[hidden email]>:
> > Hi there,
> >
> >         I've released rSTAdd-ons package. I've been working with rST and
> found
> > some issues and improvements I needed which I was monkey-patching in this
> add
> > ons package privately. As others here I've believe on the gains the open
> model
> > can bring to us so I'm releasing all this in squeak source under MIT
> license.
> >
> >         All tests are green. You can find it at rST repository.
> >
> >         This add ons mainly add one feature and starts housekeeping which
> will
> > be evaluated to selectively incorporate in main rST package in team work.
> >
> >         If you use rST in your projects or for any reason you are willing
> to
> > cooperate on maintaining and/or improving it please be my guest to write
> about
> > it to coordinate efforts in that regard. For its future I've made some
> tests to
> > prove we can improve its performance by about x10. Some discussion is
> needed
> > about it to see the more convenient strategy for that.
> >
> >         So today what's new about it?
> >
> >         The more remarcable feature added by rSTAdd-ons package is in
> > BlockContext. You can do things like:
> >
> > | salute |
> > salute := 'hello world'.
> > [1 to: 3 do:[:index|
> >         Transcript cr; show: salute, index asString] valueAt:
> '192.168.1.5'
> > port: 9999.
> >
> > ...or this one:
> >
> > | salute remote |
> > salute := 'hello world'.
> > remote := 'Transcript@192.168.1.5' asLocalObject.
> > [1 to: 3 do:[:index|
> >         remote cr; show: salute, index asString] valueAt: '192.168.1.5'
> port:
> > 9999.
> >
> > (of course all that from other host than 192.168.1.5)
> >
> > That's was critical to be able to create new objects in the remote image
> from
> > "data" in a client image. Also for updating objects. This allows to easily
> use
> > an image as an ODB. If you add some disk support (like Sandstone) you have
> a
> > pretty interesting persistence alternative. Specially for those who use
> Seaside
> > or any scalability hungry architecture by allowing to prevent points of
> > contention in the persistence layer.
> >
> > Other feature is about increasing security by using BoundedTcpListener so
> the
> > broker accepts incoming connections to the specified ip and not from
> others.
> >
> > Also removed some dependecies on Microsoft Windows so in linux all tests
> can be
> > green
> >
> >         cheers,
> >
> >
> > Sebastian Sastre
> >
> >
> >
>
>
>
>
>
>
>



--
Jason Rogers

"I am crucified with Christ: nevertheless I live;
yet not I, but Christ liveth in me: and the life
which I now live in the flesh I live by the faith of
the Son of God, who loved me, and gave
himself for me."
 Galatians 2:20

Reply | Threaded
Open this post in threaded view
|

RE: [squeak-dev] [ANN] First public version of rSTAdd-ons (RemoteSmalltalk)

Sebastian Sastre-2
No. As an example today I've been working all day with 4 images in my laptop.
They talk to each other concurrently so sweet. All of them bound to localhost.

I'm using this images to make an async scalable architecture: in devel I use 2
seaside images each one with an app and 2 other images as odb's of those seaside
apps. When I need more I just fragment odbs and clone the seaside app workers.
Everything is largely subsecond. Everything can go in any address of the lan.

Also take a look to BoundTcpListener. It will ignore incoming conections from
address from other than the specified as expected to increase security. A
further step on that direction will be to be able to bound it to listen only
addresses of a given network like:  192.168.1.* (or some syntax with sense to
express that). That could be good for a backbone or lan config.

        Enjoy and share experiences!

        cheers,

Sebastian Sastre


> -----Mensaje original-----
> De: [hidden email]
> [mailto:[hidden email]] En
> nombre de Jason Rogers
> Enviado el: Viernes, 18 de Abril de 2008 12:42
> Para: The general-purpose Squeak developers list
> Asunto: Re: [squeak-dev] [ANN] First public version of
> rSTAdd-ons (RemoteSmalltalk)
>
> Sebasitian,
>
> This is pretty nice.  I wanted to clarify something.  You said "(of
> course all that from other host than 192.168.1.5)".  Is there
> something in the package that prevents communication between two
> images on the same machine, using different ports of course?
>
> --
> Jason
>
> On Wed, Apr 16, 2008 at 9:15 AM, Germán Arduino
> <[hidden email]> wrote:
> > Very interesting work Sebastián.
> >
> > I will try asap and count me as one of the "users" of rST.
> >
> > Cheers.
> > Germán.
> >
> >
> > 2008/4/16, Sebastian Sastre <[hidden email]>:
> > > Hi there,
> > >
> > >         I've released rSTAdd-ons package. I've been
> working with rST and
> > found
> > > some issues and improvements I needed which I was
> monkey-patching in this
> > add
> > > ons package privately. As others here I've believe on the
> gains the open
> > model
> > > can bring to us so I'm releasing all this in squeak
> source under MIT
> > license.
> > >
> > >         All tests are green. You can find it at rST repository.
> > >
> > >         This add ons mainly add one feature and starts
> housekeeping which
> > will
> > > be evaluated to selectively incorporate in main rST
> package in team work.
> > >
> > >         If you use rST in your projects or for any reason
> you are willing
> > to
> > > cooperate on maintaining and/or improving it please be my
> guest to write
> > about
> > > it to coordinate efforts in that regard. For its future
> I've made some
> > tests to
> > > prove we can improve its performance by about x10. Some
> discussion is
> > needed
> > > about it to see the more convenient strategy for that.
> > >
> > >         So today what's new about it?
> > >
> > >         The more remarcable feature added by rSTAdd-ons
> package is in
> > > BlockContext. You can do things like:
> > >
> > > | salute |
> > > salute := 'hello world'.
> > > [1 to: 3 do:[:index|
> > >         Transcript cr; show: salute, index asString] valueAt:
> > '192.168.1.5'
> > > port: 9999.
> > >
> > > ...or this one:
> > >
> > > | salute remote |
> > > salute := 'hello world'.
> > > remote := 'Transcript@192.168.1.5' asLocalObject.
> > > [1 to: 3 do:[:index|
> > >         remote cr; show: salute, index asString] valueAt:
> '192.168.1.5'
> > port:
> > > 9999.
> > >
> > > (of course all that from other host than 192.168.1.5)
> > >
> > > That's was critical to be able to create new objects in
> the remote image
> > from
> > > "data" in a client image. Also for updating objects. This
> allows to easily
> > use
> > > an image as an ODB. If you add some disk support (like
> Sandstone) you have
> > a
> > > pretty interesting persistence alternative. Specially for
> those who use
> > Seaside
> > > or any scalability hungry architecture by allowing to
> prevent points of
> > > contention in the persistence layer.
> > >
> > > Other feature is about increasing security by using
> BoundedTcpListener so
> > the
> > > broker accepts incoming connections to the specified ip
> and not from
> > others.
> > >
> > > Also removed some dependecies on Microsoft Windows so in
> linux all tests
> > can be
> > > green
> > >
> > >         cheers,
> > >
> > >
> > > Sebastian Sastre
> > >
> > >
> > >
> >
> >
> >
> >
> >
> >
> >
>
>
>
> --
> Jason Rogers
>
> "I am crucified with Christ: nevertheless I live;
> yet not I, but Christ liveth in me: and the life
> which I now live in the flesh I live by the faith of
> the Son of God, who loved me, and gave
> himself for me."
>  Galatians 2:20
>