Server push

classic Classic list List threaded Threaded
32 messages Options
12
Reply | Threaded
Open this post in threaded view
|

Server push

Ian Monroe
I see on http://qooxdoo.org/community/wishlist that "push" is a wishlist item.

But does anyone have a clever way of doing it regardless?

I thought I would ask before implementing a polling system.

Thanks,
Ian

-------------------------------------------------------------------------
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK & win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100&url=/
_______________________________________________
qooxdoo-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/qooxdoo-devel
Reply | Threaded
Open this post in threaded view
|

Re: Server push

Derrell Lipman
On Wed, Aug 13, 2008 at 10:42 AM, Ian Monroe <[hidden email]> wrote:
I see on http://qooxdoo.org/community/wishlist that "push" is a wishlist item.

But does anyone have a clever way of doing it regardless?

I thought I would ask before implementing a polling system.

The HTTP spec says that there can be up to two outstanding XmlHTTPRequests concurrently.  This means that you could do an async request with a very long timeout that your server could reply to when it wants to "push" to your application.  The other allowable request can be used for short-timeout requests.  If you do this, you should also periodically do a short-timeout request to ensure that the server is stll alive, since you'll otherwise get no indication via your long-timeout request that you've lost comms with your server.

Cheers,

Derrell



-------------------------------------------------------------------------
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK & win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100&url=/
_______________________________________________
qooxdoo-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/qooxdoo-devel
Reply | Threaded
Open this post in threaded view
|

Re: Server push

oetiker
In reply to this post by Ian Monroe
Ian,

I did something like this for the smoketrace application

http://oss.oetiker.ch/smokeping/index.en.html

the idea is to request data *before* you need it. The server side
then waits with its answer until the data is ready. As soon as as
the browser receives the answer, qooxdoo sends another request,
which will get blocked on the server until the next answer is ready

The 'problem' with this aproach is that the server gets a lot of
open connections which is not ideal for most webserver
implementations since they are optimized for quickly answering the
clients request and then move on to the next client.

Also if you have multiple open sessions in the browser you may run
into browser specific limits to the number of open connections,
which can be tuned by the user but not by the js application.

I work around these problems by anticipating in the qooxdoo part
when the server should have data for me, so instead of requesting
data immediately, I wait unti the time is about ripe (the
implementation idea of this is not yet ideal if you look at my code).

I think the keyword for the technique is comet.

cheers
tobi



Today Ian Monroe wrote:

> I see on http://qooxdoo.org/community/wishlist that "push" is a wishlist item.
>
> But does anyone have a clever way of doing it regardless?
>
> I thought I would ask before implementing a polling system.
>
> Thanks,
> Ian
>
> -------------------------------------------------------------------------
> This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
> Build the coolest Linux based applications with Moblin SDK & win great prizes
> Grand prize is a trip for two to an Open Source event anywhere in the world
> http://moblin-contest.org/redirect.php?banner_id=100&url=/
> _______________________________________________
> qooxdoo-devel mailing list
> [hidden email]
> https://lists.sourceforge.net/lists/listinfo/qooxdoo-devel
>
>

--
Tobi Oetiker, OETIKER+PARTNER AG, Aarweg 15 CH-4600 Olten, Switzerland
http://it.oetiker.ch [hidden email] ++41 62 775 9902 / sb: -9900

-------------------------------------------------------------------------
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK & win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100&url=/
_______________________________________________
qooxdoo-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/qooxdoo-devel
Reply | Threaded
Open this post in threaded view
|

Re: Server push

Fabian Jakobs
Administrator
In reply to this post by Ian Monroe
Hi Ian,
> I see on http://qooxdoo.org/community/wishlist that "push" is a wishlist item.
>
> But does anyone have a clever way of doing it regardless?
>
> I thought I would ask before implementing a polling system.
>
>
>  
server push is not directly tied to the frontend technologie (qooxdoo in
this case). You should be able to use any existing server push framework
in combination with qooxdoo. There are already a couple of push
libraries for different backend technologies. What kind of server do you
use?

If you are using Java I would suggest taking a closer look at DWR. Try
to google for "Comet" this is how the fancy guys call server push :-)

Best Fabian



--
Fabian Jakobs
JavaScript Framework Developer

1&1 Internet AG
Brauerstra├če 48
76135 Karlsruhe

Amtsgericht Montabaur HRB 6484

