Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > comp.lang.java.programmer > #34537
| From | Nigel Wade <nmw@ion.le.ac.uk> |
|---|---|
| Newsgroups | comp.lang.java.programmer |
| Subject | Re: Picking an unused port number |
| Date | 2016-06-07 17:28 +0100 |
| Message-ID | <drob1bFueveU1@mid.individual.net> (permalink) |
| References | (2 earlier) <niv172$pns$1@dont-email.me> <bba8bc85-7414-4d32-aba8-07d8f54a4c93@googlegroups.com> <nj4u4n$siu$1@dont-email.me> <drnfpkFp1n5U1@mid.individual.net> <nj6miv$1oi$1@dont-email.me> |
On 07/06/16 15:43, Knute Johnson wrote: > On 6/7/2016 01:43, Nigel Wade wrote: >> On 06/06/16 23:40, Knute Johnson wrote: >>> Any port works until there is a conflict. It's what you do about it >>> then that separates the easy from the hard. >>> >> >> The best way to avoid conflicts is to allow the system to give you an >> unallocated port and then register that port using some method such as >> rpcbind, or in the Java world, rmiregistry. These two methods are >> primarily for registering remote procedures/methods, but can also be >> used for simply registering an assigned port to provide a named service. >> >> A client can query portmap or rmiregistry to find out what port a >> particular service is registered, and listening, on. >> The only port numbers which then need to be well defined are those used >> by portmap or rmiregistry. rpcbind/portmap is required by NFS and NIS >> (formerly YP). I use rmiregistry with some of my applications where I >> need to operate a server but don't wish to define a fixed port number >> (to avoid possible future conflicts). >> > > Nigel > > Do you know where I can get more detailed information on how to do that? I've never played with rmiregistry. > http://docs.oracle.com/javase/tutorial/rmi/index.html is a good place to start. This FAQ is something I used to use. The Java version does indicate how long ago it was that I last programmed RMI, http://docs.oracle.com/javase/1.5.0/docs/guide/rmi/faq.html#netcontact The code I have was mostly written in Java 1.4, so it's a bit out of date. In essence, RMI allows you to invoke remote methods on a server without having to worry about Sockets and ports and the low level nastiness normally associated with client/server communication. You declare your methods, parameters and return result as normal. The low level socket creation, object serialisation/deserialisation and method invocation is all taken care of for you. An RMI server extends some implementation of Remote, and registers it with rmiregistry using Naming or Registry bind/rebind methods. A client wishing to invoke remote methods on the server uses the Naming or Registry lookup method to locate the server, and receives a copy of the Remote object. The methods in the Remote object can be invoked just as if they were methods in a local class in the same JVM. I can't offhand remember why there is the duplication of Naming, Registry and LocateRegistry. It's not entirely as simple as that, but it's essentially all there is to it. Apart from classpaths, and locating the classes. That can be a bit more interesting, especially for the rmiregistry.
Back to comp.lang.java.programmer | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread
Re: Picking an unused port number nathanturner369@gmail.com - 2016-06-04 08:24 -0700
Re: Picking an unused port number Knute Johnson <nospam@rabbitbrush.frazmtn.com> - 2016-06-04 09:56 -0700
Re: Picking an unused port number Eric Douglas <e.d.programmer@gmail.com> - 2016-06-06 05:28 -0700
Re: Picking an unused port number Knute Johnson <nospam@rabbitbrush.frazmtn.com> - 2016-06-06 15:40 -0700
Re: Picking an unused port number Nigel Wade <nmw@ion.le.ac.uk> - 2016-06-07 09:43 +0100
Re: Picking an unused port number Knute Johnson <nospam@rabbitbrush.frazmtn.com> - 2016-06-07 07:43 -0700
Re: Picking an unused port number Nigel Wade <nmw@ion.le.ac.uk> - 2016-06-07 17:28 +0100
Re: Picking an unused port number Knute Johnson <nospam@rabbitbrush.frazmtn.com> - 2016-06-07 09:40 -0700
Re: Picking an unused port number Nigel Wade <nmw@ion.le.ac.uk> - 2016-06-08 10:32 +0100
Re: Picking an unused port number Eric Douglas <e.d.programmer@gmail.com> - 2016-06-08 06:45 -0700
Re: Picking an unused port number Nigel Wade <nmw@ion.le.ac.uk> - 2016-06-08 15:06 +0100
Re: Picking an unused port number Eric Douglas <e.d.programmer@gmail.com> - 2016-06-08 07:36 -0700
Re: Picking an unused port number Martin Gregorie <martin@address-in-sig.invalid> - 2016-06-08 18:03 +0000
Re: Picking an unused port number Jerry Stuckle <jstucklex@attglobal.net> - 2016-06-04 20:50 -0400
Re: Picking an unused port number Wayne <wayne@nospam.invalid> - 2016-06-06 18:44 -0400
Re: Picking an unused port number Jerry Stuckle <jstucklex@attglobal.net> - 2016-06-06 20:52 -0400
Re: Picking an unused port number Arne Vajhøj <arne@vajhoej.dk> - 2016-06-06 21:28 -0400
Re: Picking an unused port number Jerry Stuckle <jstucklex@attglobal.net> - 2016-06-06 21:45 -0400
Re: Picking an unused port number Arne Vajhøj <arne@vajhoej.dk> - 2016-06-06 23:07 -0400
Re: Picking an unused port number Jerry Stuckle <jstucklex@attglobal.net> - 2016-06-07 09:50 -0400
Re: Picking an unused port number Lew <lewbloch@gmail.com> - 2016-06-07 13:46 -0700
Re: Picking an unused port number Jerry Stuckle <jstucklex@attglobal.net> - 2016-06-07 19:31 -0400
Re: Picking an unused port number Lew <lewbloch@gmail.com> - 2016-06-07 17:26 -0700
Re: Picking an unused port number Jerry Stuckle <jstucklex@attglobal.net> - 2016-06-07 21:34 -0400
Re: Picking an unused port number Lew <lewbloch@gmail.com> - 2016-06-08 13:52 -0700
Re: Picking an unused port number Jerry Stuckle <jstucklex@attglobal.net> - 2016-06-08 17:49 -0400
Re: Picking an unused port number Arne Vajhøj <arne@vajhoej.dk> - 2016-06-07 21:53 -0400
Re: Picking an unused port number a.laforgia@gmail.com - 2016-06-07 00:11 -0700
csiph-web