10 Replies Latest reply on Jan 28, 2003 4:46 PM by echofloripa

    HTTPSession replication to *each* node?

    joachimm

      In the Clustering doc, there is a comment about
      the replication of Session Beans to each node
      in a cluster, and how this would not be desirable
      in a large cluster. The solution is to use
      sub-partition, which the RMI proxies seem to know
      how to deal with.

      This doesn't seem to apply to HTTPSession replication,
      which would be a major drawback. Could someone comment
      on how HTTPSession clustering works in a large cluster?
      Say instead of 10 nodes, you have 80? (4 processes
      per server, 20 servers). If I set up 20 sub-partitions,
      what happens if all four nodes in my current
      sub-partition go down? Does mod_jk understand
      sub-partitions? (I doubt it)

      Weblogic implements a Primary/Secondary session backup
      server sort of design, and it seems like a more
      efficient way to handle large clusters. It is
      obviously harder to implement this way, and more
      vulnerable to single-point-of-failure issues, but it
      may improve performance (at least network perf...)
      for the cluster as a whole.

      Thanks

        • 1. Re: HTTPSession replication to *each* node?
          slaboure

          Yes, sub-partition is currently not handled for both SFSB and HttpSessions. Code is there but is dangling (following the implementation of detached invokers).

          The set of features you describe is on the todo list for 4.0.

          Cheers,


          sacha

          • 2. Re: HTTPSession replication to *each* node?
            echofloripa

            when the sub-partition will be available??? the question can be, when 4.0 will be ready, about javaone???

            • 3. Re: HTTPSession replication to *each* node?

              Emerson,

              If you are using Jetty, in a recent JBoss, with JGStore as your distribution mechanism (it's the default), then there is an attribute that you can set to compartmentalise nodes into subclusters.

              Limitations to the current state of the impl are :

              1. sticky sessions are not yet supported - distribution is synchronous.

              2. distribution is only done on an explicit mutation of the session - i.e. putting a reference to a mutable object into the session and then fiddling with that object will not cause it to be distributed. In this case call setAttribute(key,val) again when you want distribution.

              3. seLastAccessedTime() is distributed every time - inefficient. I have various plans for batching these calls up and only distributing them every minute or so - NYI.

              N.B.

              Distribution is done via JavaGroups, on an attribute-by-attribute basis...

              HttpSession clusters/channels and JBoss clusters/channels are orthogonal.

              Is this of any use to you ?


              Jules

              • 4. Re: HTTPSession replication to *each* node?
                echofloripa

                > you are using Jetty, in a recent JBoss, with JGStore as >your distribution mechanism (it's the default), then >there is an attribute that you can set to >compartmentalise nodes into subclusters.

                recent jboss, you mean 3.0.6?
                is there some where I can find a how-to to configure this??

                >Limitations to the current state of the impl are :

                >1. sticky sessions are not yet supported - distribution >is synchronous.

                why sticky session is not supported, isn't the load-balancer (mod_jk in my case) that will choose the server?? sorry for my ignorancem, but what being synchronous has to do with this?? could you expand on this?

                >2. distribution is only done on an explicit mutation of >the session - i.e. putting a reference to a mutable >object into the session and then fiddling with that >object will not cause it to be distributed. In this case >call setAttribute(key,val) again when you want >distribution.

                ok. the framework could nest into the object (using equals, for example) to see if has changed, isn't?

                >3. seLastAccessedTime() is distributed every time - >inefficient. I have various plans for batching these >calls up and only distributing them every minute or so - >NYI.

                ok...

                >N.B.

                >Distribution is done via JavaGroups, on an >attribute-by-attribute basis...

                >HttpSession clusters/channels and JBoss clusters/channels >are orthogonal.

                you mean that for SFSB and http-session are distributed in the same way? BTW, are SFSB currently using sub-particions?? I undertood, for what i read in some threads, that sub-particions will be available (either in httpsessions ou SFSB) when detached-invokers where ready??
                could you tell me how is the current state of this??

                >Is this of any use to you ?

                of course, thanks a lot.

                Me and a coleague are making a article for a brazillian java magazine about clustering with focus on JBoss, so i'd like to give an idea about what are the future features of jboss related to cluster.

                could you tell me any other future feature?

                Thanks a lot

                Emerson

                • 5. Re: HTTPSession replication to *each* node?
                  echofloripa

                  > you are using Jetty, in a recent JBoss, with JGStore as >your distribution mechanism (it's the default), then >there is an attribute that you can set to >compartmentalise nodes into subclusters.

                  recent jboss, you mean 3.0.6?
                  is there some where I can find a how-to to configure this??

                  >Limitations to the current state of the impl are :

                  >1. sticky sessions are not yet supported - distribution >is synchronous.

                  why sticky session is not supported, isn't the load-balancer (mod_jk in my case) that will choose the server?? sorry for my ignorancem, but what being synchronous has to do with this?? could you expand on this?

                  >2. distribution is only done on an explicit mutation of >the session - i.e. putting a reference to a mutable >object into the session and then fiddling with that >object will not cause it to be distributed. In this case >call setAttribute(key,val) again when you want >distribution.

                  ok. the framework could nest into the object (using equals, for example) to see if has changed, isn't?

                  >3. seLastAccessedTime() is distributed every time - >inefficient. I have various plans for batching these >calls up and only distributing them every minute or so - >NYI.

                  ok...

                  >N.B.

                  >Distribution is done via JavaGroups, on an >attribute-by-attribute basis...

                  >HttpSession clusters/channels and JBoss clusters/channels >are orthogonal.

                  you mean that for SFSB and http-session are distributed in the same way? BTW, are SFSB currently using sub-particions?? I undertood, for what i read in some threads, that sub-particions will be available (either in httpsessions ou SFSB) when detached-invokers where ready??
                  could you tell me how is the current state of this??

                  >Is this of any use to you ?

                  of course, thanks a lot.

                  Me and a coleague are making a article for a brazillian java magazine about clustering with focus on JBoss, so i'd like to give an idea about what are the future features of jboss related to cluster.

                  could you tell me any other future feature?

                  Thanks a lot

                  Emerson

                  • 6. Re: HTTPSession replication to *each* node?
                    echofloripa

                    > you are using Jetty, in a recent JBoss, with JGStore as >your distribution mechanism (it's the default), then >there is an attribute that you can set to >compartmentalise nodes into subclusters.

                    recent jboss, you mean 3.0.6?
                    is there some where I can find a how-to to configure this??

                    >Limitations to the current state of the impl are :

                    >1. sticky sessions are not yet supported - distribution >is synchronous.

                    why sticky session is not supported, isn't the load-balancer (mod_jk in my case) that will choose the server?? sorry for my ignorancem, but what being synchronous has to do with this?? could you expand on this?

                    >2. distribution is only done on an explicit mutation of >the session - i.e. putting a reference to a mutable >object into the session and then fiddling with that >object will not cause it to be distributed. In this case >call setAttribute(key,val) again when you want >distribution.

                    ok. the framework could nest into the object (using equals, for example) to see if has changed, isn't?

                    >3. seLastAccessedTime() is distributed every time - >inefficient. I have various plans for batching these >calls up and only distributing them every minute or so - >NYI.

                    ok...

                    >N.B.

                    >Distribution is done via JavaGroups, on an >attribute-by-attribute basis...

                    >HttpSession clusters/channels and JBoss clusters/channels >are orthogonal.

                    you mean that for SFSB and http-session are distributed in the same way? BTW, are SFSB currently using sub-particions?? I undertood, for what i read in some threads, that sub-particions will be available (either in httpsessions ou SFSB) when detached-invokers where ready??
                    could you tell me how is the current state of this??

                    >Is this of any use to you ?

                    of course, thanks a lot.

                    Me and a coleague are making a article for a brazillian java magazine about clustering with focus on JBoss, so i'd like to give an idea about what are the future features of jboss related to cluster.

                    could you tell me any other future feature?

                    Thanks a lot

                    Emerson

                    • 7. Re: HTTPSession replication to *each* node?
                      echofloripa

                      > you are using Jetty, in a recent JBoss, with JGStore as >your distribution mechanism (it's the default), then >there is an attribute that you can set to >compartmentalise nodes into subclusters.

                      recent jboss, you mean 3.0.6?
                      is there some where I can find a how-to to configure this??

                      >Limitations to the current state of the impl are :

                      >1. sticky sessions are not yet supported - distribution >is synchronous.

                      why sticky session is not supported, isn't the load-balancer (mod_jk in my case) that will choose the server?? sorry for my ignorancem, but what
                      being synchronous has to do with this?? could you expand on this?

                      >2. distribution is only done on an explicit mutation of >the session -i.e. putting a reference to a mutable >object into the session and then fiddling with that >object will not cause it to be distributed. In this
                      >case call setAttribute(key,val) again when you want >distribution.

                      ok. the framework could nest into the object (using equals, for example)
                      to see if has changed, isn't?

                      >3. seLastAccessedTime() is distributed every time - >inefficient.have various plans for batching these
                      >calls up and only distributing them every minute or so - >NYI.

                      ok...

                      >N.B.

                      >Distribution is done via JavaGroups, on an
                      >attribute-by-attribute basis...

                      >HttpSession clusters/channels and JBoss >clusters/channels are orthogonal.

                      you mean that for SFSB and http-session are distributed in the same way?
                      BTW, are SFSB currently using sub-particions?? I undertood, for what i
                      read in some threads, that sub-particions will be available (either in
                      httpsessions ou SFSB) when detached-invokers where ready??
                      could you tell me how is the current state of this??

                      >Is this of any use to you ?

                      of course, thanks a lot.

                      Me and a coleague are making a article for a brazillian java magazine
                      about clustering with focus on JBoss, so i'd like to give an idea about
                      what are the future features of jboss related to cluster.

                      could you tell me any other future feature?

                      Thanks a lot

                      Emerson

                      • 8. Re: HTTPSession replication to *each* node?
                        echofloripa

                        my reply doens't work.... testing to see if a short msg goes...

                        • 9. Re: HTTPSession replication to *each* node?
                          echofloripa

                          > you are using Jetty, in a recent JBoss, with JGStore as >your distribution mechanism (it's the default), then >there is an attribute that you can set to >compartmentalise nodes into subclusters.

                          recent jboss, you mean 3.0.6?
                          is there some where I can find a how-to to configure this??

                          >Limitations to the current state of the impl are :

                          >1. sticky sessions are not yet supported - distribution >is synchronous.

                          why sticky session is not supported, isn't the load-balancer (mod_jk in my case) that will choose the server?? sorry for my ignorancem, but what
                          being synchronous has to do with this?? could you expand on this?

                          >2. distribution is only done on an explicit mutation of >the session -i.e. putting a reference to a mutable >object into the session and then fiddling with that >object will not cause it to be distributed. In this
                          >case call setAttribute(key,val) again when you want >distribution.

                          ok. the framework could nest into the object (using equals, for example)
                          to see if has changed, isn't?

                          >3. seLastAccessedTime() is distributed every time - >inefficient.have various plans for batching these
                          >calls up and only distributing them every minute or so - >NYI.

                          ok...

                          >N.B.

                          >Distribution is done via JavaGroups, on an
                          >attribute-by-attribute basis...

                          >HttpSession clusters/channels and JBoss >clusters/channels are orthogonal.

                          you mean that for SFSB and http-session are distributed in the same way?
                          BTW, are SFSB currently using sub-particions?? I undertood, for what i
                          read in some threads, that sub-particions will be available (either in
                          httpsessions ou SFSB) when detached-invokers where ready??
                          could you tell me how is the current state of this??

                          >Is this of any use to you ?

                          of course, thanks a lot.

                          Me and a coleague are making a article for a brazillian java magazine
                          about clustering with focus on JBoss, so i'd like to give an idea about
                          what are the future features of jboss related to cluster.

                          could you tell me any other future feature?

                          Thanks a lot

                          • 10. Re: HTTPSession replication to *each* node?
                            echofloripa

                            sorry, but my message was not appearing at the thread, just now it did show up (the three of them :)