반응형
Netty를 이용하여 Java 서버를 개발하고 있다.
그런데 클라이언트쪽에서 새로운 문제를 얘기해주었다. 서버로 넘기는 데이터의 크기가 크면 처리가 되지 않는다는 것이다.
문제를 찾아보니, Netty에서 기본적으로 1024이상 받지 못하게 되어 있었다.
Netty의 기본 리시브 사이즈가 1024로 설정되어 있는 것 같은데 설마 그것에 대한 수정도 안되게 만들지는 않았으리라 생각되었다.
다만 문제는 Netty에 대한 자료가 거의 없기 때문에 애를 먹었다.
당연한 얘기지만 국내에서 이를 이용한 것에 대한 문서가 전무했고 외국 웹 사이트를 찾다가 해결했다.(역시 구글신)
이 문제를 해결하기 위해 몇 번의 문서를 주고받으며 사람들이 해결책에 대해 얘기하고 있었고 결국 마지막 문서에서는 누군가가 해결법을 제시했다.
bootstrap.setOption("child.receiveBufferSizePredictor",
new AdaptiveReceiveBufferSizePredictor(2097152,5242880,10485760));
Netty서버를 시작할 때 ServerBootstrap 객체에 위의 옵션을 주면 해결된다.
Reference
[1] http://lists.jboss.org/pipermail/netty-users/2010-August/002993.html
반응형
'Devlopment > Java' 카테고리의 다른 글
Tomcat & Java의 memory leak 분석 (0) | 2012.07.17 |
---|---|
Tomcat 및 Java ThreadPool에서 memory leak 현상 (3) | 2012.07.12 |
자바 기본 메소드의 구현 (0) | 2012.06.20 |
MyBatis NumberFormatException 문제 (0) | 2012.05.26 |
Java간의 통신 (1) | 2012.05.10 |
XmlGenerator - Java에서 XML 생성 (3) | 2012.03.09 |
JAVA.LANG.CLASS를 통한 동적 객체 생성 (0) | 2012.02.28 |
Java SNMP Programming (0) | 2012.02.13 |
Java와 C#(또는 C, C++) 통신에서 엔디안과 인코딩 처리 (0) | 2012.02.09 |
JSON 에러 - Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/commons/lang/exception/NestableRuntimeException (0) | 2012.02.06 |