Vorstand: Henning Ahlert, Ralph Dommermuth, Matthias Ehrlich, Thomas Gottschlich, Matthias Greve, Robert Hoffmann, Markus Huhn, Oliver Mauss, Achim Weiss
Aufsichtsratsvorsitzender: Michael Scheeren


-------------------------------------------------------------------------
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK & win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100&url=/
_______________________________________________
qooxdoo-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/qooxdoo-devel
Reply | Threaded
Open this post in threaded view
|

Re: Server push

thron7
In reply to this post by Ian Monroe
Also, have a look at the archive:
http://www.nabble.com/Memory-on-remote.Request-in-the-TIMER-to18736919.html#a18770024

I actually *do* think it would be worthwhile to have support for
something like this in qooxdoo. There is a decent amount of client side
management involved if you want to do it right.

Thomas

Ian Monroe wrote:

> I see on http://qooxdoo.org/community/wishlist that "push" is a wishlist item.
>
> But does anyone have a clever way of doing it regardless?
>
> I thought I would ask before implementing a polling system.
>
> Thanks,
> Ian
>
> -------------------------------------------------------------------------
> This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
> Build the coolest Linux based applications with Moblin SDK & win great prizes
> Grand prize is a trip for two to an Open Source event anywhere in the world
> http://moblin-contest.org/redirect.php?banner_id=100&url=/
> _______________________________________________
> qooxdoo-devel mailing list
> [hidden email]
> https://lists.sourceforge.net/lists/listinfo/qooxdoo-devel
>
>
>  


-------------------------------------------------------------------------
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK & win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100&url=/
_______________________________________________
qooxdoo-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/qooxdoo-devel
Reply | Threaded
Open this post in threaded view
|

Re: Server push

Chris Banford
Hi Thomas,

Just curious, with all this talk of server *push*...

With the current state of browsers (limited to 2 connections) and http
servers (built for quick turn-around) wouldn't it just make more sense
to poll the server for messages every x seconds? It seems to me that
this would be almost indistinguishable from real push in most instances
(with a short enough polling time) and would fit better with current tech.

Maybe I'm just having the standard *brain doesn't work so well in the
morning* issue here and not getting it :-)

Cheers,
-Chris

> Also, have a look at the archive:
> http://www.nabble.com/Memory-on-remote.Request-in-the-TIMER-to18736919.html#a18770024
>
> I actually *do* think it would be worthwhile to have support for
> something like this in qooxdoo. There is a decent amount of client side
> management involved if you want to do it right.
>
> Thomas
>
> Ian Monroe wrote:
>  
>> I see on http://qooxdoo.org/community/wishlist that "push" is a wishlist item.
>>
>> But does anyone have a clever way of doing it regardless?
>>
>> I thought I would ask before implementing a polling system.
>>
>> Thanks,
>> Ian
>>
>>
>>    


-------------------------------------------------------------------------
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK & win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100&url=/
_______________________________________________
qooxdoo-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/qooxdoo-devel
Reply | Threaded
Open this post in threaded view
|

Re: Server push

oetiker
Hi Chris,

Today Chris Banford wrote:

> Hi Thomas,
>
> Just curious, with all this talk of server *push*...
>
> With the current state of browsers (limited to 2 connections) and http
> servers (built for quick turn-around) wouldn't it just make more sense
> to poll the server for messages every x seconds? It seems to me that
> this would be almost indistinguishable from real push in most instances
> (with a short enough polling time) and would fit better with current tech.
>
> Maybe I'm just having the standard *brain doesn't work so well in the
> morning* issue here and not getting it :-)
yes for many applications every few seconds is enough, but there
are some that require a more seemingly interactive behaviour ...


cheers
tobi


--
Tobi Oetiker, OETIKER+PARTNER AG, Aarweg 15 CH-4600 Olten, Switzerland
http://it.oetiker.ch [hidden email] ++41 62 775 9902 / sb: -9900
-------------------------------------------------------------------------
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK & win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100&url=/
_______________________________________________
qooxdoo-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/qooxdoo-devel

smime.p7s (3K) Download Attachment
Reply | Threaded
Open this post in threaded view
|

Re: Server push

Fabian Jakobs
Administrator
In reply to this post by Chris Banford
Hi Chris,

