0cb4f5629d
Merging this PR for #2199 as we currently think it is not worse than previous and the code base is definitely simpler. While JMH has shown significant benefits for this approach, we have yet been able to demonstrate them in full scale integration tests - however that is likely due to GC and thread pool issues dominating. A `org.eclipse.jetty.http2.PEC_MODE` System property has been added to allow the EWYK scheduling to be disabled for HTTP/2 if need be. * Implementation of #1803 proposal 2 - EITHER dispatch type for EWYK * made code more readable * increase small threadpools in tests for extra reserved thread * clean up * minor code simplifications * Work in progress to simplify reserved thread pool * use a single ReservedThreadPool built into the QueuedThreadPool * fixed javadoc * removed more old reserved thread references * disable EWYK for h2 * fixes from review * use EWYK for HTTP2 * Fixed javadocs, imports and QueuedThreadPool constructors. * fix javadoc * EWYK avoid unnecessary pendings * after review * fixed merge with jetty-threadpool.xml * alternate EWYK implementations * added jetty copyright headers * Simplified EWYK code after review * fixed bad merge * Code cleanups. * Improved Javadocs for deprecated property "reservedThreads". * Improved Javadocs for deprecated property "reservedThreads". * added a system property to enable only PEC for HTTP/2 Signed-off-by: Greg Wilkins <gregw@webtide.com> Signed-off-by: Simone Bordet <simone.bordet@gmail.com> |
||
---|---|---|
LICENSE-CONTRIBUTOR | ||
advisories | ||
aggregates | ||
apache-jsp | ||
apache-jstl | ||
examples | ||
jetty-alpn | ||
jetty-annotations | ||
jetty-ant | ||
jetty-bom | ||
jetty-cdi | ||
jetty-client | ||
jetty-continuation | ||
jetty-deploy | ||
jetty-distribution | ||
jetty-documentation | ||
jetty-fcgi | ||
jetty-gcloud | ||
jetty-hazelcast | ||
jetty-home | ||
jetty-http | ||
jetty-http-spi | ||
jetty-http2 | ||
jetty-infinispan | ||
jetty-io | ||
jetty-jaas | ||
jetty-jaspi | ||
jetty-jmx | ||
jetty-jndi | ||
jetty-jspc-maven-plugin | ||
jetty-maven-plugin | ||
jetty-memcached | ||
jetty-monitor | ||
jetty-nosql | ||
jetty-osgi | ||
jetty-overlay-deployer | ||
jetty-plus | ||
jetty-proxy | ||
jetty-quickstart | ||
jetty-rewrite | ||
jetty-runner | ||
jetty-security | ||
jetty-server | ||
jetty-servlet | ||
jetty-servlets | ||
jetty-spdy | ||
jetty-spring | ||
jetty-start | ||
jetty-unixsocket | ||
jetty-util | ||
jetty-util-ajax | ||
jetty-webapp | ||
jetty-websocket | ||
jetty-xml | ||
logos | ||
scripts | ||
tests | ||
.gitattributes | ||
.gitignore | ||
CONTRIBUTING.md | ||
Jenkinsfile | ||
KEYS.txt | ||
LICENSE-eplv10-aslv20.html | ||
NOTICE.txt | ||
README.md | ||
VERSION.txt | ||
header-template-doc.txt | ||
header-template-java.txt | ||
pom.xml |
README.md
Eclipse Jetty Canonical Repository
This is the canonical repository for the Jetty project, feel free to fork and contribute now!
Submitting a patch or pull request?
Make sure you have an Eclipse Contributor Agreement (ECA) on file.
Project description
Jetty is a lightweight highly scalable java based web server and servlet engine. Our goal is to support web protocols like HTTP, HTTP/2 and WebSocket in a high volume low latency way that provides maximum performance while retaining the ease of use and compatibility with years of servlet development. Jetty is a modern fully async web server that has a long history as a component oriented technology easily embedded into applications while still offering a solid traditional distribution for webapp deployment.
Documentation
Project documentation is available on the Jetty Eclipse website.
Building
To build, use:
mvn clean install
The Jetty distribution will be built in jetty-distribution/target/distribution
.
The first build may take a longer than expected as Maven downloads all the dependencies.
The build tests do a lot of stress testing, and on some machines it is necessary to set the file descriptor limit to greater than 2048 for the tests to all pass successfully.
It is possible to bypass tests by building with mvn -Dmaven.test.skip=true install
but note that this will not produce some of the test jars that are leveraged in other places in the build.
Professional Services
Expert advice and production support are available through Webtide.com.