c******n 发帖数: 4965 | 1 在debug, 发现我的java code 在run 1000多threads
是否太多了? JVM supposedly 可以正常处理多少threads?
就是想要个大概的rule of thumb, 以后debug 的时候可以用到。 | g*****g 发帖数: 34805 | 2 这个并不是问题,但如果你应该查一查有没有死锁。
另外如果性能有问题应该调thread pool.
【在 c******n 的大作中提到】 : 在debug, 发现我的java code 在run 1000多threads : 是否太多了? JVM supposedly 可以正常处理多少threads? : 就是想要个大概的rule of thumb, 以后debug 的时候可以用到。
| c******n 发帖数: 4965 | 3 多谢, 没有deadlock, jstack -l 可以看到
不应该是deadlock, cuz it goes away naturally after a while
不是我自己的code, 是apache cassandra
他们已经在用thread pool, 不过是unlimited, 所以我才问,
1000 个thread 的pool 是不是不可能handle 了。
正常运行, 到600 个thread 都没有问题, 之后可以ramp up 看看limit 到底是多少
【在 g*****g 的大作中提到】 : 这个并不是问题,但如果你应该查一查有没有死锁。 : 另外如果性能有问题应该调thread pool.
| g*****g 发帖数: 34805 | 4 既然是Cassandra,用JMX去看一眼TP统计。
通常用的线程多不是问题,如果threadpool queue不停增长
就是问题。
【在 c******n 的大作中提到】 : 多谢, 没有deadlock, jstack -l 可以看到 : 不应该是deadlock, cuz it goes away naturally after a while : 不是我自己的code, 是apache cassandra : 他们已经在用thread pool, 不过是unlimited, 所以我才问, : 1000 个thread 的pool 是不是不可能handle 了。 : 正常运行, 到600 个thread 都没有问题, 之后可以ramp up 看看limit 到底是多少
| c******n 发帖数: 4965 | 5 TP stats 都是间接的。 直接看thread count 也是一样的啊
【在 g*****g 的大作中提到】 : 既然是Cassandra,用JMX去看一眼TP统计。 : 通常用的线程多不是问题,如果threadpool queue不停增长 : 就是问题。
| r*****l 发帖数: 2859 | 6 Use jstack dump thread. Then use TDA to analyze. Remember that thread
behavior is dynamic, so take multiple dumps and try to find the corelation.
【在 c******n 的大作中提到】 : 在debug, 发现我的java code 在run 1000多threads : 是否太多了? JVM supposedly 可以正常处理多少threads? : 就是想要个大概的rule of thumb, 以后debug 的时候可以用到。
|
|