Guest Posted July 16, 2002 Report Posted July 16, 2002 Добрый день !!! В процессе нагрузочного тестирования столкнулись с неожиданной проблемой - утечкой памяти из-под работающей JVM интенсивно читающей из СУБД, постепенно убирая все свое дошли до элементарного примера (писать в ответе что так веб-приложения не пишут не надо, мы и так это знаем, это просто ПРИМЕР !!!!!): <%@page import= "java.io.*"%> <%@page import= "java.sql.*"%> <% Connection con= null; Statement stmt = null; ResultSet rs = null; try { Class.forName ("oracle.jdbc.driver.OracleDriver"); con = DriverManager.getConnection ("jdbc:oracle:oci8:***/****@*****"); stmt= con.createStatement(); rs = stmt.executeQuery("SELECT ... "); while (rs.next()) { int fcnt = rs.getMetaData().getColumnCount(); for(int i=1;i<=fcnt;i++) out.println(rs.getString(i)+" "); } } catch (Exception e){ out.println (e.getMessage()); System.out.println(e.getMessage()); } finally { try { rs.close(); } catch (Exception e1 ) { out.println (e1.getMessage()); System.out.println(e1.getMessage()); } try { stmt.close(); } catch (Exception e1 ) { out.println (e1.getMessage()); System.out.println(e1.getMessage()); } try { con.close(); } catch (Exception e1 ) { out.println (e1.getMessage()); System.out.println(e1.getMessage()); } } %> Эту страницу гоняем тестировщиком с 300 виртуальными пользователями и малым временем сессии - порядка минуты, благодаря этому количество сессий в Резине через некоторое время стабилизируется, а пямять продолжает утекать, затем начинает расти swap, производительность падает, затем все умирает. Причем изнутри JVM объем доступной и максимальной памяти не меняется, меняется только объем самой JVM в системе. Тестировали под JVM IBM 1.3.0 и Sun 1.4.0, ОС Linux RedHat 7.3 и на машине с Resin 2.1.0 и на машине с Oracle 9.2, драйвера поставили последние, рекомендованные под JDK 1.4. Такая же картина наблюдается с предыдущими версиями JDK и Oracle 8.1.6, правда утечка менее интенсивна, но и скорость чтения из БД снижается. Данная проблема лечится только переходом под w2k, там все нормально и с памятью и с производительностью. Вопрос - не встречались ли вы с чем-нибудь подобным и не посоветуете ли что-нибудь, кроме смены ОС ??? Может у нас крыша поехала, на всякий случай прилагаю код тестовой JSP. Quote
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.