title: How should i design a server application in java
body: <p>I'm developing a java application which reads a continuously written a file of recordsets (800.000.000 records per month), bulk reading data from files and calls a web service to read also data. These data should be stored in a database (a huge database). The next feature I'm going to add is a web service, which can be called from other applications to add or receive (predefined queries [maybe the running time of the method/query is about 1 or 2 minutes]) records. Additionally to web service I want other application written in c#, c++, etc. to be able to connect (I thought about protocol buffers or apache thrift).
  And at least it should offer a way to administrate the application (i though about a web site)</p>
  
  <p>In my opinion it should be a server application. But should I develop a server on my own (opening sockets, etc.), a Java EE or are there any other "server frameworks" (may be a combination of jetty, sockets, etc.)?</p>