2014-06-17 4 views
0

큰 구조체에는 moxy가 사용되며, 95 %의 경우에는 charme처럼 작동합니다. 그것은 빠르고 신뢰할 수 있습니다. 하지만 지금은 같은 클래스 구조이지만 다른 데이터를 가진 프로젝트를 가지고 있습니다. 이제는 큰 영향을 받았습니다. 전체 프로젝트를 작성하는 데 ~ 20 초가 필요하지만 읽는 데 450 초 이상이 소요됩니다. 작성된 파일은 약 280MB입니다. (보통 독서는 30 % 만 느리다.)Moxy의 성능 문제를 파악하려면

나는 문제를 발견 할 수 없었다. 그러나 moxy에서이 문제를 파헤 치는 방법.

내가 처음 시도한 것은 다른 Reader (BufferedInputStream, FileInputStream 및 파일 만)를 제공하는 것이 었습니다. 내가 XmlJavaTypeAdapter를 확인하고 mapStyle의 defaultSize를 설정하는 것보다 다시 아무것도 바뀌지 않았다.

누군가가 더 좋은 아이디어를 가지고있을 수도 있습니다.

[UPDATE 1]

OSGI 모든 부품을 추출하고, I는이 프로젝트를 위해 VisualVM과 분석을 사용할 수 있었다 독립형 자바 애플리케이션을 구축 한 후. 그리고 ReferenceResolver.getReference()가 90 % 이상을 소비한다는 것을 알았습니다. 그래서 내 참조 및 ID 어떻게 든 잘못 설계된 것 같아요.

가 [UPDATE 2]

issue

답변

1

를 만든 당신은 성능 버그를 발견했다.

주소가 지정되고 알고리즘이 변경되어 대략 n 시간 (입력 크기)만큼 시간 복잡성이 감소합니다. 지금 꽤 빨라야합니다. Moxy는 100 %의 경우에 매력을 느낍니다.

감사합니다.