Summary: differences between Apache, Tomcat, JBOSS, Jetty, and Nginx

Source: Internet
Author: User
Tags url forwarding
: This article mainly introduces the differences between ApacheTomcatJBOSSJettyNginx and others interested in PHP tutorials. Summary: differences between Apache, Tomcat, JBOSS, and Nginx.
1. Apache is a Web server and Tomcat is an application (Java) server. Tomcat is not widely used in small and medium systems and concurrent access to many users. Apache supports static pages and Tomcat supports dynamic pages.
2. Jetty: the Tomcat kernel is used as its Servlet container engine for review and optimization. large and medium-sized systems can be used. It can provide database connection pool services and support integration of other Web technologies, such as PHP and. NET.
3. JBoss is a container and server for managing EJBs. However, JBoss core services do not include WEB containers that support servlet/JSP. they are generally used together with Tomcat or Jetty.
4. Nginx is currently the top-performing HTTP server. It features low memory usage and high concurrency. Nginx code is completely written from scratch in C language.

So: Apache -- Nginx; Tomcat -- Jetty; JBoss. These three groups can be combined.

Description:

I. Apache + Tomcat
Apache supports static pages. Tomcat supports dynamic pages, such as servlets,
If Apache + Tomcat is used, Apache is only used as a forward object, and JSP processing is handled by Tomcat.
Apche supports PHPcgiperl, but to use Java, you need to support Tomcat in the Apache background to forward Java requests to Tomcat for processing.
Apache is a Web server, and Tomcat is an application (Java) server. it is just a Servlet (JSP is also translated into Servlet) container. it can be considered as an extension of Apache, but it can run independently of Apache.

The two have the following points for comparison:
◆ Both are developed by Apache.
◆ Both have HTTP service functions
◆ Both are free of charge
Differences:
Apache provides HTTP services and related configurations (such as virtual hosts and URL Forwarding)
Tomcat is a JSP server developed in accordance with the JSP and Servlet standards of Java EE: Tomcat is widely used in small and medium systems and concurrent access to a large number of users.

II. Jetty

Jetty uses the best open-source Java Web engine in the industry. Jetty has the largest downloads and the largest number of users in the Java community, and uses the most complete Tomcat kernel as its Servlet container engine, review and optimization. Pure Tomcat has limited performance and lacks performance in many places, such as active connection support, static content, large files, and HTTPS. In addition to performance problems, Tomcat is also a restricted integration platform that can only run Java applications. When using Tomcat, enterprises often need to deploy Apache WebServer at the same time for integration. This configuration is cumbersome and does not guarantee performance superiority.
Jetty solves many Tomcat shortcomings by using a hybrid model of APR and Tomcat local technology. The hybrid technology model provides the best thread and event processing from the latest operating system technology. As a result, Jetty achieves scalability, and performance parameters match or even surpass the local Apache HTTP Server or IIS. For example, Jetty can provide database connection pool services. it not only supports Java technologies such as JSP, but also supports integration of other Web technologies, such as PHP and. NET.

III. Nginx
Nginx has high stability. When other HTTP servers encounter access peaks or maliciously initiate slow connections, the server may also consume physical memory and exchange frequently. in this case, the server can only be restarted if the response is lost. For example, once apache has over 200 processes, the web response speed is obviously very slow. Nginx adopts the phased resource allocation technology, making it very low in CPU and memory usage. Nginx officially said that it maintains 10,000 idle connections, which only occupies MB of memory. Therefore, DOS-like attacks are basically useless for nginx. In terms of stability, nginx is better than lighthttpd.

4. JBoss

JBoss is an open source code application server based on J2EE. JBoss is a container and server that manages EJBs. However, JBoss core services do not include WEB containers that support servlet/JSP. they are generally used together with Tomcat or Jetty.
JBoss and Web server run the background management interface after JBoss runs in the same Java virtual machine. Servlet calls EJBs without passing through the network, which greatly improves the running efficiency and security performance.

The above is a summary of the differences between Apache, Tomcat, JBOSS, Jetty, and Nginx, including some content. I hope to help anyone who is interested in PHP tutorials.

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.