> Hi Thomas,
>
> Just curious, with all this talk of server *push*...
>
> With the current state of browsers (limited to 2 connections) and http
> servers (built for quick turn-around) wouldn't it just make more sense
> to poll the server for messages every x seconds? It seems to me that
> this would be almost indistinguishable from real push in most instances
> (with a short enough polling time) and would fit better with current tech.
>
>  
With the proper setup server does have its advantages over polling. You
can work around the two connection limit by using a sub domain for the
communication end point. There are already web/application server, which
have direct support for the server push communication model with many
open HTTP connections. Jetty is one example for this. As alternative you
could use one of the many special purpose HTTP server just for the
server push communication and a classical web server for the rest of the
application.

With all this set up you will have:

1. Less server load as no unneeded requests are sent
2. Less bandwidth consumption
3. Faster response times


Best Fabian



> Maybe I'm just having the standard *brain doesn't work so well in the
> morning* issue here and not getting it :-)
>
> Cheers,
> -Chris
>
>  
>> Also, have a look at the archive:
>> http://www.nabble.com/Memory-on-remote.Request-in-the-TIMER-to18736919.html#a18770024
>>
>> I actually *do* think it would be worthwhile to have support for
>> something like this in qooxdoo. There is a decent amount of client side
>> management involved if you want to do it right.
>>
>> Thomas
>>
>> Ian Monroe wrote:
>>  
>>    
>>> I see on http://qooxdoo.org/community/wishlist that "push" is a wishlist item.
>>>
>>> But does anyone have a clever way of doing it regardless?
>>>
>>> I thought I would ask before implementing a polling system.
>>>
>>> Thanks,
>>> Ian
>>>
>>>
>>>    
>>>      
>
>
> -------------------------------------------------------------------------
> This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
> Build the coolest Linux based applications with Moblin SDK & win great prizes
> Grand prize is a trip for two to an Open Source event anywhere in the world
> http://moblin-contest.org/redirect.php?banner_id=100&url=/
> _______________________________________________
> qooxdoo-devel mailing list
> [hidden email]
> https://lists.sourceforge.net/lists/listinfo/qooxdoo-devel
>
>
>  


--
Fabian Jakobs
JavaScript Framework Developer

1&1 Internet AG
Brauerstra├če 48
76135 Karlsruhe

Amtsgericht Montabaur HRB 6484

Vorstand: Henning Ahlert, Ralph Dommermuth, Matthias Ehrlich, Thomas Gottschlich, Matthias Greve, Robert Hoffmann, Markus Huhn, Oliver Mauss, Achim Weiss
Aufsichtsratsvorsitzender: Michael Scheeren


-------------------------------------------------------------------------
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK & win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100&url=/
_______________________________________________
qooxdoo-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/qooxdoo-devel
Reply | Threaded
Open this post in threaded view
|

Re: Server push

Chris Banford
Hi Fabian,


Just curious, with all this talk of server *push*...

With the current state of browsers (limited to 2 connections) and http 
servers (built for quick turn-around) wouldn't it just make more sense 
to poll the server for messages every x seconds? It seems to me that 
this would be almost indistinguishable from real push in most instances 
(with a short enough polling time) and would fit better with current tech.

  
      
With the proper setup server does have its advantages over polling. You 
can work around the two connection limit by using a sub domain for the 
communication end point. There are already web/application server, which 
have direct support for the server push communication model with many 
open HTTP connections. Jetty is one example for this. As alternative you 
could use one of the many special purpose HTTP server just for the 
server push communication and a classical web server for the rest of the 
application.

With all this set up you will have:

1. Less server load as no unneeded requests are sent
2. Less bandwidth consumption
3. Faster response times


Best Fabian
    

Good explanation of the why/how -- thanks.

Being able to use a sub domain like you've described would help to make this more feasible for current apps. It sounds like there's interest in this *Comet* concept -- would be nice to soon see it become an option that is supported natively by servers...

Cheers,
-Chris



    
Maybe I'm just having the standard *brain doesn't work so well in the 
morning* issue here and not getting it :-)

Cheers,
-Chris

  
      
Also, have a look at the archive:
http://www.nabble.com/Memory-on-remote.Request-in-the-TIMER-to18736919.html#a18770024

I actually *do* think it would be worthwhile to have support for 
something like this in qooxdoo. There is a decent amount of client side 
management involved if you want to do it right.

Thomas

Ian Monroe wrote:
  
    
        
I see on http://qooxdoo.org/community/wishlist that "push" is a wishlist item.

But does anyone have a clever way of doing it regardless?

I thought I would ask before implementing a polling system.

Thanks,
Ian

          
    



-------------------------------------------------------------------------
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK & win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100&url=/
_______________________________________________
qooxdoo-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/qooxdoo-devel
Reply | Threaded
Open this post in threaded view
|

Hello World -- can't find "create-application.py" in qooxdoo-0.8-beta1-sdk

Chris Banford
Hi devs,

One step further with the Hello World documentation, and stuck again! :-) .

The docs say:
To create your application custom to C:, while the qooxdoo SDK is available at C:\qooxdoo-0.8-sdk, call the script as follows:
and run:
C:\qooxdoo-0.8-sdk\tool\bin\create-application.py --name=custom --out=C:

There's no such path, or even file "create-application.py" in the qooxdoo-0.8-beta1-sdk that I downloaded last night.

Has something changed with the beta release?

-Chris



-------------------------------------------------------------------------
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK & win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100&url=/
_______________________________________________
qooxdoo-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/qooxdoo-devel
Reply | Threaded
Open this post in threaded view
|

Re: Hello World -- can't find "create-application.py" in qooxdoo-0.8-beta1-sdk

Sebastian Werner
Chris Banford schrieb:

> Hi devs,
>
> One step further with the Hello World documentation, and stuck again! :-) .
>
> The docs say:
>> To create your application |custom| to |C:|, while the qooxdoo SDK is
>> available at |C:\qooxdoo-0.8-sdk|, call the script as follows:
> and run:
>> C:\qooxdoo-0.8-sdk\tool\bin\create-application.py --name=custom --out=C:
>
> There's no such path, or even file "create-application.py" in the
> qooxdoo-0.8-beta1-sdk that I downloaded last night.

If I remember correctly the tool is not yet part of the beta1. We will
release a RC1 this week so you have to wait for this version or trying
to use a SVN snapshot.

Sebastian

>
> Has something changed with the beta release?
>
> -Chris
>
>
>
> ------------------------------------------------------------------------
>
> -------------------------------------------------------------------------
> This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
> Build the coolest Linux based applications with Moblin SDK & win great prizes
> Grand prize is a trip for two to an Open Source event anywhere in the world
> http://moblin-contest.org/redirect.php?banner_id=100&url=/
>
>
> ------------------------------------------------------------------------
>
> _______________________________________________
> qooxdoo-devel mailing list
> [hidden email]
> https://lists.sourceforge.net/lists/listinfo/qooxdoo-devel


-------------------------------------------------------------------------
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK & win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100&url=/
_______________________________________________
qooxdoo-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/qooxdoo-devel
Reply | Threaded
Open this post in threaded view
|

Re: Hello World -- can't find "create-application.py" in qooxdoo-0.8-beta1-sdk

Chris Banford
Sebastian Werner wrote:
Chris Banford schrieb:
  
Hi devs,

One step further with the Hello World documentation, and stuck again! :-) .

The docs say:
    
To create your application |custom| to |C:|, while the qooxdoo SDK is 
available at |C:\qooxdoo-0.8-sdk|, call the script as follows: 
      
and run:
    
C:\qooxdoo-0.8-sdk\tool\bin\create-application.py --name=custom --out=C:
      
There's no such path, or even file "create-application.py" in the 
qooxdoo-0.8-beta1-sdk that I downloaded last night.
    

If I remember correctly the tool is not yet part of the beta1. We will 
release a RC1 this week so you have to wait for this version or trying 
to use a SVN snapshot.

Sebastian
  
Ok -- it had the look of something that wasn't quite there yet :-) .

I'd love to get the SVN working, but not having any experience with it, combined with the current state of the qooxdoo docs on that area, will have me waiting for the RC1 release... (unless someone feels like hand-holding me through getting SVN set up and working on XP -- I'd have a go at improving the docs on SVN for other noobs like me).

Cheers,
-Chris











-------------------------------------------------------------------------
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK & win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100&url=/
_______________________________________________
qooxdoo-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/qooxdoo-devel
Reply | Threaded
Open this post in threaded view
|

Re: Hello World -- can't find "create-application.py" in qooxdoo-0.8-beta1-sdk

Sebastian Werner
Chris Banford schrieb:

> Sebastian Werner wrote:
>> Chris Banford schrieb:
>>  
>>> Hi devs,
>>>
>>> One step further with the Hello World documentation, and stuck again! :-) .
>>>
>>> The docs say:
>>>    
>>>> To create your application |custom| to |C:|, while the qooxdoo SDK is
>>>> available at |C:\qooxdoo-0.8-sdk|, call the script as follows:
>>>>      
>>> and run:
>>>    
>>>> C:\qooxdoo-0.8-sdk\tool\bin\create-application.py --name=custom --out=C:
>>>>      
>>> There's no such path, or even file "create-application.py" in the
>>> qooxdoo-0.8-beta1-sdk that I downloaded last night.
>>>    
>>
>> If I remember correctly the tool is not yet part of the beta1. We will
>> release a RC1 this week so you have to wait for this version or trying
>> to use a SVN snapshot.
>>
>> Sebastian
>>  
> Ok -- it had the look of something that wasn't quite there yet :-) .
>
> I'd love to get the SVN working, but not having any experience with it,
> combined with the current state of the qooxdoo docs on that area, will
> have me waiting for the RC1 release... (unless someone feels like
> hand-holding me through getting SVN set up and working on XP -- I'd have
> a go at improving the docs on SVN for other noobs like me).

Early feedback is always helpful :)

Ever tried TortoiseSVN? It is quite easy to work with SVN with this tool.

http://tortoisesvn.tigris.org/

Cheers,

Sebastian


>
> Cheers,
> -Chris
>
>
>
>
>
>
>
>
>
>
>
> ------------------------------------------------------------------------
>
> -------------------------------------------------------------------------
> This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
> Build the coolest Linux based applications with Moblin SDK & win great prizes
> Grand prize is a trip for two to an Open Source event anywhere in the world
> http://moblin-contest.org/redirect.php?banner_id=100&url=/
>
>
> ------------------------------------------------------------------------
>
> _______________________________________________
> qooxdoo-devel mailing list
> [hidden email]
> https://lists.sourceforge.net/lists/listinfo/qooxdoo-devel


-------------------------------------------------------------------------
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK & win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100&url=/
_______________________________________________
qooxdoo-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/qooxdoo-devel
Reply | Threaded
Open this post in threaded view
|

Re: Hello World -- can't find "create-application.py" in qooxdoo-0.8-beta1-sdk

Chris Banford

Hi devs,

One step further with the Hello World documentation, and stuck again! :-) .

The docs say:
    
        
To create your application |custom| to |C:|, while the qooxdoo SDK is 
available at |C:\qooxdoo-0.8-sdk|, call the script as follows: 
      
          
and run:
    
        
C:\qooxdoo-0.8-sdk\tool\bin\create-application.py --name=custom --out=C:
      
          
There's no such path, or even file "create-application.py" in the 
qooxdoo-0.8-beta1-sdk that I downloaded last night.
    
        
If I remember correctly the tool is not yet part of the beta1. We will 
release a RC1 this week so you have to wait for this version or trying 
to use a SVN snapshot.

Sebastian
  
      
Ok -- it had the look of something that wasn't quite there yet :-) .

I'd love to get the SVN working, but not having any experience with it, 
combined with the current state of the qooxdoo docs on that area, will 
have me waiting for the RC1 release... (unless someone feels like 
hand-holding me through getting SVN set up and working on XP -- I'd have 
a go at improving the docs on SVN for other noobs like me).
    

Early feedback is always helpful :)

Ever tried TortoiseSVN? It is quite easy to work with SVN with this tool.

http://tortoisesvn.tigris.org/

Cheers,

Sebastian
  

I downloaded it last night when I saw that there was a bunch of new documentation related to the 0.8 release. Installing and getting TortoiseSVN is simple, but I quickly lost my way at the following in the *Checking out from SVN* page:

Subversion details

The following configuration settings are used to access the Subversion repository:

  • Hostname: qooxdoo.svn.sourceforge.net
  • Port: 443
    ...

I guess each SVN client is going to require a different set up using these (and following) details.

Ideally, there should be a *SVN How To* for each operating system, assuming that the reader has no SVN experience -- this would pave the way for a lot more people, who find the qooxdoo approach interesting, to clear this hurdle and become hooked on your stuff.

Cheers,
-Chris









-------------------------------------------------------------------------
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK & win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100&url=/
_______________________________________________
qooxdoo-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/qooxdoo-devel
Reply | Threaded
Open this post in threaded view
|

Re: Server push

panyasan
In reply to this post by Chris Banford

The qcl library in qooxdoo-contrib has a server pull implemented that works
with the json-rpc mechanism. if you want to use it:

1) Add this to your makefile
APPLICATION_INCLUDES += contrib://qcl/trunk/frontend

2) "make source" to download code

