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:
  • Field Details

  • 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