[wildfly-dev] EJB over HTTP
Stuart Douglas
stuart.w.douglas at gmail.com
Wed May 4 18:42:08 EDT 2016
On Wed, May 4, 2016 at 11:15 PM, David M. Lloyd <david.lloyd at redhat.com>
wrote:
> On 05/04/2016 08:12 AM, Stuart Douglas wrote:
> >
> >
> > On Wed, May 4, 2016 at 11:03 PM, David M. Lloyd <david.lloyd at redhat.com
> > <mailto:david.lloyd at redhat.com>> wrote:
> >
> > Getting transactions and SFSB to share a load-balancing behavior will
> > hopefully be possible though. I guess it'll require some thought to
> > make it easy to avoid situations where (for example) two SFSB are
> spread
> > to different nodes and then you try to create a UserTransaction which
> > includes both.
> >
> >
> > Once you start using a SFSB or a Transaction you should get a session
> > cookie, which should give you affinity to the relevant node (based on
> > the assumption the load balancer supports sticky sessions).
>
> Yeah I was just thinking though: does that ID apply to all future
> invocations across all EJBs pointing at the node URL, or just EJB
> invocations on that SFSB/transaction for its lifetime? It seems like
> you are suggesting that all invocations then get that session ID (which
> is probably OK, I just like to play devil's advocate whenever possible).
>
I am not 100% sure the best way to handle it. When a transaction or SFSB
session is open this makes sense, although once all sessions/transactions
has been closed there is no real reason to keep using the same session id
(at the moment there is no real way for the client to know that a SFSB is
gone though, maybe we need a response header to let a client know a
specified session is no longer valid).
>
> Also, there is an edge case where separate threads create SFSBs
> simultaneously which we'd want to ensure works as expected, in either case.
>
Yes, it should be possible to make this work as expected.
Stuart
>
> >
> > Stuart
> >
> >
> > On 05/04/2016 05:36 AM, Stuart Douglas wrote:
> > > The purpose is to enable load balancer based clustering to work.
> > > Basically even though there is no underlying web session the
> JSESSIONID
> > > cookie will make sure that the load balancer delivers the request
> to the
> > > correct backend server.
> > >
> > > Basically existing load balancers already support sticky sessions,
> and
> > > we are just piggy backing on that, as the primary customer use
> case for
> > > this is allowing EJB calls through a HTTP load balancer.
> > >
> > > Stuart
> > >
> > > On Wed, May 4, 2016 at 7:56 PM, Tomaž Cerar <tomaz.cerar at gmail.com
> <mailto:tomaz.cerar at gmail.com>
> > > <mailto:tomaz.cerar at gmail.com <mailto:tomaz.cerar at gmail.com>>>
> wrote:
> > >
> > > One thing that seems somewhat odd to me is the usage of
> JSESSIONID
> > > for tracking session state.
> > > That cookie/param is used for servlet http sessions and given
> that
> > > this is pure EJB without any servlets
> > > it would be bit confusing to require it. Or will this rely on
> > > session tracking from undertow-servlet?
> > >
> > > --
> > > tomaz
> > >
> > > On Wed, May 4, 2016 at 7:50 AM, Stuart Douglas
> > > <stuart.w.douglas at gmail.com <mailto:stuart.w.douglas at gmail.com
> >
> > <mailto:stuart.w.douglas at gmail.com
> > <mailto:stuart.w.douglas at gmail.com>>> wrote:
> > >
> > > Hi everyone,
> > >
> > > I have started looking into support for service invocation
> over
> > > HTTP. Unlike our existing HTTP upgrade support this will
> map EJB
> > > requests/responses directly to HTTP requests and responses,
> > > which should allow it to be used behind existing load
> balancers.
> > >
> > > I have started an initial description of the protocol at:
> > >
> https://github.com/stuartwdouglas/wildfly-http-client/blob/master/docs/wire-spec-v1.asciidoc
> > >
> > > The intention is to follow HTTP semantics as closely as
> > > possible. Clustering will be provided in a similar manner
> to web
> > > clustering (i.e. it will require a load balancer, and work
> in a
> > > similar manner to web clustering).
> > >
> > > There is still plenty work that needs to be done
> (especially
> > > around security), so if anyone has any feedback let me
> know.
> > >
> > > Stuart
> > >
> > >
> > >
> > > _______________________________________________
> > > wildfly-dev mailing list
> > >wildfly-dev at lists.jboss.org <mailto:wildfly-dev at lists.jboss.org>
> > <mailto:wildfly-dev at lists.jboss.org
> > <mailto:wildfly-dev at lists.jboss.org>>
> > >https://lists.jboss.org/mailman/listinfo/wildfly-dev
> > >
> > >
> > >
> > >
> > >
> > > _______________________________________________
> > > wildfly-dev mailing list
> > >wildfly-dev at lists.jboss.org <mailto:wildfly-dev at lists.jboss.org>
> > >https://lists.jboss.org/mailman/listinfo/wildfly-dev
> > >
> >
> > --
> > - DML
> > _______________________________________________
> > wildfly-dev mailing list
> > wildfly-dev at lists.jboss.org <mailto:wildfly-dev at lists.jboss.org>
> > https://lists.jboss.org/mailman/listinfo/wildfly-dev
> >
> >
>
> --
> - DML
> _______________________________________________
> wildfly-dev mailing list
> wildfly-dev at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/wildfly-dev
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.jboss.org/pipermail/wildfly-dev/attachments/20160505/99b43b46/attachment.html
More information about the wildfly-dev
mailing list