What is OpenResty and what are its top alternatives?
Top Alternatives to OpenResty
- WordPress
The core software is built by hundreds of community volunteers, and when you’re ready for more there are thousands of plugins and themes available to transform your site into almost anything you can imagine. Over 60 million people have chosen WordPress to power the place on the web they call “home” — we’d love you to join the family. ...
- Python
Python is a general purpose programming language created by Guido Van Rossum. Python is most praised for its elegant syntax and readable code, if you are just beginning your programming career python suits you best. ...
- Node.js
Node.js uses an event-driven, non-blocking I/O model that makes it lightweight and efficient, perfect for data-intensive real-time applications that run across distributed devices. ...
- NGINX
nginx [engine x] is an HTTP and reverse proxy server, as well as a mail proxy server, written by Igor Sysoev. According to Netcraft nginx served or proxied 30.46% of the top million busiest sites in Jan 2018. ...
- Kong
Kong is a scalable, open source API Layer (also known as an API Gateway, or API Middleware). Kong controls layer 4 and 7 traffic and is extended through Plugins, which provide extra functionality and services beyond the core platform. ...
- HAProxy
HAProxy (High Availability Proxy) is a free, very fast and reliable solution offering high availability, load balancing, and proxying for TCP and HTTP-based applications. ...
- Apache HTTP Server
The Apache HTTP Server is a powerful and flexible HTTP/1.1 compliant web server. Originally designed as a replacement for the NCSA HTTP Server, it has grown to be the most popular web server on the Internet. ...
- Microsoft IIS
Internet Information Services (IIS) for Windows Server is a flexible, secure and manageable Web server for hosting anything on the Web. From media streaming to web applications, IIS's scalable and open architecture is ready to handle the most demanding tasks. ...
OpenResty alternatives & related posts
WordPress
- Customizable411
- Easy to manage361
- Plugins & themes351
- Non-tech colleagues can update website content258
- Really powerful246
- Rapid website development144
- Best documentation77
- Codex51
- Product feature set44
- Custom/internal social network35
- Open source15
- Great for all types of websites8
- Huge install and user base6
- Most websites make use of it5
- It's simple and easy to use by any novice5
- Perfect example of user collaboration5
- Open Source Community5
- I like it like I like a kick in the groin5
- Best5
- Community4
- API-based CMS4
- Easy To use3
- <a href="https://secure.wphackedhel">Easy Beginner</a>2
- WordPreess1
- Plugins are of mixed quality12
- Hard to keep up-to-date if you customize things12
- Not best backend UI9
- Complex Organization2
- Great Security1
related WordPress posts
I've heard that I have the ability to write well, at times. When it flows, it flows. I decided to start blogging in 2013 on Blogger. I started a company and joined BizPark with the Microsoft Azure allotment. I created a WordPress blog and did a migration at some point. A lot happened in the time after that migration but I stopped coding and changed cities during tumultuous times that taught me many lessons concerning mental health and productivity. I eventually graduated from BizSpark and outgrew the credit allotment. That killed the WordPress blog.
I blogged about writing again on the existing Blogger blog but it didn't feel right. I looked at a few options where I wouldn't have to worry about hosting cost indefinitely and Jekyll stood out with GitHub Pages. The Importer was fairly straightforward for the existing blog posts.
Todo * Set up redirects for all posts on blogger. The URI format is different so a complete redirect wouldn't work. Although, there may be something in Jekyll that could manage the redirects. I did notice the old URLs were stored in the front matter. I'm working on a command-line Ruby gem for the current plan. * I did find some of the lost WordPress posts on archive.org that I downloaded with the waybackmachinedownloader. I think I might write an importer for that. * I still have a few Disqus comment threads to map
WordPress Magento PHP Java Swift JavaScript
Back in the days, we started looking for a date on different matrimonial websites as there were no Dating Applications. We used to create different profiles. It all changed in 2012 when Tinder, an Online Dating application came into India Market.
Tinder allowed us to communicate with our potential soul mates. That too without paying any extra money. I too got 4-6 matches in 6 years. It changed the life of many Millennials. Tinder created a revolution of its own. P.S. - I still don't have a date :(
Posting my first article. Please have a look and do give feedback.
Communication InAppChat Dating Matrimonial #messaging
Python
- Great libraries1.1K
- Readable code937
- Beautiful code830
- Rapid development774
- Large community677
- Open source422
- Elegant381
- Great community273
- Object oriented266
- Dynamic typing211
- Great standard library73
- Very fast54
- Functional programming51
- Scientific computing40
- Easy to learn39
- Great documentation32
- Productivity25
- Matlab alternative25
- Easy to read24
- Simple is better than complex20
- It's the way I think18
- Imperative17
- Free15
- Very programmer and non-programmer friendly15
- Powerfull language14
- Powerful14
- Fast and simple13
- Machine learning support12
- Scripting12
- Explicit is better than implicit9
- Ease of development8
- Unlimited power8
- Clear and easy and powerfull8
- Import antigravity7
- It's lean and fun to code6
- Print "life is short, use python"6
- Great for tooling5
- There should be one-- and preferably only one --obvious5
- Python has great libraries for data processing5
- High Documented language5
- I love snakes5
- Although practicality beats purity5
- Flat is better than nested5
- Fast coding and good for competitions5
- Readability counts4
- Lists, tuples, dictionaries3
- CG industry needs3
- Now is better than never3
- Multiple Inheritence3
- Great for analytics3
- Complex is better than complicated3
- Plotting3
- Beautiful is better than ugly3
- Rapid Prototyping3
- Socially engaged community3
- List comprehensions2
- Web scraping2
- Many types of collections2
- Ys2
- Easy to setup and run smooth2
- Generators2
- Special cases aren't special enough to break the rules2
- If the implementation is hard to explain, it's a bad id2
- If the implementation is easy to explain, it may be a g2
- Simple and easy to learn2
- Import this2
- No cruft2
- Easy to learn and use2
- Flexible and easy1
- Batteries included1
- Powerful language for AI1
- Should START with this but not STICK with This1
- Good1
- It is Very easy , simple and will you be love programmi1
- Better outcome1
- إسلام هشام1
- Because of Netflix1
- A-to-Z1
- Only one way to do it1
- Pip install everything1
- Powerful0
- Pro0
- Still divided between python 2 and python 351
- Performance impact29
- Poor syntax for anonymous functions26
- GIL21
- Package management is a mess19
- Too imperative-oriented14
- Dynamic typing12
- Hard to understand12
- Very slow10
- Not everything is expression8
- Indentations matter a lot7
- Explicit self parameter in methods7
- No anonymous functions6
- Poor DSL capabilities6
- Incredibly slow6
- Requires C functions for dynamic modules6
- The "lisp style" whitespaces5
- Fake object-oriented programming5
- Hard to obfuscate5
- Threading5
- Circular import4
- The benevolent-dictator-for-life quit4
- Official documentation is unclear.4
- Lack of Syntax Sugar leads to "the pyramid of doom"4
- Not suitable for autocomplete4
- Meta classes2
- Training wheels (forced indentation)1
related Python posts











