[
Date Prev][
Date Next][
Thread Prev][
Thread Next][
Date Index][
Thread Index]
[
List Home]
[ecf-dev] service discovery working even if port mis configured
|
Hi,
I'm investigating using ECF for use in a (RCP) client and server
scenario. I've gotten the timeservice example to run, including using DS
for the service definition, but I've some trouble getting ECF configured
for our use case.
Maybe someone can bring some light in the questions i have.
The general problem i have is that service discovery is working too well
for our setup ;)
That means e.g.: when running the
com.mycorp.examples.timeservice.consumer.ds and
com.mycorp.examples.timeservice.host and changing the server port to eg.
8888 in the supplied TimeServiceHost.generic.product launch config
without changing the corresponding -Decf.generic.server.port in the
client launch config the service gets discovered as well.
From my point of view it seems like the client is ignoring the port
setting.
If i think of environments where production and test machines reside in
the same subnet that automatic discovery would lead to unexpected results.
What i've tried is substituting the org.eclipse.ecf.provider.jmdns
service discovery provider with the zookeeper discovery. When running
zoodiscovery.flavor.standalone the result seems to be the same
(misconfigured server port, but service gets discovered).
The only solution which i found was running
zoodiscovery.flavor.centralized, which results in a not working client
when the supplied IP address is wrong.
What we want: simple client setup that just talks to the server supplied
(which is only known at runtime of the client app - so xml service
description cannot be used). The client is expected to get the server's
IP adress from a local property file in the user home.
It would be great to use DS for service description and only have one
single point of configuring the server location, eg. as System Property
which is set by a dependent bundle or something. (so multiple services,
but only one remote server configuration done at runtime)
Maybe someone can point me in the correct direction for this kind of setup.
Thanks in advance!
Regards,
Peter
PS: I am using ECF 3.7.1 because our target platform is still eclipse
indigo, but i don't think that matters for this use case