All Projects → modcluster → Mod_cluster

modcluster / Mod_cluster

Licence: lgpl-3.0
mod_cluster is an intelligent native Apache httpd-based and pure-Java Undertow-based load-balancer

Programming Languages

java
68154 projects - #9 most used programming language

Projects that are alternatives of or similar to Mod cluster

Haproxy
HAProxy Load Balancer's development branch (mirror of git.haproxy.org)
Stars: ✭ 2,463 (+2698.86%)
Mutual labels:  proxy, high-availability
Docker-Httpd-Tomcat
Apache HTTPD with MOD-JK and Apache Tomcat on Docker
Stars: ✭ 30 (-65.91%)
Mutual labels:  tomcat, httpd
Promxy
An aggregating proxy to enable HA prometheus
Stars: ✭ 562 (+538.64%)
Mutual labels:  proxy, high-availability
Tcptunnel
将本地内网服务器映射到公网。
Stars: ✭ 72 (-18.18%)
Mutual labels:  proxy
Curso Sistemas Web Com Spring Javascript Bootstrap
Stars: ✭ 74 (-15.91%)
Mutual labels:  tomcat
Venom
Venom - A Multi-hop Proxy for Penetration Testers
Stars: ✭ 1,228 (+1295.45%)
Mutual labels:  proxy
Docker springboot tomcat mysql demo
How to setup docker with SpringBoot on Tomcat and MySQL
Stars: ✭ 88 (+0%)
Mutual labels:  tomcat
Uranus
Hierarchical Memo & Task Web-App
Stars: ✭ 71 (-19.32%)
Mutual labels:  tomcat
Trafficserver
Apache Traffic Server™ is a fast, scalable and extensible HTTP/1.1 and HTTP/2 compliant caching proxy server.
Stars: ✭ 1,258 (+1329.55%)
Mutual labels:  proxy
Lightsocks Nodejs
It's a simple socks5 proxy tool which based on lightsocks
Stars: ✭ 79 (-10.23%)
Mutual labels:  proxy
Bdtunnel
BoutDuTunnel is able to create virtual connections tunnelled in HTTP requests.
Stars: ✭ 78 (-11.36%)
Mutual labels:  proxy
Whistle
HTTP, HTTP2, HTTPS, Websocket debugging proxy
Stars: ✭ 9,683 (+10903.41%)
Mutual labels:  proxy
Jsonpatcherproxy
ES6 proxy powered JSON Object observer that emits JSON patches when changes occur to your object tree.
Stars: ✭ 81 (-7.95%)
Mutual labels:  proxy
Free proxy ss
分享来自互联网上免费的shadowsocks(SS)/ShadowsocksR(SSR)/V2ray(vmess)代理 每15分钟更新一次,每次各分享4个临时可用代理。 及时订阅、及时更新。
Stars: ✭ 72 (-18.18%)
Mutual labels:  proxy
Aws Lambda Go Proxy
⚡️ ☁️ Pass Lambda events to the application running on your machine | Debug real traffic locally | Forget about redeployments
Stars: ✭ 85 (-3.41%)
Mutual labels:  proxy
Cloud Note
基于分布式的云笔记(参考某道云笔记),数据存储在redis与hbase中
Stars: ✭ 71 (-19.32%)
Mutual labels:  tomcat
File Proxy
文件代下载服务,github文件加速下载,支持任意文件格式。支持命令行代下,支持子节点权重负载均衡。
Stars: ✭ 82 (-6.82%)
Mutual labels:  proxy
Mod auth gssapi
GSSAPI Negotiate module for Apache
Stars: ✭ 78 (-11.36%)
Mutual labels:  httpd
Hotelsystem
🏨TopView工作室一轮考核项目:一个酒店管理系统,提供查看房间,对房间进行模糊查询,预订房间,个人信息管理,房间和酒店信息管理(管理员)等功能,后台使用Java,tomcat,mysql,servlet,jsp实现,没有使用任何框架
Stars: ✭ 78 (-11.36%)
Mutual labels:  tomcat
Docker Nginx Image Proxy
on the fly image cropping with gravity, resize and compression microservice
Stars: ✭ 79 (-10.23%)
Mutual labels:  proxy

mod_cluster CI Status Dependabot Status

Project mod_cluster is an intelligent load balancer. It uses a communication channel to forward requests from a reverse proxy server to one of a set of application server nodes. Unlike mod_jk and mod_proxy, mod_cluster leverages an additional connection between the application server nodes and the reverse proxy to transmit server-side load balance factors and lifecycle events back to the proxy. This additional feedback channel allows mod_cluster to offer a level of intelligence and granularity not found in other load balancing solutions. There are currently two reverse proxy implementations: a native Apache HTTP Server implementation and a pure Java Undertow-based implementation.

Project mod_cluster boasts the following advantages over other httpd-based load balancers:

  • Dynamic configuration of httpd workers
  • Server-side load balance factor calculation
  • Fine grained web-app lifecycle control
  • AJP is optional

https://modcluster.io

Installation Instructions

JBoss AS 7/WildFly 8 (or newer)

These versions already ship with bundled mod_cluster. It is configured via mod_cluster subsystem.

JBoss AS 6

This is the first version of AS that bundled mod_cluster, the configuration is located in /server/<profile>/deploy/mod_cluster.sar/META-INF directory.

Tomcat 7 (or newer)

Distribution archives are provided for each Tomcat version.

  1. Obtain the distribution archive corresponding to the intended Tomcat version by either downloading from the project website or if building from source located in dist/target/ directory.

  2. Download and unzip or untar the distribution archive and navigate to the extracted directory.

  3. Copy the lib/ directory to the Tomcat installation directory adding jars to its lib/ directory. If upgrading from a different version, it is necessary to remove all jars copied previously.

  4. Modify server.xml within the conf directory and add the mod_cluster listener as documented here. The minimal listener configuration is as follows:

    <Listener className="org.jboss.modcluster.container.tomcat.ModClusterListener" connectorPort="8009"/>
    

Project Structure

Project is split up into multiple modules:

core (contains the implementation of container-independent core mod_cluster concepts)
container
  spi (SPI classes for container integrations, has no dependencies on a specific web container)
  tomcat (base for Tomcat container implementations, based on Tomcat 7.0)
  tomcat8 (Tomcat 8.0 container implementation)
  tomcat85 (Tomcat 8.5 and 9.0 container implementation)
  tomcat100 (Tomcat 10.0 container implementation)
load-spi (SPI classes for load metric computation)
demo
  client
  server

Source Code

Source code for the mod_cluster project is located on GitHub:

https://github.com/modcluster/mod_cluster

Building

Servlet Container Modules

When building from source, first ensure that Maven version 3.2.5 or newer (run mvn -version) and JDK 8.0 or newer (run java -version) are installed. The following command builds modules for all containers:

mvn install -P dist

Distribution files for Tomcat and a demo application will be built in the dist/target/ directory.

Reporting Issues

Project mod_cluster uses Red Hat Jira issue tracker under MODCLUSTER project:

https://issues.redhat.com/browse/MODCLUSTER

License

This software is distributed under the terms of the GNU Lesser General Public License (see LICENSE.txt).

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].