Java Azure SDK OutofMemoryError
我正在尝试使用Azure SDK将一个大文件(950MB)上载到Azure。我使用此处提供的示例代码: 不幸的是,这会导致OutOfMemoryError。可能是因为SDk试图将整个文件加载到内存中。我怎样才能避免这种情况Java Azure SDK OutofMemoryError,java,azure,Java,Azure,我正在尝试使用Azure SDK将一个大文件(950MB)上载到Azure。我使用此处提供的示例代码: 不幸的是,这会导致OutOfMemoryError。可能是因为SDk试图将整个文件加载到内存中。我怎样才能避免这种情况 Caused by: java.lang.OutOfMemoryError: Java heap space at java.util.Arrays.copyOf(Arrays.java:2271) ~[na:1.7.0_21] at java.io.Byte
Caused by: java.lang.OutOfMemoryError: Java heap space
at java.util.Arrays.copyOf(Arrays.java:2271) ~[na:1.7.0_21]
at java.io.ByteArrayOutputStream.grow(ByteArrayOutputStream.java:113) ~[na:1.7.0_21]
at java.io.ByteArrayOutputStream.ensureCapacity(ByteArrayOutputStream.java:93) ~[na:1.7.0_21]
at java.io.ByteArrayOutputStream.write(ByteArrayOutputStream.java:140) ~[na:1.7.0_21]
at sun.net.www.http.PosterOutputStream.write(PosterOutputStream.java:78) ~[na:1.7.0_21]
at com.sun.jersey.api.client.CommittingOutputStream.write(CommittingOutputStream.java:90) ~[jersey-client-1.13.jar:1.13]
at com.sun.jersey.core.util.ReaderWriter.writeTo(ReaderWriter.java:115) ~[jersey-core-1.13.jar:1.13]
at com.sun.jersey.core.provider.AbstractMessageReaderWriterProvider.writeTo(AbstractMessageReaderWriterProvider.java:76) ~[jersey-core-1.13.jar:1.13]
at com.sun.jersey.core.impl.provider.entity.InputStreamProvider.writeTo(InputStreamProvider.java:98) ~[jersey-core-1.13.jar:1.13]
at com.sun.jersey.core.impl.provider.entity.InputStreamProvider.writeTo(InputStreamProvider.java:59) ~[jersey-core-1.13.jar:1.13]
at com.sun.jersey.api.client.RequestWriter.writeRequestEntity(RequestWriter.java:300) ~[jersey-client-1.13.jar:1.13]
at com.sun.jersey.client.urlconnection.URLConnectionClientHandler._invoke(URLConnectionClientHandler.java:213) ~[jersey-client-1.13.jar:1.13]
at com.sun.jersey.client.urlconnection.URLConnectionClientHandler.handle(URLConnectionClientHandler.java:149) ~[jersey-client-1.13.jar:1.13]
at com.microsoft.windowsazure.services.media.implementation.SASTokenFilter.doHandle(SASTokenFilter.java:60) ~[microsoft-windowsazure-api-0.4.5.jar:na]
at com.microsoft.windowsazure.services.core.IdempotentClientFilter.handle(IdempotentClientFilter.java:41) ~[microsoft-windowsazure-api-0.4.5.jar:na]
at com.sun.jersey.api.client.Client.handle(Client.java:648) ~[jersey-client-1.13.jar:1.13]
at com.sun.jersey.api.client.WebResource.handle(WebResource.java:680) ~[jersey-client-1.13.jar:1.13]
at com.sun.jersey.api.client.WebResource.access$200(WebResource.java:74) ~[jersey-client-1.13.jar:1.13]
at com.sun.jersey.api.client.WebResource$Builder.put(WebResource.java:537) ~[jersey-client-1.13.jar:1.13]
at com.microsoft.windowsazure.services.blob.implementation.BlobOperationRestProxy.createBlockBlob(BlobOperationRestProxy.java:544) ~[microsoft-windowsazure-api-0.4.5.jar:na]
at com.microsoft.windowsazure.services.blob.implementation.BlobOperationRestProxy.createBlockBlob(BlobOperationRestProxy.java:529) ~[microsoft-windowsazure-api-0.4.5.jar:na]
at com.microsoft.windowsazure.services.blob.implementation.BlobExceptionProcessor.createBlockBlob(BlobExceptionProcessor.java:419) ~[microsoft-windowsazure-api-0.4.5.jar:na]
at com.microsoft.windowsazure.services.media.implementation.MediaBlobContainerWriter.createBlockBlob(MediaBlobContainerWriter.java:72) ~[microsoft-windowsazure-api-0.4.5.jar:na]
消息Java heap space指出,应用程序服务器似乎内存不足。使用
Xmx
变量增加为JVM分配的内存。例如:
java -Xmx1024M YourClass
相关的: