Re: [Lift] Lift on Atmosphere
Akka has excellent Atmosphere support. Akka can be used with Lift. http://doc.akkasource.org/comet 2010/1/6 paksegu paks...@gmail.com: Hello World. I am a Lift beginner and I would like to know if anyone has successfully succeeded in running Lift on Atmosphere: https://atmosphere.dev.java.net thanks. -- You received this message because you are subscribed to the Google Groups Lift group. To post to this group, send email to lift...@googlegroups.com. To unsubscribe from this group, send email to liftweb+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/liftweb?hl=en. -- Jonas Bonér twitter: @jboner blog:http://jonasboner.com work: http://scalablesolutions.se code: http://github.com/jboner code: http://akkasource.org also:http://letitcrash.com -- You received this message because you are subscribed to the Google Groups Lift group. To post to this group, send email to lift...@googlegroups.com. To unsubscribe from this group, send email to liftweb+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/liftweb?hl=en.
Re: [Lift] Lift on Atmosphere
paksegu, Lift does have better comet support than Atmosphere, but it depends what your use case is and what you specifically want to do. If you chose to run lift with atmosphere you'd essentially be loosing out on some of lift's best features. As jonas says, Akka does indeed use Atmosphere to good effect, but its a different tool, for a different job IMHO (although you can run them in tandem if your use case dictates that need). So, lets try to add some clarity here by ascertaining what exactly you want to do... before this turns into a my comet is better than your comet flame war ;-) Cheers, Tim On 6 Jan 2010, at 11:29, Jonas Bonér wrote: Akka has excellent Atmosphere support. Akka can be used with Lift. http://doc.akkasource.org/comet 2010/1/6 paksegu paks...@gmail.com: Hello World. I am a Lift beginner and I would like to know if anyone has successfully succeeded in running Lift on Atmosphere: https://atmosphere.dev.java.net thanks. -- You received this message because you are subscribed to the Google Groups Lift group. To post to this group, send email to lift...@googlegroups.com. To unsubscribe from this group, send email to liftweb+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/liftweb?hl=en. -- Jonas Bonér twitter: @jboner blog:http://jonasboner.com work: http://scalablesolutions.se code: http://github.com/jboner code: http://akkasource.org also:http://letitcrash.com -- You received this message because you are subscribed to the Google Groups Lift group. To post to this group, send email to lift...@googlegroups.com. To unsubscribe from this group, send email to liftweb+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/liftweb?hl=en. -- You received this message because you are subscribed to the Google Groups Lift group. To post to this group, send email to lift...@googlegroups.com. To unsubscribe from this group, send email to liftweb+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/liftweb?hl=en.
Re: [Lift] Lift on Atmosphere
On Jan 6, 2010, at 12:49 PM, Timothy Perrett wrote: paksegu, Lift does have better comet support than Atmosphere, but it depends what your use case is and what you specifically want to do. If you chose to run lift with atmosphere you'd essentially be loosing out on some of lift's best features. As jonas says, Akka does indeed use Atmosphere to good effect, but its a different tool, for a different job IMHO (although you can run them in tandem if your use case dictates that need). So, lets try to add some clarity here by ascertaining what exactly you want to do... before this turns into a my comet is better than your comet flame war ;-) How does Lift achieve portability across the various Comet APIs supported by Web/App servers? Would i be right in assuming that currently only Jetty is supported? [*] If so the Atmosphere Comet Portable Runtime may be of benefit. Paul. [*] I had a quick look at the lift source and specifically looked at net.liftweb.http.provider.servlet.HTTPRequestServlet. Cheers, Tim On 6 Jan 2010, at 11:29, Jonas Bonér wrote: Akka has excellent Atmosphere support. Akka can be used with Lift. http://doc.akkasource.org/comet 2010/1/6 paksegu paks...@gmail.com: Hello World. I am a Lift beginner and I would like to know if anyone has successfully succeeded in running Lift on Atmosphere: https://atmosphere.dev.java.net thanks. -- You received this message because you are subscribed to the Google Groups Lift group. To post to this group, send email to lift...@googlegroups.com. To unsubscribe from this group, send email to liftweb+unsubscr...@googlegroups.com . For more options, visit this group at http://groups.google.com/group/liftweb?hl=en . -- Jonas Bonér twitter: @jboner blog:http://jonasboner.com work: http://scalablesolutions.se code: http://github.com/jboner code: http://akkasource.org also:http://letitcrash.com -- You received this message because you are subscribed to the Google Groups Lift group. To post to this group, send email to lift...@googlegroups.com. To unsubscribe from this group, send email to liftweb+unsubscr...@googlegroups.com . For more options, visit this group at http://groups.google.com/group/liftweb?hl=en . -- You received this message because you are subscribed to the Google Groups Lift group. To post to this group, send email to lift...@googlegroups.com. To unsubscribe from this group, send email to liftweb+unsubscr...@googlegroups.com . For more options, visit this group at http://groups.google.com/group/liftweb?hl=en . -- You received this message because you are subscribed to the Google Groups Lift group. To post to this group, send email to lift...@googlegroups.com. To unsubscribe from this group, send email to liftweb+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/liftweb?hl=en.
Re: [Lift] Lift on Atmosphere
Yes, if you constantly change containers, then there is value in Atmosphere for that as it does leverage the native APIs for the container. We [lift] are waiting for servlet 3.0 to standardise the comet API - whilst its debatable if that will prove as an api standardisation solution, it should level the playing field somewhat - right now the different containers are all doing different things in different ways. Essentially lift uses special classes within Jetty (the continuation API) to make comet scalable... there is nothing stopping comet working in other containers with lift, the only restriction is that it does not use the native container API so it's essentially thread based - to that end, if you have a lot of connections things could get sticky. Lift has things that Atmosphere does not have (yet) like the multiplex support, and object delta'ing... perhaps other comet frameworks will get this in the future, but right now, using Jetty is not a deal breaker for most of our users. I guess its only really an issue if you have a heavy investment in something that is not jetty. However, I would stress that lift is an excellent framework even if your not using comet and that would of course deploy without any issues in any container. I actually had a discussion with Jean-Francois at Devoxx this year about Atmosphere and Lift ;-) Cheers, Tim On 6 Jan 2010, at 12:40, Paul Sandoz wrote: On Jan 6, 2010, at 12:49 PM, Timothy Perrett wrote: paksegu, Lift does have better comet support than Atmosphere, but it depends what your use case is and what you specifically want to do. If you chose to run lift with atmosphere you'd essentially be loosing out on some of lift's best features. As jonas says, Akka does indeed use Atmosphere to good effect, but its a different tool, for a different job IMHO (although you can run them in tandem if your use case dictates that need). So, lets try to add some clarity here by ascertaining what exactly you want to do... before this turns into a my comet is better than your comet flame war ;-) How does Lift achieve portability across the various Comet APIs supported by Web/App servers? Would i be right in assuming that currently only Jetty is supported? [*] If so the Atmosphere Comet Portable Runtime may be of benefit. Paul. [*] I had a quick look at the lift source and specifically looked at net.liftweb.http.provider.servlet.HTTPRequestServlet. Cheers, Tim On 6 Jan 2010, at 11:29, Jonas Bonér wrote: Akka has excellent Atmosphere support. Akka can be used with Lift. http://doc.akkasource.org/comet 2010/1/6 paksegu paks...@gmail.com: Hello World. I am a Lift beginner and I would like to know if anyone has successfully succeeded in running Lift on Atmosphere: https://atmosphere.dev.java.net thanks. -- You received this message because you are subscribed to the Google Groups Lift group. To post to this group, send email to lift...@googlegroups.com. To unsubscribe from this group, send email to liftweb+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/liftweb?hl=en. -- Jonas Bonér twitter: @jboner blog:http://jonasboner.com work: http://scalablesolutions.se code: http://github.com/jboner code: http://akkasource.org also:http://letitcrash.com -- You received this message because you are subscribed to the Google Groups Lift group. To post to this group, send email to lift...@googlegroups.com. To unsubscribe from this group, send email to liftweb+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/liftweb?hl=en. -- You received this message because you are subscribed to the Google Groups Lift group. To post to this group, send email to lift...@googlegroups.com. To unsubscribe from this group, send email to liftweb+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/liftweb?hl=en. -- You received this message because you are subscribed to the Google Groups Lift group. To post to this group, send email to lift...@googlegroups.com. To unsubscribe from this group, send email to liftweb+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/liftweb?hl=en. -- You received this message because you are subscribed to the Google Groups Lift group. To post to this group, send email to lift...@googlegroups.com. To unsubscribe from this group, send email to liftweb+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/liftweb?hl=en.
Re: [Lift] Lift on Atmosphere
On Wed, Jan 6, 2010 at 5:23 AM, Timothy Perrett timo...@getintheloop.euwrote: Yes, if you constantly change containers, then there is value in Atmosphere for that as it does leverage the native APIs for the container. We [lift] are waiting for servlet 3.0 to standardise the comet API - whilst its debatable if that will prove as an api standardisation solution, it should level the playing field somewhat - right now the different containers are all doing different things in different ways. Marius is actively working on an abstraction of the thread dropping so that other containers that use different APIs can be plugged into Lift (or vice versa) because the Servlet 3.0 spec is taking forever. Essentially lift uses special classes within Jetty (the continuation API) to make comet scalable... there is nothing stopping comet working in other containers with lift, the only restriction is that it does not use the native container API so it's essentially thread based - to that end, if you have a lot of connections things could get sticky. Lift has things that Atmosphere does not have (yet) like the multiplex support, and object delta'ing... perhaps other comet frameworks will get this in the future, but right now, using Jetty is not a deal breaker for most of our users. I guess its only really an issue if you have a heavy investment in something that is not jetty. However, I would stress that lift is an excellent framework even if your not using comet and that would of course deploy without any issues in any container. As Tim points out, Lift has a number of advantages in its Comet support: - Multiplexing -- you can have many Comet components on a given page and they all talk over a single long poll. You can see this at http://demo.liftweb.com. Both the clock and the chat component are Comet. Neither piece of code was special or required knowledge of the other. - Connection saturation detection -- Lift will avoid connection saturation by only allowing a single long poll to be active at once. If a second connection (this is tunable and it's on my to-do list to make it browser tunable as Chrome has more than 2 connections per server) is opened from the browser, Lift will automatically terminate the long poll. - DNS wildcard support -- To avoid the connection saturation issue, you can have the long poll done on a DNS wildcarded server and tune the long poll connection termination logic. This allows many different browser tabs to have open long polls. The server name is automatically changed on each page reload and the actual client-side and server-side components are unchanged (that means the app developer doesn't have to worry about this part of the plumbing.) I actually had a discussion with Jean-Francois at Devoxx this year about Atmosphere and Lift ;-) Cheers, Tim On 6 Jan 2010, at 12:40, Paul Sandoz wrote: On Jan 6, 2010, at 12:49 PM, Timothy Perrett wrote: paksegu, Lift does have better comet support than Atmosphere, but it depends what your use case is and what you specifically want to do. If you chose to run lift with atmosphere you'd essentially be loosing out on some of lift's best features. As jonas says, Akka does indeed use Atmosphere to good effect, but its a different tool, for a different job IMHO (although you can run them in tandem if your use case dictates that need). So, lets try to add some clarity here by ascertaining what exactly you want to do... before this turns into a my comet is better than your comet flame war ;-) How does Lift achieve portability across the various Comet APIs supported by Web/App servers? Would i be right in assuming that currently only Jetty is supported? [*] If so the Atmosphere Comet Portable Runtime may be of benefit. Paul. [*] I had a quick look at the lift source and specifically looked at net.liftweb.http.provider.servlet.HTTPRequestServlet. Cheers, Tim On 6 Jan 2010, at 11:29, Jonas Bonér wrote: Akka has excellent Atmosphere support. Akka can be used with Lift. http://doc.akkasource.org/comet 2010/1/6 paksegu paks...@gmail.com: Hello World. I am a Lift beginner and I would like to know if anyone has successfully succeeded in running Lift on Atmosphere: https://atmosphere.dev.java.net thanks. -- You received this message because you are subscribed to the Google Groups Lift group. To post to this group, send email to lift...@googlegroups.com. To unsubscribe from this group, send email to liftweb+unsubscr...@googlegroups.comliftweb%2bunsubscr...@googlegroups.com . For more options, visit this group at http://groups.google.com/group/liftweb?hl=en. -- Jonas Bonér twitter: @jboner blog:http://jonasboner.com work: http://scalablesolutions.se code: http://github.com/jboner code: http://akkasource.org also:http://letitcrash.com -- You
Re: [Lift] Lift on Atmosphere
On Jan 6, 2010, at 3:22 PM, David Pollak wrote: On Wed, Jan 6, 2010 at 5:23 AM, Timothy Perrett timo...@getintheloop.eu wrote: Yes, if you constantly change containers, then there is value in Atmosphere for that as it does leverage the native APIs for the container. We [lift] are waiting for servlet 3.0 to standardise the comet API - whilst its debatable if that will prove as an api standardisation solution, it should level the playing field somewhat - right now the different containers are all doing different things in different ways. Marius is actively working on an abstraction of the thread dropping so that other containers that use different APIs can be plugged into Lift (or vice versa) because the Servlet 3.0 spec is taking forever. OK. Servlet 3.0 spec is now finalized, meaning there is at least one implementation (in GlassFish v3) but i guess it may take time for others to arrive. Are the async features of Servlet 3.0 sufficient for lift's requirements? Essentially lift uses special classes within Jetty (the continuation API) to make comet scalable... there is nothing stopping comet working in other containers with lift, the only restriction is that it does not use the native container API so it's essentially thread based - to that end, if you have a lot of connections things could get sticky. Lift has things that Atmosphere does not have (yet) like the multiplex support, and object delta'ing... perhaps other comet frameworks will get this in the future, but right now, using Jetty is not a deal breaker for most of our users. I guess its only really an issue if you have a heavy investment in something that is not jetty. However, I would stress that lift is an excellent framework even if your not using comet and that would of course deploy without any issues in any container. As Tim points out, Lift has a number of advantages in its Comet support: Multiplexing -- you can have many Comet components on a given page and they all talk over a single long poll. You can see this at http://demo.liftweb.com . Both the clock and the chat component are Comet. Neither piece of code was special or required knowledge of the other. Connection saturation detection -- Lift will avoid connection saturation by only allowing a single long poll to be active at once. If a second connection (this is tunable and it's on my to-do list to make it browser tunable as Chrome has more than 2 connections per server) is opened from the browser, Lift will automatically terminate the long poll. DNS wildcard support -- To avoid the connection saturation issue, you can have the long poll done on a DNS wildcarded server and tune the long poll connection termination logic. This allows many different browser tabs to have open long polls. The server name is automatically changed on each page reload and the actual client-side and server-side components are unchanged (that means the app developer doesn't have to worry about this part of the plumbing.) I am not suggesting Atmosphere can or should be utilized as a replacement for the useful features you enumerate. I think the area where Atmosphere can provide value to lift is scalable async support for many Web/App servers. Paul. -- You received this message because you are subscribed to the Google Groups "Lift" group. To post to this group, send email to lift...@googlegroups.com. To unsubscribe from this group, send email to liftweb+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/liftweb?hl=en.
Re: [Lift] Lift on Atmosphere
On Wed, Jan 6, 2010 at 7:17 AM, Paul Sandoz paul.san...@sun.com wrote: On Jan 6, 2010, at 3:22 PM, David Pollak wrote: On Wed, Jan 6, 2010 at 5:23 AM, Timothy Perrett timo...@getintheloop.euwrote: Yes, if you constantly change containers, then there is value in Atmosphere for that as it does leverage the native APIs for the container. We [lift] are waiting for servlet 3.0 to standardise the comet API - whilst its debatable if that will prove as an api standardisation solution, it should level the playing field somewhat - right now the different containers are all doing different things in different ways. Marius is actively working on an abstraction of the thread dropping so that other containers that use different APIs can be plugged into Lift (or vice versa) because the Servlet 3.0 spec is taking forever. OK. Servlet 3.0 spec is now finalized, meaning there is at least one implementation (in GlassFish v3) but i guess it may take time for others to arrive. Are the async features of Servlet 3.0 sufficient for lift's requirements? Yes and it will be supported by the work Marius is currently doing. Essentially lift uses special classes within Jetty (the continuation API) to make comet scalable... there is nothing stopping comet working in other containers with lift, the only restriction is that it does not use the native container API so it's essentially thread based - to that end, if you have a lot of connections things could get sticky. Lift has things that Atmosphere does not have (yet) like the multiplex support, and object delta'ing... perhaps other comet frameworks will get this in the future, but right now, using Jetty is not a deal breaker for most of our users. I guess its only really an issue if you have a heavy investment in something that is not jetty. However, I would stress that lift is an excellent framework even if your not using comet and that would of course deploy without any issues in any container. As Tim points out, Lift has a number of advantages in its Comet support: - Multiplexing -- you can have many Comet components on a given page and they all talk over a single long poll. You can see this at http://demo.liftweb.com. Both the clock and the chat component are Comet. Neither piece of code was special or required knowledge of the other. - Connection saturation detection -- Lift will avoid connection saturation by only allowing a single long poll to be active at once. If a second connection (this is tunable and it's on my to-do list to make it browser tunable as Chrome has more than 2 connections per server) is opened from the browser, Lift will automatically terminate the long poll. - DNS wildcard support -- To avoid the connection saturation issue, you can have the long poll done on a DNS wildcarded server and tune the long poll connection termination logic. This allows many different browser tabs to have open long polls. The server name is automatically changed on each page reload and the actual client-side and server-side components are unchanged (that means the app developer doesn't have to worry about this part of the plumbing.) I am not suggesting Atmosphere can or should be utilized as a replacement for the useful features you enumerate. I think the area where Atmosphere can provide value to lift is scalable async support for many Web/App servers. To date, the large Lift comet users have been using Jetty with success. If there is demand for Lift's Comet support on non-Servlet 3.0 platforms, we'll look into Atmosphere integration. Thanks, David Paul. -- You received this message because you are subscribed to the Google Groups Lift group. To post to this group, send email to lift...@googlegroups.com. To unsubscribe from this group, send email to liftweb+unsubscr...@googlegroups.comliftweb%2bunsubscr...@googlegroups.com . For more options, visit this group at http://groups.google.com/group/liftweb?hl=en. -- Lift, the simply functional web framework http://liftweb.net Beginning Scala http://www.apress.com/book/view/1430219890 Follow me: http://twitter.com/dpp Surf the harmonics -- You received this message because you are subscribed to the Google Groups "Lift" group. To post to this group, send email to lift...@googlegroups.com. To unsubscribe from this group, send email to liftweb+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/liftweb?hl=en.
Re: [Lift] Lift on Atmosphere
On Jan 6, 2010, at 5:44 PM, David Pollak wrote: I am not suggesting Atmosphere can or should be utilized as a replacement for the useful features you enumerate. I think the area where Atmosphere can provide value to lift is scalable async support for many Web/App servers. To date, the large Lift comet users have been using Jetty with success. If there is demand for Lift's Comet support on non-Servlet 3.0 platforms, we'll look into Atmosphere integration. OK! Paul. -- You received this message because you are subscribed to the Google Groups "Lift" group. To post to this group, send email to lift...@googlegroups.com. To unsubscribe from this group, send email to liftweb+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/liftweb?hl=en.