Hi guys,
Have a question regarding the optimal/recommended platform to deploy the dataserver product to.
We have a client using an Oracle DB on unix.
The application front end is on Windows.
The question is what platform should we use for the dataserver? Windows or Unix?
In case it matters, OE 11.5.
Thanks,
Simi
Hi Simi,
The source code for the Dataserver is the same regardless of the platform deployed, expect for some platform-specific glue code which does not involve performance optimization.
You concern is more a Linux vs Windows type of question when it comes to choosing a OS for a server and is not specific to the dataserver product.
You may want to have a look to the following Community thread, raising a similar concern but for the OpenEdge DB:
community.progress.com/.../12470
Regards,
Yannick
Hi Simi,
Technically speaking the Oracle Dataserver can be deployed on either platform.
Here are 3 possible architectures that you may use:
Configuration 1:
Machine A:
Windows
Client application
Machine B:
Linux or Windows
Oracle DataServer broker
Oracle Client Interface (OCI)
Machine C:
Linux
Oracle RDBMS
The dataserver is configured as a broker. The client connects to the broker using the Progress networking protocol (as it is the case for OpenEdge client/server connections).
The oracle dataserver communicates with the remote Oracle RDBMS via the Oracle networking, using the OCI libraries.
You will need one DataServer license for machine B.
Configuration 2:
Machine A:
Windows
Client application
Machine B:
Linux
Oracle DataServer broker
Oracle Client Interface (OCI)
Oracle RDBMS
This configuration is similar to the previous configuration except that Oracle DataServer broker resides on the same machine as the Oracle RDBMS.
The communication flow between the client the dataserver and the Oracle DB remains the same
Configuration 3:
Machine A:
Windows
Client application
Oracle DataServer (broker or self-service)
Oracle Client Interface (OCI)
Machine B:
Linux
Oracle RDBMS
In the last scenario the Oracle DataServer resides on the same machine as the client application.
Therefore, if the application deployed on multiple machines, you need a Dataserver license for each of those machines along with the OCI.
The client application can connect to the dataserver in client server mode (dataserver broker configuration) or in shared memory (self-service).
Conclusion:
Each configuration has its pros and cons. Config 3 (in self service mode) may provide great performance but may be questionable when it comes to scalability and maintenance
On the other hand config 1 has an advantage when it comes to scalability and maintenance, but the distributed architecture may cause extra overhead.
Regards,
Yannick
Hi Yannick,
Thanks for your quick response.
We're currently using config 2 and the client is thinking to go config 1 as in move the db to a standalone linux server. Any recommendation for the machine B's OS in config 1? Windows or Linux? Is the DataServer product somehow better on one OS than the other?
Cheers,
Simi
Hi Simi,
The source code for the Dataserver is the same regardless of the platform deployed, expect for some platform-specific glue code which does not involve performance optimization.
You concern is more a Linux vs Windows type of question when it comes to choosing a OS for a server and is not specific to the dataserver product.
You may want to have a look to the following Community thread, raising a similar concern but for the OpenEdge DB:
community.progress.com/.../12470
Regards,
Yannick
Thanks Yannick