8 Replies Latest reply on Apr 20, 2006 6:52 AM by Mark Little

    Registry API

    Mark Little Master

      As it says here, we need to have a registry/repository in the ESB from the start. At the moment I have no specific interface in mind. Anybody have an opinion? If not, I'll post something in the next day or so to seed the discussion. Remember, this needs to be able to backend to UDDI but should not be UDDI-dependant.

      Mark.

        • 1. Re: Registry API
          Mark Little Master

          In typical ESB/SOA's, the registry is a single service. Obviously we would intend to ensure this is not the case in JBossESB (no single points of failure). However, one thing that we've been discussing internally is the possibility of using cacheing/local registries in a federated approach (not sure if this comes across in the current architecture document). In this case, potentially each node would have a local instance of a registry (which may have a durable repository as its backend and may be a cache of a subset of the main registry, built up over time); each local copy would know the location of the main registry and/or other local instances to query in the event that a registry-fault (c.f. page fault) occurs. Obviously all of this would be hidden behind the registry service interface.

          This architecture leads to some interesting performance (and fault-tolerance) benefits. Consider a logical registries and the main registry being linked in a DNS-like affair. Physically local ESB node instances could benefit from the cache's of each other to improve look-up time.

          Mark.

          • 2. Re: Registry API
            Anil Saldanha Master

            The standard registry API in the Java world is JAXR and we have support for that in JBoss.

            • 3. Re: Registry API
              Mark Little Master

              Thanks Anil. However, last time I looked at JAXR, it was very Web Services specific. That may have changed, but if it hasn't, we'll need our own API that removes that tie: JBossESB is a SOA infrastructure first and foremost, with Web Services as simply one way in which SOA could be implemented and deployed (and in that case, JAXR could be used if you were working purely in the Web Services world). Maybe you can let me know if JAXR is still Web Services specific?

              Thanks,

              Mark.

              • 4. Re: Registry API
                Arvinder Singh Novice

                Sorry for not replying earlier, it was easter break :-)

                I think as mark says, I think it should be backend to UDDI. I did some research into jUddi - i think this was an apache impl, having said that there are not that many open source uddi registry impls around. Ideally the implementation we use will eventually become clustered and in the long term work with other remote registries e.g other esb's - but this is long term. I'll start updating the wiki with a registry page (unless someone wants to do this?) where we can list functionality etc, so we have a clearer picture ..

                • 5. Re: Registry API
                  Mark Little Master

                  Let's figure out what the API is first. It should not tie us to UDDI.

                  Mark.

                  • 6. Re: Registry API
                    Anil Saldanha Master

                     

                    "mark.little@jboss.com" wrote:
                    Thanks Anil. However, last time I looked at JAXR, it was very Web Services specific. That may have changed, but if it hasn't, we'll need our own API that removes that tie: JBossESB is a SOA infrastructure first and foremost, with Web Services as simply one way in which SOA could be implemented and deployed (and in that case, JAXR could be used if you were working purely in the Web Services world). Maybe you can let me know if JAXR is still Web Services specific?

                    Thanks,
                    Mark.


                    The JAXR implementation we have is Level 0 Capability compliant ie. caters to the UDDI world. I am not aware of what the scope of the ESB registry requirements are - so I cannot comment.

                    • 7. Re: Registry API
                      Mark Little Master

                      We need something that does not mandate UDDI, but can use UDDI.

                      • 8. Re: Registry API
                        Mark Little Master

                        I've spent a bit of time going back over the JAXR specification (thanks Anil for reminding me). Although I was initially reticent about using it, I think it may make sense. Certainly one of its stated goals is to support arbitrary XML registry interactions, which is pretty much what we want.

                        So, assuming we go with JAXR (at least initially), the next question is: which implementation? Anil, you said that JBossWS provides support for JAXR, but does it do so in a modular fashion? What I'm after is an implementation that does not drag in the entire Web Services stack. What precisely is provided in the JAXR support?