3) use the needed class in your code like so:

      /*
       * use data manager mixin
       */
      qx.Class.include(qx.core.Target,qcl.databinding.simple.MDataManager);      

     /*
       * setup message transport from the server to the client by pinging
the server every
       * six seconds as long as user is logged in
       */
      var ping = new qcl.databinding.simple.MessageTransport("*","poll");
      ping.setInterval(6000);
      ping.setTimeout(200000);
      ping.setEnabled(false);
      ping.setServiceName("yourApplication");
      ping.setServiceMethod("getMessages");

now, in your jsonrpc response, you need to supply the messages:

{
  "result":
  {
    "result":[ ... data ... ],
    "messages":[{"name":"some-server-message","data":{ foo : "foo", bar :
"bar" } }]
  },
  "id":978
}

on the client side, you can listen for specific server messages. For
example;

     
qx.event.message.Bus.subscribe("some-server-message",function(message){
         var data = message.getData();
         var foo = data.foo;
         var bar = data.bar;
         ... do stuff ...
      });


or listen for all messages. For example;

      qx.event.message.Bus.subscribe("*",function(message){
         var data = message.getData();
         var name = message.getName();
         switch (name)
        {
         ... do stuff ...
      });

4) "make source" again to recompile including the new classes.

The advantage of this system is that *any* rpc request can be used to
"piggy-back" messages, not only the polling requests. On the server, I have
a "broadcast" system in place which stores messages centrally and dispatches
them to all connected clients.

It is a still a very simple system but works fine in practice.

Cheers,

Christian


Chris Banford-4 wrote:

>
> Hi Fabian,
>
>>>>
>>>> Just curious, with all this talk of server *push*...
>>>>
>>>> With the current state of browsers (limited to 2 connections) and http
>>>> servers (built for quick turn-around) wouldn't it just make more sense
>>>> to poll the server for messages every x seconds? It seems to me that
>>>> this would be almost indistinguishable from real push in most instances
>>>> (with a short enough polling time) and would fit better with current
>>>> tech.
>>>>
>>>>  
>>>>      
>>> With the proper setup server does have its advantages over polling. You
>>> can work around the two connection limit by using a sub domain for the
>>> communication end point. There are already web/application server, which
>>> have direct support for the server push communication model with many
>>> open HTTP connections. Jetty is one example for this. As alternative you
>>> could use one of the many special purpose HTTP server just for the
>>> server push communication and a classical web server for the rest of the
>>> application.
>>>
>>> With all this set up you will have:
>>>
>>> 1. Less server load as no unneeded requests are sent
>>> 2. Less bandwidth consumption
>>> 3. Faster response times
>>>
>>>
>>> Best Fabian
>>>    
>
> Good explanation of the why/how -- thanks.
>
> Being able to use a sub domain like you've described would help to make
> this more feasible for current apps. It sounds like there's interest in
> this *Comet* concept -- would be nice to soon see it become an option
> that is supported natively by servers...
>
> Cheers,
> -Chris
>
>
>
>>>    
>>>> Maybe I'm just having the standard *brain doesn't work so well in the
>>>> morning* issue here and not getting it :-)
>>>>
>>>> Cheers,
>>>> -Chris
>>>>
>>>>  
>>>>      
>>>>> Also, have a look at the archive:
>>>>> http://www.nabble.com/Memory-on-remote.Request-in-the-TIMER-to18736919.html#a18770024
>>>>>
>>>>> I actually *do* think it would be worthwhile to have support for
>>>>> something like this in qooxdoo. There is a decent amount of client
>>>>> side
>>>>> management involved if you want to do it right.
>>>>>
>>>>> Thomas
>>>>>
>>>>> Ian Monroe wrote:
>>>>>  
>>>>>    
>>>>>        
>>>>>> I see on http://qooxdoo.org/community/wishlist that "push" is a
>>>>>> wishlist item.
>>>>>>
>>>>>> But does anyone have a clever way of doing it regardless?
>>>>>>
>>>>>> I thought I would ask before implementing a polling system.
>>>>>>
>>>>>> Thanks,
>>>>>> Ian
>>>>>>
>>>>>>          
>>>    
>>
>
>
> -------------------------------------------------------------------------
> This SF.Net email is sponsored by the Moblin Your Move Developer's
> challenge
> Build the coolest Linux based applications with Moblin SDK & win great
> prizes
> Grand prize is a trip for two to an Open Source event anywhere in the
> world
> http://moblin-contest.org/redirect.php?banner_id=100&url=/
> _______________________________________________
> qooxdoo-devel mailing list
> [hidden email]
> https://lists.sourceforge.net/lists/listinfo/qooxdoo-devel
>
>