How Uber developed the open source, end-to-end distributed tracing Jaeger , now a CNCF project:
Distributed tracing is quickly becoming a must-have component in the tools that organizations use to monitor their complex, microservice-based architectures. At Uber, our open source distributed tracing system Jaeger saw large-scale internal adoption throughout 2016, integrated into hundreds of microservices and now recording thousands of traces every second.
Here is the story of how we got here, from investigating off-the-shelf solutions like Zipkin, to why we switched from pull to push architecture, and how distributed tracing will continue to evolve:
https://eng.uber.com/distributed-tracing/
(GitHub Pages : https://www.jaegertracing.io/, GitHub: https://github.com/jaegertracing/jaeger)
Bindings/Operator: Python Java Node.js Go C++ Kubernetes JavaScript OpenShift C# Apache Spark
Winds 2.0 is an open source Podcast/RSS reader developed by Stream with a core goal to enable a wide range of developers to contribute.
We chose JavaScript because nearly every developer knows or can, at the very least, read JavaScript. With ES6 and Node.js v10.x.x, it’s become a very capable language. Async/Await is powerful and easy to use (Async/Await vs Promises). Babel allows us to experiment with next-generation JavaScript (features that are not in the official JavaScript spec yet). Yarn allows us to consistently install packages quickly (and is filled with tons of new tricks)
We’re using JavaScript for everything – both front and backend. Most of our team is experienced with Go and Python, so Node was not an obvious choice for this app.
Sure... there will be haters who refuse to acknowledge that there is anything remotely positive about JavaScript (there are even rants on Hacker News about Node.js); however, without writing completely in JavaScript, we would not have seen the results we did.
#FrameworksFullStack #Languages
Node.js
- Npm1.4K
- Javascript1.3K
- Great libraries1.1K
- High-performance1K
- Open source799
- Great for apis485
- Asynchronous475
- Great community420
- Great for realtime apps390
- Great for command line utilities295
- Websockets81
- Node Modules81
- Uber Simple68
- Great modularity59
- Allows us to reuse code in the frontend57
- Easy to start42
- Great for Data Streaming35
- Realtime32
- Awesome28
- Non blocking IO25
- Can be used as a proxy18
- High performance, open source, scalable17
- Non-blocking and modular16
- Easy and Fun15
- Easy and powerful14
- Future of BackEnd13
- Same lang as AngularJS13
- Fullstack12
- Fast11
- Cross platform10
- Scalability10
- Simple9
- Mean Stack8
- Easy concurrency7
- Great for webapps7
- React6
- Fast, simple code and async6
- Friendly6
- Typescript6
- Great speed5
- Fast development5
- Its amazingly fast and scalable5
- Control everything5
- Scalable5
- Easy to use and fast and goes well with JSONdb's5
- It's fast4
- Easy to use4
- Isomorphic coolness4
- Easy to learn3
- Easy3
- Javascript23
- Great community3
- Not Python3
- Sooper easy for the Backend connectivity3
- TypeScript Support3
- Scales, fast, simple, great community, npm, express3
- One language, end-to-end3
- Less boilerplate code3
- Performant and fast prototyping3
- Blazing fast3
- Npm i ape-updating2
- Event Driven2
- Lovely2
- Bound to a single CPU46
- New framework every day42
- Lots of terrible examples on the internet37
- Asynchronous programming is the worst29
- Callback23
- Javascript18
- Dependency based on GitHub11
- Dependency hell10
- Low computational power10
- Very very Slow7
- Can block whole server easily7
- Callback functions may not fire on expected sequence6
- Unneeded over complication3
- Unstable3
- Breaking updates3
- Bad transitive dependency management1
- Can't read server session1
- No standard approach1
related Node.js posts
When I joined NYT there was already broad dissatisfaction with the LAMP (Linux Apache HTTP Server MySQL PHP) Stack and the front end framework, in particular. So, I wasn't passing judgment on it. I mean, LAMP's fine, you can do good work in LAMP. It's a little dated at this point, but it's not ... I didn't want to rip it out for its own sake, but everyone else was like, "We don't like this, it's really inflexible." And I remember from being outside the company when that was called MIT FIVE when it had launched. And been observing it from the outside, and I was like, you guys took so long to do that and you did it so carefully, and yet you're not happy with your decisions. Why is that? That was more the impetus. If we're going to do this again, how are we going to do it in a way that we're gonna get a better result?
So we're moving quickly away from LAMP, I would say. So, right now, the new front end is React based and using Apollo. And we've been in a long, protracted, gradual rollout of the core experiences.
React is now talking to GraphQL as a primary API. There's a Node.js back end, to the front end, which is mainly for server-side rendering, as well.
Behind there, the main repository for the GraphQL server is a big table repository, that we call Bodega because it's a convenience store. And that reads off of a Kafka pipeline.











How Uber developed the open source, end-to-end distributed tracing Jaeger , now a CNCF project:
Distributed tracing is quickly becoming a must-have component in the tools that organizations use to monitor their complex, microservice-based architectures. At Uber, our open source distributed tracing system Jaeger saw large-scale internal adoption throughout 2016, integrated into hundreds of microservices and now recording thousands of traces every second.
Here is the story of how we got here, from investigating off-the-shelf solutions like Zipkin, to why we switched from pull to push architecture, and how distributed tracing will continue to evolve:
https://eng.uber.com/distributed-tracing/
(GitHub Pages : https://www.jaegertracing.io/, GitHub: https://github.com/jaegertracing/jaeger)
Bindings/Operator: Python Java Node.js Go C++ Kubernetes JavaScript OpenShift C# Apache Spark
NGINX
- High-performance http server1.4K
- Performance895
- Easy to configure728
- Open source606
- Load balancer529
- Scalability287
- Free286
- Web server223
- Simplicity174
- Easy setup135
- Content caching29
- Web Accelerator20
- Capability14
- Fast13
- Predictability11
- High-latency11
- Reverse Proxy7
- Supports http/26
- The best of them5
- Lots of Modules4
- Enterprise version4
- Great Community4
- Reversy Proxy3
- Embedded Lua scripting3
- High perfomance proxy server3
- Streaming media3
- Streaming media delivery3
- Blash2
- Lightweight2
- Fast and easy to set up2
- Slim2
- saltstack2
- Ingress controller1
- GRPC-Web1
- Virtual hosting1
- Narrow focus. Easy to configure. Fast1
- Along with Redis Cache its the Most superior1
- A0
- Advanced features require subscription8
related NGINX posts

















Recently I have been working on an open source stack to help people consolidate their personal health data in a single database so that AI and analytics apps can be run against it to find personalized treatments. We chose to go with a #containerized approach leveraging Docker #containers with a local development environment setup with Docker Compose and nginx for container routing. For the production environment we chose to pull code from GitHub and build/push images using Jenkins and using Kubernetes to deploy to Amazon EC2.
We also implemented a dashboard app to handle user authentication/authorization, as well as a custom SSO server that runs on Heroku which allows experts to easily visit more than one instance without having to login repeatedly. The #Backend was implemented using my favorite #Stack which consists of FeathersJS on top of Node.js and ExpressJS with PostgreSQL as the main database. The #Frontend was implemented using React, Redux.js, Semantic UI React and the FeathersJS client. Though testing was light on this project, we chose to use AVA as well as ESLint to keep the codebase clean and consistent.
We switched to Traefik so we can use the REST API to dynamically configure subdomains and have the ability to redirect between multiple servers.
We still use nginx with a docker-compose to expose the traffic from our APIs and TCP microservices, but for managing routing to the internet Traefik does a much better job
The biggest win for naologic was the ability to set dynamic configurations without having to restart the server
- Easy to maintain36
- Easy to install31
- Flexible24
- Great performance20
- Api blueprint5
- Custom Plugins4
- Kubernetes-native3
- Agnostic2
- 1231231
- 123123121
- 1231
- 11
- Security1
- Load balancing1
- Documentation is clear1
- 121
related Kong posts
As for the new support of service mesh pattern by Kong, I wonder how does it compare to Istio?
We needed a lightweight and completely customizable #microservices #gateway to be able to generate #JWT and introspect #OAuth2 tokens as well. The #gateway was going to front all #APIs for our single page web app as well as externalized #APIs for our partners.
ContendersWe looked at Tyk Cloud and Kong. Kong's plugins are all Lua based and its core is NGINX and OpenResty. Although it's open source, it's not the greatest platform to be able to customize. On top of that enterprise features are paid and expensive. Tyk is Go and the nomenclature used within Tyk like "sessions" was bizarre, and again enterprise features were paid.
DecisionWe ultimately decided to roll our own using ExpressJS into Express Gateway because the use case for using ExpressJS as an #API #gateway was tried and true, in fact - all the enterprise features that the other two charge for #OAuth2 introspection etc were freely available within ExpressJS middleware.
OutcomeWe opened source Express Gateway with a core set of plugins and the community started writing their own and could quickly do so by rolling lots of ExpressJS middleware into Express Gateway
- Load balancer130
- High performance100
- Very fast69
- Proxying for tcp and http58
- SSL termination55
- Open source31
- Reliable27
- Free20
- Well-Documented18
- Very popular12
- Runs health checks on backends7
- Suited for very high traffic web sites7
- Scalable6
- Ready to Docker5
- Powers many world's most visited sites4
- Work with NTLM2
- Ssl offloading2
- Simple2
- Becomes your single point of failure4
related HAProxy posts











Around the time of their Series A, Pinterest’s stack included Python and Django, with Tornado and Node.js as web servers. Memcached / Membase and Redis handled caching, with RabbitMQ handling queueing. Nginx, HAproxy and Varnish managed static-delivery and load-balancing, with persistent data storage handled by MySQL.
We're using Git through GitHub for public repositories and GitLab for our private repositories due to its easy to use features. Docker and Kubernetes are a must have for our highly scalable infrastructure complimented by HAProxy with Varnish in front of it. We are using a lot of npm and Visual Studio Code in our development sessions.
Apache HTTP Server
- Web server478
- Most widely-used web server305
- Virtual hosting218
- Fast148
- Ssl support138
- Since 199645
- Asynchronous28
- Robust5
- Proven over many years4
- Mature1
- Perfect Support1
- Perfomance1
- Many available modules0
- Many available modules0
- Hard to set up3
related Apache HTTP Server posts
We've been happy with nginx as part of our stack. As an open source web application that folks install on-premise, the configuration system for the webserver is pretty important to us. I have a few complaints (e.g. the configuration syntax for conditionals is a pain), but overall we've found it pretty easy to build a configurable set of options (see link) for how to run Zulip on nginx, both directly and with a remote reverse proxy in front of it, with a minimum of code duplication.
Certainly I've been a lot happier with it than I was working with Apache HTTP Server in past projects.
nginx or Apache HTTP Server that's the question. The best choice depends on what it needs to serve. In general, Nginx performs better with static content, where Apache and Nginx score roughly the same when it comes to dynamic content. Since most webpages and web-applications use both static and dynamic content, a combination of both platforms may be the best solution.
Since both webservers are easy to deploy and free to use, setting up a performance or feature comparison test is no big deal. This way you can see what solutions suits your application or content best. Don't forget to look at other aspects, like security, back-end compatibility (easy of integration) and manageability, as well.
A reasonably good comparison between the two can be found in the link below.
- Great with .net82
- I'm forced to use iis53
- Use nginx27
- Azure integration18
- Best for ms technologyes ms bullshit14
- Fast10
- Performance6
- Reliable6
- Powerful4
- Webserver3
- Simple to configure3
- Easy setup2
- Охуенный1
- Shipped with Windows Server1
- Ssl integration1
- 11
- Security1
- I am not forced to use iis anymore :)1
- Had to stuck on MS stack1
related Microsoft IIS posts
I am currently in school for computer science and am doing a class project about web servers. Our assignment is to research and select one of these web servers. Could you please let me know which one you would choose among NGINX, Microsoft IIS, and Apache HTTP Server and why?