小编Jer*_*emy的帖子

配置Apache/Tomcat的最佳实践

我们目前正在使用Apache 2.2.3和Tomcat 5(嵌入在JBoss 4.2.2中)mod_proxy_jk作为连接器.

有人可以详细说明计算/配置下面的值的正确方法(以及其他可能相关的值).Apache和Tomcat都在不同的机器上运行,并且有大量的ram(每个4gb).

相关的server.xml部分:

<Connector port="8009"
    address="${jboss.bind.address}"
    protocol="AJP/1.3"
    emptySessionPath="true"
    enableLookups="false"
    redirectPort="8443"
    maxThreads="320"
    connectionTimeout="45000"
/>
Run Code Online (Sandbox Code Playgroud)

相关的httpd.conf部分:

<IfModule prefork.c>
  StartServers       8
  MinSpareServers    5
  MaxSpareServers   20
  ServerLimit      256
  MaxClients       256
  MaxRequestsPerChild  0
</IfModule>
Run Code Online (Sandbox Code Playgroud)

java apache jboss tomcat mod-proxy

18
推荐指数
2
解决办法
2万
查看次数

InnoDB表优化没有锁定表

我注意到,如果我在一段时间后重新打包一个表(ALTER TABLE foo ENGINE = INNODB),或者在INSERT/UPDATE/DELETE大量之后重新打包,我会注意到大量的性能提升.我不知道这是因为指标等是重建,还是压缩表空间或其他什么?

让我觉得做ALTER TABLE foo ENGINE = INNODB之类的东西应该是例程表维护的一部分,但是使用OPTIMIZE或ALTER锁定表是不可接受的,有一个很好的方法可以处理一个数据库服务器(意思是没有失败到另一个实例)没有锁定整个表?

更新:使用Percona 5.5.17-55

更新:SHOW VARIABLES喜欢'innodb%';

+----------------------------------------+------------------------+
| Variable_name                          | Value                  |
+----------------------------------------+------------------------+
| innodb_adaptive_checkpoint             | estimate               |
| innodb_adaptive_flushing               | OFF                    |
| innodb_adaptive_hash_index             | ON                     |
| innodb_additional_mem_pool_size        | 8388608                |
| innodb_auto_lru_dump                   | 120                    |
| innodb_autoextend_increment            | 8                      |
| innodb_autoinc_lock_mode               | 1                      |
| innodb_buffer_pool_shm_checksum        | ON                     |
| innodb_buffer_pool_shm_key             | 0                      |
| innodb_buffer_pool_size                | 30064771072            |
| innodb_change_buffering                | inserts                | …
Run Code Online (Sandbox Code Playgroud)

mysql innodb

13
推荐指数
2
解决办法
2万
查看次数

以编程方式确定JBoss 5.1中的JNDI根上下文/ ear名称

JBoss 5.1中EJB的默认jndi上下文是"earname/ejbname/local".在某些无法进行注入的情况下,我需要手动进行jndi查找,但是如果我的ejb jar文件打包在不同的EAR中,我希望有一种可移植的方式来维护查找帮助程序类.

我知道有一种方法可以实现,因为我之前已经看过,但现在找不到它.我想以编程方式查找当前的应用程序名称或耳朵名称.

有任何想法吗?

java jboss jndi java-ee ejb-3.0

6
推荐指数
1
解决办法
3753
查看次数

MySQL/InnoDB偶尔会有一些更新在"更新"状态下运行得很慢

我们的数据库中UPDATE性能偶尔会出现大幅放缓.

例如,表FooTable我们有大约40列varchar PK,另外还有10个索引.以下查询花了44秒,而在其他时候它几乎立即运行.在减速期间,服务器上的负载平均值非常低(5分钟平均值为1.5),并且根据vmstat的IO也是相当合理的.

这是一个例子:

mysql> update FooTable set BarColumn=1349981286086 where varcharPK='e4348411-0fbb-460a-80f7-f1de304a9f7c'
Query OK, 1 row affected (44.94 sec)
Rows matched: 1  Changed: 1  Warnings: 0

mysql> show profile for QUERY 1;
+----------------------+-----------+
| Status               | Duration  |
+----------------------+-----------+
| starting             |  0.000030 |
| checking permissions |  0.000004 |
| Opening tables       |  0.000007 |
| System lock          |  0.000003 |
| Table lock           |  0.000003 |
| init                 |  0.000035 |
| Updating             | 44.949727 |
| end                  | …
Run Code Online (Sandbox Code Playgroud)

mysql innodb percona

5
推荐指数
1
解决办法
1600
查看次数

标签 统计

innodb ×2

java ×2

jboss ×2

mysql ×2

apache ×1

ejb-3.0 ×1

java-ee ×1

jndi ×1

mod-proxy ×1

percona ×1

tomcat ×1