--
View this message in context: http://www.nabble.com/Server-push-tp18964490p19029712.html
Sent from the qooxdoo-devel mailing list archive at Nabble.com.


-------------------------------------------------------------------------
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK & win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100&url=/
_______________________________________________
qooxdoo-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/qooxdoo-devel
Reply | Threaded
Open this post in threaded view
|

Re: Hello World -- can't find "create-application.py" in qooxdoo-0.8-beta1-sdk

thron7
In reply to this post by Chris Banford

>
> I downloaded it last night when I saw that there was a bunch of new
> documentation related to the 0.8 release. Installing and getting
> TortoiseSVN is simple, but I quickly lost my way at the following in
> the *Checking out from SVN* page:
>
>>
>>     Subversion details
>>
>> The following configuration settings are used to access the
>> Subversion repository:
>>
>>    *
>>       Hostname: |qooxdoo.svn.sourceforge.net|
>>    *
>>       Port: |443
>>       ...
>>       |
>>
>
> I guess each SVN client is going to require a different set up using
> these (and following) details.
>
> Ideally, there should be a *SVN How To* for each operating system,
> assuming that the reader has no SVN experience -- this would pave the
> way for a lot more people, who find the qooxdoo approach interesting,
> to clear this hurdle and become hooked on your stuff.

You're right, our wiki page tries to cover a lot of ground... But it's
usually simple. If you have TortoiseSVN installed, all that you should
need to do is adding a local repository with a remote URL of
https://qooxdoo.svn.sourceforge.net/svnroot/qooxdoo/trunk/qooxdoo - and
you're all set to work with the qooxdoo trunk :).

=Thomas

-------------------------------------------------------------------------
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK & win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100&url=/
_______________________________________________
qooxdoo-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/qooxdoo-devel
Reply | Threaded
Open this post in threaded view
|

Re: Hello World -- can't find "create-application.py" in qooxdoo-0.8-beta1-sdk

thron7

> https://qooxdoo.svn.sourceforge.net/svnroot/qooxdoo/trunk/qooxdoo - and
>  

For read-only access you can even use the same URL with 'http' scheme -
might be faster ;).

T.


-------------------------------------------------------------------------
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK & win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100&url=/
_______________________________________________
qooxdoo-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/qooxdoo-devel
Reply | Threaded
Open this post in threaded view
|

Re: Hello World -- can't find "create-application.py" in qooxdoo-0.8-beta1-sdk

Chris Banford
In reply to this post by thron7
thron7 wrote:
I downloaded it last night when I saw that there was a bunch of new 
documentation related to the 0.8 release. Installing and getting 
TortoiseSVN is simple, but I quickly lost my way at the following in 
the *Checking out from SVN* page:

    
    Subversion details

The following configuration settings are used to access the 
Subversion repository:

   *
      Hostname: |qooxdoo.svn.sourceforge.net|
   *
      Port: |443
      ...
      |

      
I guess each SVN client is going to require a different set up using 
these (and following) details.

Ideally, there should be a *SVN How To* for each operating system, 
assuming that the reader has no SVN experience -- this would pave the 
way for a lot more people, who find the qooxdoo approach interesting, 
to clear this hurdle and become hooked on your stuff.
    

You're right, our wiki page tries to cover a lot of ground... But it's 
usually simple. If you have TortoiseSVN installed, all that you should 
need to do is adding a local repository with a remote URL of 
https://qooxdoo.svn.sourceforge.net/svnroot/qooxdoo/trunk/qooxdoo - and 
you're all set to work with the qooxdoo trunk :).

=Thomas
  
Hi Thomas,

Thanks for that -- I'd actually come quite close by guessing (I'd used: https:///qooxdoo.svn.sourceforge.net/svnroot/qooxdoo). I'll take a look at adding that piece of info to the wiki.

Cheers,
-Chris










-------------------------------------------------------------------------
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK & win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100&url=/
_______________________________________________
qooxdoo-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/qooxdoo-devel
Reply | Threaded
Open this post in threaded view
|

Re: Hello World -- can't find "create-application.py" in qooxdoo-0.8-beta1-sdk

oetiker
I just tested the create-application.py with my sn checkout and it
wors fine, except for two nitpicks.

