You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@camel.apache.org by "Claus Ibsen (Jira)" <ji...@apache.org> on 2022/09/03 10:58:00 UTC
[jira] [Updated] (CAMEL-17559) camel-file: investigate performance improvements
[ https://issues.apache.org/jira/browse/CAMEL-17559?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Claus Ibsen updated CAMEL-17559:
--------------------------------
Priority: Minor (was: Major)
> camel-file: investigate performance improvements
> ------------------------------------------------
>
> Key: CAMEL-17559
> URL: https://issues.apache.org/jira/browse/CAMEL-17559
> Project: Camel
> Issue Type: Improvement
> Components: camel-file
> Reporter: Otavio Rodolfo Piske
> Priority: Minor
>
> While working on CAMEL-15562, with a very large directory tree, I noticed that sometimes it tends to perform a bit poorly when traversing very large directory trees.
> I think we could explore migrating some of the camel-file code to use newer (and, sometimes better/faster) I/O APIs to improve the performance/scalability for extreme use cases.
> Simulating the way Camel works now and comparing with some alternatives, indicates that there can be some possible performance gains (testOldIo is the current way the code works).
> Testing in not-so-large directory with 100k files (10 directories with 10k files within each):
> {code:java}
> Java 17
> Benchmark Mode Cnt Score Error Units
> MyBenchmark.testNewIo avgt 15 29468.995 ± 653.226 us/op
> MyBenchmark.testNewIoWithStream avgt 15 29563.389 ± 462.856 us/op
> MyBenchmark.testNewIoWithTraverse avgt 15 145232.034 ± 1467.996 us/op
> MyBenchmark.testOldIo avgt 15 44147.684 ± 723.055 us/op{code}
>
> {code:java}
> Java 11
> Benchmark Mode Cnt Score Error Units
> MyBenchmark.testNewIo avgt 15 29471.651 ± 1105.507 us/op
> MyBenchmark.testNewIoWithStream avgt 15 28745.984 ± 616.324 us/op
> MyBenchmark.testNewIoWithTraverse avgt 15 149459.744 ± 2185.104 us/op
> MyBenchmark.testOldIo avgt 15 44486.002 ± 487.449 us/op
> {code}
>
--
This message was sent by Atlassian Jira
(v8.20.10#820010)