我正在制作基于多线程的客户端服务器应用程序。在服务器端,我为接受的每个连接创建一个线程。
在线程类中,执行耦合条件(逻辑)以使响应发送到客户端,并在响应之后关闭套接字输出流并保存请求&响应文件中的数据。
伪代码:
Server1 sends http requests ->
Server2 receive & parse request's parameters and send them to consumersQueue (with the socket reference) ->
Threads that listen to consumersQueue take consumer ->
logic(parameters) ? send response back : ignore the request;
insert parameters to dbQueue
Threads that listen to dbQueue take and save to daily report file with session open synchronized write
我的问题是如何实现这一点,以便调试,consumerQueue应该是ThreadPoolExecutor的BlockingQueue?我应该使用ObjectPool作为请求参数来保存GC吗?