a) the generate.py that gets created is missing the execute bits

b) the cakes icon on the "First Button" seems to be truncated on
   the right edge. It is the icon test.png which looks to me as if
   it was missing a pixel or two on the right edge ... (it is the
   actual icon which is like that, but I first thought qooxdoo was
   doing something to it.)

cheers
tobi

Today Chris Banford wrote:

> thron7 wrote:
> > > I downloaded it last night when I saw that there was a bunch of new
> > > documentation related to the 0.8 release. Installing and getting
> > > TortoiseSVN is simple, but I quickly lost my way at the following in the
> > > *Checking out from SVN* page:
> > >
> > >
> > > >     Subversion details
> > > >
> > > > The following configuration settings are used to access the Subversion
> > > > repository:
> > > >
> > > >    *
> > > >       Hostname: |qooxdoo.svn.sourceforge.net|
> > > >    *
> > > >       Port: |443
> > > >       ...
> > > >       |
> > > >
> > > >
> > > I guess each SVN client is going to require a different set up using these
> > > (and following) details.
> > >
> > > Ideally, there should be a *SVN How To* for each operating system,
> > > assuming that the reader has no SVN experience -- this would pave the way
> > > for a lot more people, who find the qooxdoo approach interesting, to clear
> > > this hurdle and become hooked on your stuff.
> > >
> >
> > You're right, our wiki page tries to cover a lot of ground... But it's
> > usually simple. If you have TortoiseSVN installed, all that you should need
> > to do is adding a local repository with a remote URL of
> > https://qooxdoo.svn.sourceforge.net/svnroot/qooxdoo/trunk/qooxdoo - and
> > you're all set to work with the qooxdoo trunk :).
> >
> > =Thomas
> >
> Hi Thomas,
>
> Thanks for that -- I'd actually come quite close by guessing (I'd used:
> https:///qooxdoo.svn.sourceforge.net/svnroot/qooxdoo). I'll take a look at
> adding that piece of info to the wiki.
>
> Cheers,
> -Chris
>
>
>
>
>
>
>
>
>
>

--
Tobi Oetiker, OETIKER+PARTNER AG, Aarweg 15 CH-4600 Olten, Switzerland
http://it.oetiker.ch [hidden email] ++41 62 775 9902 / sb: -9900

-------------------------------------------------------------------------
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK & win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100&url=/
_______________________________________________
qooxdoo-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/qooxdoo-devel
Reply | Threaded
Open this post in threaded view
|

Re: Hello World -- can't find "create-application.py" in qooxdoo-0.8-beta1-sdk

Chris Banford
In reply to this post by thron7
Thanks for the hand-holding!
I've managed to get SVN access and create-application.py building a custom starting point :-) . It took me a few minutes to realize that running the
C:\qooxdoo-0.8-sdk\tool\bin\create-application.py --name=custom --out=C:
  
command was failing due to there being spaces and other crud in the path to my qooxdoo-0.8-sdk folder.

Am looking forward to actually being able to play with some code! (tonight, after work's finished)

I've added some things to the http://qooxdoo.org/documentation/0.8/helloworld wiki page, so hopefully the next person to go through this on Windows won't have to ask for as much help from the list...

Cheers,
-Chris


I downloaded it last night when I saw that there was a bunch of new 
documentation related to the 0.8 release. Installing and getting 
TortoiseSVN is simple, but I quickly lost my way at the following in 
the *Checking out from SVN* page:

    
    Subversion details

The following configuration settings are used to access the 
Subversion repository:

   *
      Hostname: |qooxdoo.svn.sourceforge.net|
   *
      Port: |443
      ...
      |

      
I guess each SVN client is going to require a different set up using 
these (and following) details.

Ideally, there should be a *SVN How To* for each operating system, 
assuming that the reader has no SVN experience -- this would pave the 
way for a lot more people, who find the qooxdoo approach interesting, 
to clear this hurdle and become hooked on your stuff.
    

You're right, our wiki page tries to cover a lot of ground... But it's 
usually simple. If you have TortoiseSVN installed, all that you should 
need to do is adding a local repository with a remote URL of 
https://qooxdoo.svn.sourceforge.net/svnroot/qooxdoo/trunk/qooxdoo - and 
you're all set to work with the qooxdoo trunk :).

=Thomas
  


-------------------------------------------------------------------------
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK & win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100&url=/
_______________________________________________
qooxdoo-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/qooxdoo-devel
12