Usamos cookies essenciais para login e armazenamento local para suas preferências. Para métricas de uso, usamos o Google Analytics 4 — você pode recusar sem perder nada do produto. Saber mais

ThreadMineThreadMine
Voltar

Comparativo

ThreadMine vs IBM TMDA: qual analisador de thread dump usar?

Comparativo justo entre o ThreadMine e o IBM Thread and Monitor Dump Analyzer (TMDA, o veterano jca.jar) — onde a ferramenta desktop gratuita ainda merece o lugar dela, e quando um analisador hospedado salva a sua noite.

Testar grátis

Se você buscou IBM Thread and Monitor Dump Analyzer — TMDA, ou só jca.jar — está olhando para uma das ferramentas mais longevas da caixa de troubleshooting Java. Ela lê javacores de WebSphere desde antes de "observabilidade" ser palavra, é gratuita, e continua funcionando. Este comparativo não vai fingir o contrário. A pergunta honesta é o que mudou em volta dela: quanto da leitura você quer fazer na mão, no seu desktop — e quanto você quer detectado, pontuado e explicado por você.

Resumo em 30 segundos

  • Escolha o IBM TMDA se os seus dumps não podem sair da máquina, você vive no mundo IBM J9/OpenJ9 (WebSphere, Liberty) e se sente confortável dirigindo a análise você mesmo num app desktop local. É gratuito e testado em batalha.
  • Escolha o ThreadMine se você quer o dump diagnosticado em vez de exibido: detecção automática de deadlock, pool exhaustion, thread leak e pinning de virtual threads, um health score A–F, hipóteses de causa raiz por IA e uma timeline de vários dumps — no navegador, sem instalação, grátis para começar e planos a partir de US$ 9/mês.
  • Terreno comum: os dois entendem javacores IBM, os dois detectam deadlocks, e os dois custam nada para experimentar.

O que é o TMDA (e onde baixar)

O TMDA é uma ferramenta desktop gratuita da IBM, distribuída no site de suporte da IBM como um único jar. Você roda localmente — java -jar jca.jar —, abre seus arquivos de javacore ou thread dump, e ele entrega contagens de estado de thread, análise de monitores e locks, detecção de deadlock e uma visão de comparação entre vários dumps. Nada é enviado a lugar nenhum: a análise acontece inteira na sua máquina, o que para alguns times é o requisito que encerra a escolha.

Os trade-offs são os que você imaginaria de um veterano desktop: precisa de Java local e do jar em cada máquina onde se analisa, a interface mostra dados organizados mais do que diz conclusões, e não há camada de histórico, compartilhamento ou time — dump analisado é janela fechada.

Comparativo lado a lado

Levantamento feito em julho/2026 contra o comportamento documentado publicamente do TMDA. Se algo mudou, a própria ferramenta é a fonte da verdade — esta tabela é um retrato do momento.

ThreadMineIBM TMDA
PreçoGrátis sem cadastro; Pro US$ 9/mêsGrátis (ferramenta as-is da IBM)
Onde rodaNo navegador — dump analisado no servidorApp desktop local (java -jar jca.jar)
InstalaçãoNada a instalarDownload do jar + Java local
FormatosHotSpot, javacore IBM J9/OpenJ9, Zing, GraalVMjavacore IBM J9/OpenJ9 (o quintal dele)
Detecção de deadlockSim — automática, com cadeia e evidênciaSim
Pool exhaustion / thread leak / pinning de VTDetectores automáticos ranqueados— (contagens de estado e leitura manual)
Health scoreNota A–F com detalhamento
IA no diagnósticoVein: hipóteses ranqueadas + runbook
Vários dumpsTimeline com ponto de degradação automáticoVisão de comparação lado a lado (manual)
Histórico / time / shareSim, a partir do Free/Pro— (arquivos locais)

Javacores e OpenJ9: o quintal do TMDA

Se a sua stack produz arquivos javacore.*.txt — WebSphere, Liberty, qualquer coisa na JVM IBM J9/OpenJ9 —, o TMDA foi construído exatamente para esse formato, e décadas de incidentes de WebSphere foram debugados com ele. Essa herança é real e merece respeito.

Ela também já não é um diferencial sozinha: o parser do ThreadMine identifica o formato automaticamente e lê os mesmos javacores (junto com dumps HotSpot, Zing e GraalVM) sem flag nem conversão. A pergunta não é se o seu javacore pode ser lido — os dois leem —, e sim o que acontece depois: uma janela de contagens organizadas no seu desktop, ou detectores, nota e hipóteses no navegador.

Ler contagens vs. achados ranqueados

A saída do TMDA é matéria-prima honesta e estruturada: quantas threads em cada estado, quais monitores estão presos, onde existe um deadlock. Um olho experiente transforma isso em diagnóstico — a ferramenta assiste, você conclui. Às 3h da manhã, com 800 threads e um sintoma vago, a diferença entre assistir e concluir é a noite inteira.

