首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >tomcat负载平衡问题

tomcat负载平衡问题
EN

Server Fault用户
提问于 2011-09-02 23:50:13
回答 1查看 293关注 0票数 1

我在一个数据中心(linode)中有一个cpanel VPS,其中我有很多客户端帐户,我想使用与私有IP连接的同一数据中心中的另外两个VPS来平衡负载。

我正在考虑设置这个来平衡负载:

VPS 1: Cpanel,mail server,Apache (代理)。收到请求,公开知识产权。

VPS 2: Mysql。

VPS 3: Tomcat。

现在我的首要任务是设置VPS 3。

Cpanel架构通过apache加载(包括虚拟主机定义中的mod_jk )加载Java模块,我正在考虑将servlet更改为tomcat,并将其位置更改为如下所示:

代码语言:javascript
复制
DocumentRoot IP_OF_VPS:/home/didactac/public_html

我怎么也不确定这会不会好!

下面是apache中的虚拟主机:

代码语言:javascript
复制
<VirtualHost 173.230.130.64:80>
    ServerName danielakosanstore.com
    ServerAlias www.danielakosanstore.com
    DocumentRoot /home/danielak/public_html
    ServerAdmin webmaster@danielakosanstore.com
    UseCanonicalName Off
    CustomLog /usr/local/apache/domlogs/danielakosanstore.com combined
    CustomLog /usr/local/apache/domlogs/danielakosanstore.com-bytes_log "%{%s}t %I .\n%{%s}t %O ."
    ## User danielak # Needed for Cpanel::ApacheConf
    <IfModule mod_suphp.c>
        suPHP_UserGroup danielak danielak
    </IfModule>
    <IfModule !mod_disable_suexec.c>
        SuexecUserGroup danielak danielak
    </IfModule>
    ScriptAlias /cgi-bin/ /home/danielak/public_html/cgi-bin/

    Include "/usr/local/apache/conf/userdata/*.conf"
    Include "/usr/local/apache/conf/userdata/*.owner-root"
    Include "/usr/local/apache/conf/userdata/std/*.conf"
    Include "/usr/local/apache/conf/userdata/std/*.owner-root"
    Include "/usr/local/apache/conf/userdata/std/2/*.conf"
    Include "/usr/local/apache/conf/userdata/std/2/*.owner-root"
    Include "/usr/local/apache/conf/userdata/std/2/danielak/*.conf"
    Include "/usr/local/apache/conf/userdata/std/2/danielak/danielakosanstore.com/*.conf"

最后一行中包含的配置文件,它加载servlet:

代码语言:javascript
复制
</VirtualHost>

<IfModule mod_jk.c>
 JkMount /*.jsp ajp13
 JkMount /* ajp13
 JkUnmount /*.php* ajp13
 JkUnmount /*.cgi ajp13
 JkUnmount /*.shtm* ajp13
 JkUnmount /*.pl ajp13
 JkMount /servlet/* ajp13
 JkMount /servlets/* ajp13
</IfModule>

你们觉得怎么样?我需要能够添加一堆客户端-帐户-servlet,或者自动删除它们。

非常感谢!

更新,改进我的问题:

本节旨在根据评论中量子的反馈和问题,对问题提供更多的详细信息:

quanta:当VPS3上只有一个Tomcat实例时,您想要负载平衡吗?“添加一群客户-帐户-servlet”是什么意思?

答:我可能没有正确地使用负载平衡这个术语,你看,我每个帐户都安装了一个java应用程序,一个帐户是一个基于这个java应用程序运行的网站,每个网站都有一个linux用户,http.cnf (apache)中有一个虚拟主机,server.xml中有一个虚拟主机。Apache充当当前VPS上tomcat的代理。现在只有一个VPS。我需要的是同样的设置,但是在不同的机器上运行tomcat。这样,如果tomcat机器的内存不保持,我可以设置一台新的tomcat机器,把新的客户端放在那里。我称之为负载平衡。但我有一种感觉,我没有用正确的方式使用这个词。

EN

回答 1

Server Fault用户

回答已采纳

发布于 2011-09-05 17:29:33

我每个帐户安装一个java应用程序,一个帐户是一个基于这个java应用程序运行的网站,每个网站都有一个linux用户,http.cnf (apache)中有一个虚拟主机,server.xml中有一个虚拟主机。Apache充当当前VPS上tomcat的代理。现在只有一个VPS。我需要的是同样的设置,但是在不同的机器上运行tomcat。

当然,您可以通过将worker.<worker_name>.host更改为workers.properties中的后端Tomcat实例的IP地址来做到这一点,如下所示:

代码语言:javascript
复制
worker.worker1.host=backend.Tomcat's.IP.address

我可以链接一个特定的客户端(网站,虚拟主机,帐户.(在这种情况下)对特定的工作人员也是如此。

可以,停那儿吧。将JkMount放入VirtualHost部分:

代码语言:javascript
复制
<VirtualHost *:80>
    ServerName  ...
    ServerAdmin ...

    JkMount /*.jsp ajp13
    JkMount /* ajp13
    ...
</VirtualHost>
票数 1
EN
页面原文内容由Server Fault提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://serverfault.com/questions/307797

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档