Class DataRateLimitedServlet

java.lang.Object
javax.servlet.GenericServlet
javax.servlet.http.HttpServlet
org.eclipse.jetty.servlets.DataRateLimitedServlet
All Implemented Interfaces:
Serializable, javax.servlet.Servlet, javax.servlet.ServletConfig

@Deprecated public class DataRateLimitedServlet extends javax.servlet.http.HttpServlet
Deprecated.
this is intended as a demonstration and not production quality.
A demonstration servlet that uses the Servlet 3.1 asynchronous IO API to server static content at a limited data rate.

Two implementations are supported:

  • The StandardDataStream impl uses only standard APIs, but produces more garbage due to the byte[] nature of the API.
  • the JettyDataStream impl uses a Jetty API to write a ByteBuffer and thus allow the efficient use of file mapped buffers without any temporary buffer copies.

The data rate is controlled by setting init parameters:

buffersize
The amount of data in bytes written per write
pause
The period in ms to wait after a write before attempting another
pool
The size of the thread pool used to service the writes (defaults to available processors)
Thus if buffersize = 1024 and pause = 100, the data rate will be limited to 10KB per second.
See Also:
  • Constructor Summary

    Constructors
    Constructor
    Description
    Deprecated.
     
  • Method Summary

    Modifier and Type
    Method
    Description
    void
    Deprecated.
     
    protected void
    doGet(javax.servlet.http.HttpServletRequest request, javax.servlet.http.HttpServletResponse response)
    Deprecated.
     
    void
    Deprecated.
     

    Methods inherited from class javax.servlet.http.HttpServlet

    doDelete, doHead, doOptions, doPost, doPut, doTrace, getLastModified, service, service

    Methods inherited from class javax.servlet.GenericServlet

    getInitParameter, getInitParameterNames, getServletConfig, getServletContext, getServletInfo, getServletName, init, log, log

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Constructor Details

    • DataRateLimitedServlet

      public DataRateLimitedServlet()
      Deprecated.
  • Method Details

    • init

      public void init() throws javax.servlet.ServletException
      Deprecated.
      Overrides:
      init in class javax.servlet.GenericServlet
      Throws:
      javax.servlet.ServletException
    • destroy

      public void destroy()
      Deprecated.
      Specified by:
      destroy in interface javax.servlet.Servlet
      Overrides:
      destroy in class javax.servlet.GenericServlet
    • doGet

      protected void doGet(javax.servlet.http.HttpServletRequest request, javax.servlet.http.HttpServletResponse response) throws javax.servlet.ServletException, IOException
      Deprecated.
      Overrides:
      doGet in class javax.servlet.http.HttpServlet
      Throws:
      javax.servlet.ServletException
      IOException