title: Vote for the best protocol for the given scenario
body: <p>I have a design decision to make. I need your advice.</p>
  
  <p>Requirements:</p>
  
  <ul>
  <li>A server and a client. client is typically a mobile phone.</li>
  <li>Connected through the Internet.</li>
  <li>Server and client want to talk to each other.</li>
  <li>Exchange of text, multimedia between the client and the server.</li>
  <li>Text would be some standard format. that is predecided.</li>
  <li>Real time requirements</li>
  <li>Session would typically last for 5-15 minutes. In some cases for under a minute. assume 5 minutes as the session duration.</li>
  <li>The protocol should adhere to standards.</li>
  <li>It must be efficient.</li>
  </ul>
  
  <p><strong>Option 1</strong>
  A binary protocol that I design for my application.</p>
  
  <p><strong>Option 2</strong>
  Implement my server as an HTTPServlet. Client sends post requests and the query in the post message and servlet sends response in the message.
  However, I think that for real time interaction, this is not a good option as a new thread would be created for each post request even for the same client and session. Please comment on the efficiency of this.</p>
  
  <p><strong>Option 3</strong>
  Use a normal servlet.
  Would face the same problem as above.</p>
  
  <p><strong>Option 4</strong>
  Use <a href="http://en.wikipedia.org/wiki/SOAP" rel="noreferrer">SOAP</a></p>
  
  <p><strong>Option 5</strong>
  Use <a href="http://en.wikipedia.org/wiki/Representational_State_Transfer" rel="noreferrer">REST</a></p>
  
  <p><strong>Option 6</strong>
  Use <a href="http://wave.google.com/" rel="noreferrer">Google Wave</a> (I haven't read the specification yet)</p>
  
  <p><strong>Option 7</strong>
  Suggest some other protocol</p>
  
  <p>Right now, I don't have experience with web services, but if it is <strong>the</strong> option then I don't mind investing time in it.</p>
  
  <p><em>Basically, I want the speed and efficiency of option 1 with a standard way of doing things.</em></p>
  
  <p><strong>Thank you</strong></p>