Hello!
I'm very new to POCO and would like to say that the library is very well written and easy to follow. Congratulations.
Well, I'm developing an application that needs to have multiple servers in it. Only one server will be high traffic. I have the following requirements:
Requirement 1) The application needs to support a high traffic TCP Server listening on port X.
Requirement 2) The application needs to support a very low traffic TCP Server listening on port Y.
Requirement 3) The application needs to support a very low traffic TCP SSL Server listening on port Z.
Requirement 4) The application needs to support a very simple low traffic HTTP Server.
I've came with the following solution for the requirements:
Requirement 1) Use of an instance of a TCPServer class together with an instance of a ServerSocket class bound to port X. The TCPServer instance's thread pool would be created with as many threads as the cores of the system.
Requirement 2) Use of an instance of a TCPServer class together with an instance of a ServerSocket class bound to port Y. The TCPServer instance's thread pool would be created a single thread.
Requirement 3) Use of an instance of a TCPServer class together with an instance of a SecureServerSocket class bound to port Z. The TCPServer instance's thread pool would be created a single thread.
Requirement 4) Use of an instance of a HTTPServer class together with an instance of a ServerSocket. The HTTPServer instance's thread pool would be created a single thread.
The reason why I'm putting all this together in the same application is because of communication issues. For example, once an SSL connection arrives, I'll need to stop all TCP servers, wait until the connection ends, update some values related to the TCP server and then restart them. By the way, I'm planning to use Poco::Events to help me with those communications =).
Do you think this is a reasonably approach?
Thank you very much.





