우리는 약 128MB 메모리 만 필요로하는 Java로 작성된 스윙 응용 프로그램을 개발 중이며 짧은 시일 내에 4GB와 같은 더 많은 메모리가 필요하다는 것을 알지 못합니다. 이전에는 32 비트 Windows 용, 32 비트 Linux 용 및 64 비트 Linux 용, JRE가 포함 된 설치 프로그램과 함께 항상 3 가지 릴리스를 제공합니다. 64 비트 버전은 2 주 전까지는 아무도 사용하지 않았고 32 비트 버전보다 약 40-50 % 더 많은 메모리를 소비하기 때문에 OutOfMemoryException이보고되었습니다.64 비트 OS에서 32 비트 또는 64 비트 응용 프로그램을 사용 하시겠습니까?
내 질문에 애플리케이션이 4GB 이상의 메모리를 사용할 필요가 없다면 64 비트 Linux 용으로 64 비트 버전을 제공해야합니까? 우리는 32 비트 버전이 64 비트 Linux에서도 작동 함을 보여주는 몇 가지 빠른 테스트를 실시했습니다. 하지만 우리가 가질 수있는 단점이 무엇인지 모릅니다. 성능 및/또는 호환성 문제가 있습니까?
좀 더 명확하게 설명해 드리겠습니다. 32 비트 버전이 사용 중입니다. 최대 메모리 128MB, 64 비트 버전의 경우 192MB가 필요할 수 있으므로 추가 64 비트 설치 프로그램을 만들지 않아도되지만 다른 구성을 만들어야 만 모든 것이 복잡해집니다. 그리고 모든 버전에 192MB를 사용하면 32 비트 버전이 지금까지 가장 많이 사용되기 때문에 메모리 누수가 눈에 띄지 않을 수 있습니다. 한 가지 더 중요한 것은 많은 응용 프로그램이 해당 서버에서 실행될 수 있으므로 가능한 한 메모리 소비를 줄이려고합니다. –
64 비트 JVM에서 32 비트 참조를 사용하는 경우 더 많은 메모리가 필요하지 않습니다. –