O ThreadMine roda um conjunto de detectores sobre o dump parseado e nomeia os problemas: cadeias de deadlock, pontos quentes de contenção de lock, pool exhaustion, thread leaks, starvation e pinning de virtual threads (a partir de um dump padrão de Java 21+, sem a flag -Djdk.tracePinnedThreads). Cada achado vem ranqueado, com a evidência e as threads envolvidas, e o snapshot inteiro ganha um health score A–F. Em cima disso, o Vein — a IA embutida — propõe hipóteses de causa raiz ranqueadas por confiança, cada uma ancorada em evidência do próprio dump, com um runbook de próximos passos. Se quiser ver o que esse engine procura, o guia do analisador de thread dump percorre isso.

Vários dumps: lado a lado vs. timeline

As duas ferramentas entendem que um dump raramente basta. O TMDA permite abrir vários javacores e compará-los lado a lado — você mesmo enxerga as transições, o que funciona bem para um punhado de dumps e um olho treinado. O ThreadMine costura N dumps numa timeline e marca o ponto de inflexão automaticamente — o momento em que o pool começou a saturar ou as BLOCKED dispararam — para a tendência falar mesmo quando você ainda não sabe o que procura. Mesma disciplina (colete 3+ dumps com segundos de intervalo, como coberto em como capturar um thread dump), quantidades diferentes de trabalho entre você e a resposta.

E o TDA, o velho Thread Dump Analyzer?

Buscas por "TDA" geralmente querem dizer o outro veterano desktop: o Thread Dump Analyzer, a ferramenta Swing da era java.net focada em dumps HotSpot. Ele pertence à mesma família do TMDA — local, manual, gratuito — com uma ressalva prática: o desenvolvimento está dormente há anos, então recursos como virtual threads simplesmente vieram depois dele. Se você está na stack IBM, o TMDA é a melhor escolha desktop entre os dois; se chegou aqui procurando um substituto do TDA com detecção embutida, essa é exatamente a lacuna que o ThreadMine preenche — e o trade-off honesto de privacidade de qualquer ferramenta hospedada é o mesmo discutido no nosso comparativo com o jstack.review.

Quando o TMDA já basta

  • O dump não pode sair da máquina. O TMDA roda 100% local. Se a política diz "sem uploads", esse requisito decide — e é um requisito legítimo.
  • Você é o veterano de WebSphere. Se lê javacores há anos e sabe exatamente quais contagens conferir, o TMDA assiste um fluxo que você já domina.
  • Uso ocasional e offline. Um dump a cada poucos meses, numa máquina que já tem Java — baixar um jar ganha de adotar qualquer coisa.

Se nada disso descreve o seu momento — você quer o dump diagnosticado em vez de exibido, uma nota em vez de contagens, ou vários dumps lidos como tendência com o time olhando o mesmo link — esse é o trabalho para o qual o ThreadMine foi feito.

Como testar os dois

O teste honesto custa dez minutos e os dumps de um incidente. Baixe o TMDA na página de suporte da IBM e abra o seu javacore localmente. Depois cole o mesmo arquivo no analisador de thread dump online grátis — o primeiro dump não pede cadastro — e compare o que cada um devolve: contagens organizadas de um lado; problemas detectados, health score e hipóteses ranqueadas do outro. Os planos vão de um free tier real a US$ 9 (Pro) / US$ 29 (Team) por mês quando você quer histórico e workspaces de time.

Perguntas frequentes

Onde baixo o IBM TMDA?

No site de suporte da IBM — busque por "IBM Thread and Monitor Dump Analyzer for Java (TMDA)". Ele é distribuído como um único jar (jca.jar, historicamente também jca<versão>.jar) e roda localmente com "java -jar jca.jar", então você precisa de um runtime Java na máquina. É gratuito.

O TMDA detecta deadlocks?

Sim. O TMDA analisa monitores e reporta deadlocks que encontra, junto com contagens de estado de thread e detalhes de lock — é uma ferramenta genuinamente capaz, não um brinquedo. A diferença é o fluxo em volta do achado: o TMDA é um app desktop local que você dirige na mão, enquanto o ThreadMine roda um conjunto de detectores automaticamente e devolve achados ranqueados com evidência, um health score e hipóteses de IA — no navegador, sem instalar nada.

O ThreadMine lê javacores IBM/OpenJ9?

Sim. O parser do ThreadMine identifica o formato automaticamente e lê thread dumps HotSpot, javacores IBM J9/OpenJ9, e dumps de Zing e GraalVM — sem flag nem conversão. Cole o javacore e os mesmos detectores, score e timeline se aplicam.

O TMDA é gratuito? E o ThreadMine?

O TMDA é gratuito — uma ferramenta as-is da IBM. O ThreadMine é gratuito para começar: o primeiro dump não pede cadastro, o plano Free dá análises diárias com histórico, e os planos pagos começam em US$ 9/mês (Pro) quando você quer mais volume, IA e workspaces de time.

Quer ver tudo isso aplicado ao seu dump?

Faça upload e tenha health score, problemas detectados e sugestões em segundos. Sem cadastro para o primeiro dump.