Mailing Lists: Apple Mailing Lists

Image of Mac OS face in stamp
 
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Deployment on Windows client



Hi Tom,

I would like to second Krzys' concerns here. In our case, having a system service be installed on client workstations would be near impossible to justify with our customers. In some cases, the client machines are running Terminal Server sessions, and the hoops we have to jump through to get anything installed is, well...


Well i see, that i'm not the only one jumping through hoops ;)

And yet, since clients desktops running our software need to find our server(s) (we have a multi-tiered solution), and we would prefer to do this with zero configuration, it would make total sense to be able to *fully* embed service discovery into the client application. I gather, but don't know for sure, that one of the benefits of using the service is that is quietly listens for all mDNS lookups on the network and gives immediate responses if you request something that it has already seen the answer too (a "non-chatty" optimization).


In my case, i only need this for the discovery phase at install or when the app starts (computer reboot). Even for 500 to 1000 workstations starting when users arrive in the morning, it would be limited to and distributed over a 1h period i guess... and nothing compared to the flood of STMP/POP3 and slashdot HTTP packets at this time of the day :)

But then again, if the embedded "service" is only started when the client application starts, then I suppose it is unlikely to be seeing any requests over the wire before it makes its own request, so linking the discovery code into the client would net out to be a chatty solution. Hmmm.


I'm not fond of linking the code (after hacking it to fit) in the app... Obviously there would be licensing issues, but also the Bonjour service could very well be already installed on the computer, or we might just win the fight with the IT staff and get them to install it for us. So the "embedded" mdnsresponder *SHOULD* be something optional. And last, i think isolating it from the app, and keeping it as close to the original source as possible would simplifiy the upgrade process (when a new version is avail.)

Nonetheless, when you say it is "possible but not recommended", are we looking at a whole lot of pain to make it happen because that was a configuration you had not considered? Or will it be rather straightforward? It looks like the dnssd DLL uses sockets to talk to the local service -- would there be major code hacking involved to short-circuit all this in a self-contained binary?


I think the best solution would be to have a "standalone" exe or dll version of the service, that could be forked or spawned as a child process by the client app, *if* the Bonjour service is not found or not started. It could bind the socket, and be completely transparent to the main app (Service, or child process, you'd talk to it with sockets via the dnssd.dll).

Just a thought... but i think hacking the nt service to behave like a child process would be far easier than embedding the whole stuff in the app, and would isolate enough for any licensing issues.

Just my 2 cents :)

Best regards,

Krzys.

_______________________________________________
Do not post admin requests to the list. They will be ignored.
Bonjour-dev mailing list      (email@hidden)
Help/Unsubscribe/Update your Subscription:
http://lists.apple.com/mailman/options/bonjour-dev/email@hidden

This email sent to email@hidden
References: 
 >Re: Deployment on Windows client (From: Tom Otvos <email@hidden>)
 >Re: Deployment on Windows client (From: Kiren Sekar <email@hidden>)



Visit the Apple Store online or at retail locations.
1-800-MY-APPLE

Contact Apple | Terms of Use | Privacy Policy

Copyright © 2007 Apple Inc. All rights reserved.