Hi Nick - Phantoms do not take a licence in uv - only 'interactive phantoms' - an interactive phantom is one that uses the socket api or its derivatives (http and soap api's) - This is of course no use to you.
What can be done is change the architecture slightly - so you have your core listener on a known port, when it receives a request from a client it gets the next free port from a pool and starts a phantom listening on that port, and passes back to the client the new port. The client then disconnects and reconnects to the new port. You will still have multiple licences in use but only for the clients that are connected. Or radically change it to use a messaging layer - i.e. write webservices for the functions you want to do using uniobjects.net etc or the u2 soap stuff, and then have your clients connect to them. You can use connection pooling this way and configure your number of connections etc in the web server and pooling parameters. This will also take advantage of device licencing. After years of writing my own socket based apps this is now very much my preferred way of doing things. HTH Symeon -----Original Message----- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Nick Cipollina Sent: 02 August 2007 02:38 To: [email protected] Subject: [U2] Socket API problem Hello All, We are currently stuck at version 10.1 of Universe because IBM has changed what causes a UV license to be consumed. In versions 10.1 on older versions, phantom processes do not require a separate universe license. As of version 10.2, this is no longer the case. Phantom processes will require a user license in order to run. This is a problem for us, because we currently run thousands of phantom processes to process transactions, real-time. Now you may say, well it is only fair that you should have to pay for each of these processes because they are essentially the same thing as a user session. We are interacting with the data through these phantoms. The reason we have to run so many processes is because of how Universe has implemented the socket API. Here is how I'm hoping someone on the list might be able to help me, or correct me on my understanding of how the socket API works. If my understanding is correct, the universe socket API does not allow the listener to pass of the socket connection to another process for processing and response. The process that is listening on a port and accepts the connection, is also the process that must answer. This is not typically how a socket service works. Typically, you have a process listening on a port, and when you receive a connection, the connection is passed off to another process for processing and response. So, unless my understanding of how this works is incorrect, we have to run so many phantoms because the Universe socket API is not set up to handle multiple connections on a single port. We actually have an F5 load balancer that accepts the connections on a single port and passes it off to one of the many phantoms that is listening on a unique port. I have two questions: 1. Is there anyone out there that is in the same boat we are? Is anyone else stuck on version 10.1 or older because they cannot afford to upgrade to 10.2 because of the licensing requirements? 2. Is my understanding of how the universe socket API works correct? If so, has anyone come up with a way around this limitation? Keep in mind, we currently process 95% of our transactions in 1/10th of a second. Thanks, Nick Cipollina MCTS, MCP ACS Heritage, Inc. 2810 North Parham Road, Suite 210 Richmond, VA 23294 (804) 965-8294 CONFIDENTIALITY NOTICE: This e-mail message, including any attachments, is for the sole use of the intended recipient(s) and may contain confidential and privileged information. Any unauthorized review, use, disclosure, or distribution is prohibited. If you are not the intended recipient, please contact the sender by reply e-mail and destroy all copies of the original message. ------- u2-users mailing list [email protected] To unsubscribe please visit http://listserver.u2ug.org/ ------- u2-users mailing list [email protected] To unsubscribe please visit http://listserver.u2ug.org/
