OpenResty vs Apache Tomcat: What are the differences?
What is OpenResty? Turning Nginx into a Full-fledged Web App Server. OpenResty (aka. ngx_openresty) is a full-fledged web application server by bundling the standard Nginx core, lots of 3rd-party Nginx modules, as well as most of their external dependencies.
What is Apache Tomcat? An open source software implementation of the Java Servlet and JavaServer Pages technologies. Apache Tomcat powers numerous large-scale, mission-critical web applications across a diverse range of industries and organizations.
OpenResty and Apache Tomcat can be primarily classified as "Web Servers" tools.
OpenResty and Apache Tomcat are both open source tools. OpenResty with 7.06K GitHub stars and 978 forks on GitHub appears to be more popular than Apache Tomcat with 3.44K GitHub stars and 2.36K GitHub forks.
MIT, Zillow, and Bodybuilding.com are some of the popular companies that use Apache Tomcat, whereas OpenResty is used by Shopify, Kong, and Pagar.me. Apache Tomcat has a broader approval, being mentioned in 562 company stacks & 419 developers stacks; compared to OpenResty, which is listed in 37 company stacks and 4 developer stacks.
What is OpenResty?
What is Apache Tomcat?
Need advice about which tool to choose?Ask the StackShare community!
Why do developers choose OpenResty?
What are the cons of using OpenResty?
What are the cons of using Apache Tomcat?
Sign up to get full access to all the companiesMake informed product decisions
Sign up to get full access to all the tool integrationsMake informed product decisions
At Kong while building an internal tool, we struggled to route metrics to Prometheus and logs to Logstash without incurring too much latency in our metrics collection.
We replaced nginx with OpenResty on the edge of our tool which allowed us to use the lua-nginx-module to run Lua code that captures metrics and records telemetry data during every request’s log phase. Our code then pushes the metrics to a local aggregator process (written in Go) which in turn exposes them in Prometheus Exposition Format for consumption by Prometheus. This solution reduced the number of components we needed to maintain and is fast thanks to NGINX and LuaJIT.
We use nginx and OpenResty as our API proxy running on EC2 for auth, caching, and some rate limiting for our dozens of microservices. Since OpenResty support embedded Lua we were able to write a custom access module that calls out to our authentication service with the resource, method, and access token. If that succeeds then critical account info is passed down to the underlying microservice. This proxy approach keeps all authentication and authorization in one place and provides a unified CX for our API users. Nginx is fast and cheap to run though we are always exploring alternatives that are also economical. What do you use?
Apache Tomcat is part of the open source Ant Media Server platform that currently provides both LIVE and VOD video trans-coding and delivery features for the Promethean Platform.
I use Tomcat to run Java enterprise web apps. Used to test enterprise applications mostly written using the Spring framework
Use this as the application server running on our production and development environment. Hosted on AWS.
Tomcat provides a fantastic application container that runs the majority of services of the site.
Apache Tomcat is being used as our application server for spring-based backend applications.