dubbo registry
Dubbo Registry Client & Server Nodejs Implement
- Configurable service discovery and registry
 - Pluggable loadbalancing, currently round robin provided
 - Disaster recovery
 - ...
 
$ npm install dubbo-registry --save- 
RegistryServer
new RegistryServer(options)- {Number} port - the listening port
 - {Protocol} protocol - the exchange protocol, default is dubbo protocol
 - {Logger} logger - the logger instance, default is console
 
* close()shutdown the server
 - 
RegistryClient
new RegistryClient(options)- {String} address - registry server address, sush as 
127.0.0.1:9090 - {String} [defaultPort] - default port is 9090, you can override it
 - {String} [username] - registry server login username
 - {String} [password] - registry server login password
 - {Protocol} protocol - the exchange protocol, default is dubbo protocol
 - {String} appName - the application name
 - {Logger} logger - the logger instance, default is console
 
- {String} address - registry server address, sush as 
 * close()shutdown the clientsubscribe(reg, listener)subscribing service addresses- {Object} reg
- {String} interfaceName - service interfaceName, for example: 'com.test.TestService'
 - {String} version - service version
 - {String} group - service group
 
 - {Function} listener - the addresses change listener
 
- {Object} reg
 unSubscribe(reg, listener)cancel subscribing service- {Object} reg
- {String} interfaceName - service interfaceName, for example: 'com.test.TestService'
 - {String} version - service version
 - {String} group - service group
 
 - {Function} listener - the addresses change listener
 
- {Object} reg
 publish(reg)publishing a service- {Object} reg
- {String} interfaceName - service interfaceName, for example: 'com.test.TestService'
 - {String} version - service version
 - {String} group - service group
 - {String} url - service url
 
 
- {Object} reg
 
 
A simple server
const { Server: RegistryServer } = require('dubbo-registry');
const server = new RegistryServer({ port: 9090 });
server.ready(() => {
  console.log('server is ready');
});Client publish a service
const { Client: RegistryClient } = require('dubbo-registry');
const client = new RegistryClient({
  address: `127.0.0.1:9090`,
  appName: 'test',
});
client.publish({
  interfaceName: 'com.demo.DemoService',
  version: '1.0.0',
  url: 'dubbo://127.0.0.1:12200/com.demo.DemoService',
});Client subscribe a service
const { Client: RegistryClient } = require('dubbo-registry');
const client = new RegistryClient({ port: 9090 });
const client = new RegistryClient({
  address: `127.0.0.1:12200`,
  appName: 'test',
});
client.subscribe({
  interfaceName: 'com.demo.DemoService',
  version: '1.0.0',
}, addresses => {
  console.log('service addrs => ', addresses);
});