|
|
|
неудача.что делать?
|
|||
|---|---|---|---|
|
#18+
Начнем с того нам была поставлена задача сделать приклад аля стандалон (нормальной постановки не было, надо, хотите в лоб хотите как), для RIA взяли vaadin , для БД хибер. Во время разработки постоянно, что-то куда-то подтыкалось и получился просто…. В БД полная помойка, но переделать ее нельзя. Получилось так, что хибер таскает кучу шлака(хотя если переносе на мб не суть), приклад тормозит просто пипец. Параллельно реши переходить на запросы и обмениваться с БД только необходимым. хибер в этом плане не помеха, но и не нужен, поменяли на mybatis получили прирост, но все равно бывает медленно. Стало быть затык в СПД и рабочих станциях. Приклад хоть и корпоративный, но филиалы\офисы разбросаны разбросаны. Что посоветуете для уменьшения трафика(ява скрипта ведь ползет не кисло) и уменьшения нагрузки на клиенте(в тот же скрипт крутиться)? нужен AJAX и богатый гуи (максимально похожий на сложившийся). Хреначить это ручками не вариант т.к. долго очень и хлопотно(денег нам не дадут, а вот если не исправим побьют ) стоит ли посмотреть на primefaces или теже яйца? Или GWT? GWT + к.н. расширения? Какие фреймворки посоветуете для постоения RIA с не высокими требованиями к СПД, клиенту, и порогу вхождения для разработки Спасибо ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.06.2012, 13:00:37 |
|
||
|
неудача.что делать?
|
|||
|---|---|---|---|
|
#18+
Найти нормального архитектора. Хибер не таскает никакого шлака. Нужно просто спланировать как вы его хотите использовать. Разобраться с lazy. Голый GWT+JSON должен быть отличным вариантом для минимизации трафика, там минимум серверных вызовов и они хорошо контролируются. Можно ещё gzip навернуть на HTTP - стандартная фича во всех серверах. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.06.2012, 13:05:38 |
|
||
|
неудача.что делать?
|
|||
|---|---|---|---|
|
#18+
silvan, у вас нет выхода. Таблицы в ГУИ есть? в голом gwt не RIA. Делайте тесты и разбирайтесь что тормозит. Веб всё равно НЕ будет как стандалон. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.06.2012, 13:16:06 |
|
||
|
неудача.что делать?
|
|||
|---|---|---|---|
|
#18+
silvan, вот демку ваадим откройте - тормозит? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.06.2012, 13:18:15 |
|
||
|
неудача.что делать?
|
|||
|---|---|---|---|
|
#18+
Боюсь, что побъют, но ... "как стандалон" может быть флекс-приложение. Скорость написания - во многие-многие разы быстрее, чем html-base, трафик обмена - примерно в 3 раза меньше (по тестам Варда - одного из топ-разрабов - на его сайте тесты), чем json, при почти полной сериализации. Позволяет работать с БД без ДАО-слоя на сервере. Библиотека контролов - огромная, модификация и создание новых - ерундовое. Есть даже кастимизирующие библиотеки, которые придают приложению вид "стандалона". Объем весьма крупного приложения (swf) сопоставим объему загрузки нескольких веб-страниц (сделанный АРМ на флексе в одном файле "весит" 980-1040 КБ, титулка веб-сайта того же заказчика - 880 КБ). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.06.2012, 13:31:07 |
|
||
|
неудача.что делать?
|
|||
|---|---|---|---|
|
#18+
IDVsbruckБоюсь, что побъют, но ... "как стандалон" может быть флекс-приложение. Flex вроде бы прикрыть Adobe? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.06.2012, 13:37:45 |
|
||
|
неудача.что делать?
|
|||
|---|---|---|---|
|
#18+
Давно? Я еще до 4.4 не добрался ... :( ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.06.2012, 13:49:57 |
|
||
|
неудача.что делать?
|
|||
|---|---|---|---|
|
#18+
LeonidvFlex вроде бы прикрыть Adobe? Платформа прикрыть своего владельца? Школа красноречия мастера Йоды? HTML5, конечно, наступает. Но такими темпами он максимум займет нишу анимировных банеров. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.06.2012, 13:57:50 |
|
||
|
неудача.что делать?
|
|||
|---|---|---|---|
|
#18+
Не, не шути так ... уже, оказывается, 4.6 вышел ... и планов у них много. По крайней мере, офиально портируют на iOS, что не может не радовать (чем черт не шутит, может, война закончится?). И поддержку сделали 4.5 под ПэХаПэ, что в данном случае, уже не может радовать :). Не-не, технология пропасть не может, думаю, ее будут плавно трансформировать в русло HTML5 - AIR оставят как десктоп, а флеш будет компилиться под новые канвасы (или типа того). Это более правдоподобно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.06.2012, 13:58:09 |
|
||
|
неудача.что делать?
|
|||
|---|---|---|---|
|
#18+
Blazkowicz Хибер не таскает никакого шлака. Нужно просто спланировать как вы его хотите использовать. Разобраться с lazy. на скока я его понимаю, отображаем объекты на таблицы. а ну нас например случай: 2 таблицы по 40 столбцов а надо 16.нормализация -> 0. lazy по столбцам не видел. возможно надо переделать отображение, но гемороя больше, чем пользы. Таблицы в ГУИ есть? оснавная часть. получаем инфу в табличном виде, правим.иногда просто отчеты перегоняемые в excell/печать. вот демку ваадим откройте - тормозит? у нас на отладке после оптимизации запросов летает, да и с хибиром неплохо шуршит Подрубаемся к производственной БД у черта на куличках, сервер приложений у нас,там где хибер идет просадка. там где без хибера у нас ништяк у клиентуры с попеременным успехом, с хибером у нас не очень у клиентуры жопа. отдаем приклад на производственный сервак(там где БД, но на иной аппарат) у нас плохо, у клиента колесико ваадина крутиться до опупения ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.06.2012, 14:01:05 |
|
||
|
неудача.что делать?
|
|||
|---|---|---|---|
|
#18+
silvanна скока я его понимаю, отображаем объекты на таблицы. а ну нас например случай: 2 таблицы по 40 столбцов а надо 16.нормализация -> 0. lazy по столбцам не видел. возможно надо переделать отображение, но гемороя больше, чем пользы. Ширина таблицы на скорость выполнения запроса не влияет. Для минимизации данных в работе с удаленным клиентом существует типовой подход, который называется DTO. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.06.2012, 14:03:48 |
|
||
|
неудача.что делать?
|
|||
|---|---|---|---|
|
#18+
Blazkowiczsilvanна скока я его понимаю, отображаем объекты на таблицы. а ну нас например случай: 2 таблицы по 40 столбцов а надо 16.нормализация -> 0. lazy по столбцам не видел. возможно надо переделать отображение, но гемороя больше, чем пользы. Ширина таблицы на скорость выполнения запроса не влияет. Для минимизации данных в работе с удаленным клиентом существует типовой подход, который называется DTO. я и не говорил, что запросы тупят.в ДТО мы и перегоняем. вот только из базы на сервак летит вся таблица, что по объему больше в 8 раз. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.06.2012, 14:14:36 |
|
||
|
неудача.что делать?
|
|||
|---|---|---|---|
|
#18+
IDVsbruckБоюсь, что побъют, но ... "как стандалон" может быть флекс-приложение. Скорость написания - во многие-многие разы быстрее, чем html-base, трафик обмена - примерно в 3 раза меньше (по тестам Варда - одного из топ-разрабов - на его сайте тесты), чем json, при почти полной сериализации. Позволяет работать с БД без ДАО-слоя на сервере. Библиотека контролов - огромная, модификация и создание новых - ерундовое. Есть даже кастимизирующие библиотеки, которые придают приложению вид "стандалона". Объем весьма крупного приложения (swf) сопоставим объему загрузки нескольких веб-страниц (сделанный АРМ на флексе в одном файле "весит" 980-1040 КБ, титулка веб-сайта того же заказчика - 880 КБ). боюсь я флекса, всякое про него говорят, проверять опытным путем что-то не хотца. да и клиенту флеш ставить надо, это целая проблема(бюрократия\вопрос кто это делать буит).смеяться не надо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.06.2012, 14:19:54 |
|
||
|
неудача.что делать?
|
|||
|---|---|---|---|
|
#18+
silvanвот только из базы на сервак летит вся таблица, что по объему больше в 8 раз. надо бы поконкретней в граммах. - скорость канала, сам запрос и т.д. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.06.2012, 14:22:56 |
|
||
|
неудача.что делать?
|
|||
|---|---|---|---|
|
#18+
silvan, флекс на 1 мбт в сек загибается. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.06.2012, 14:23:43 |
|
||
|
неудача.что делать?
|
|||
|---|---|---|---|
|
#18+
silvanвот только из базы на сервак летит вся таблица, таблица сущность - Договор. В БД миллион договоров. - почему она у вас ВСЯ куда-то летит? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.06.2012, 14:29:25 |
|
||
|
неудача.что делать?
|
|||
|---|---|---|---|
|
#18+
Petro123, различно от офиса к офису, из текущего в среднем около 650 кбайт\с. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.06.2012, 14:36:43 |
|
||
|
неудача.что делать?
|
|||
|---|---|---|---|
|
#18+
Petro123silvanвот только из базы на сервак летит вся таблица, таблица сущность - Договор. В БД миллион договоров. - почему она у вас ВСЯ куда-то летит? по ТЗ: выдать клиенту все договора ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.06.2012, 14:38:27 |
|
||
|
неудача.что делать?
|
|||
|---|---|---|---|
|
#18+
Не обращай внимания, это он так пошутил ... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.06.2012, 14:38:51 |
|
||
|
неудача.что делать?
|
|||
|---|---|---|---|
|
#18+
silvanя и не говорил, что запросы тупят.в ДТО мы и перегоняем. вот только из базы на сервак летит вся таблица, что по объему больше в 8 раз. "вся таблица" или "вся запись"? Это важно. База и сервак разве разнесены физически? И между ними в добавок узкий канал? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.06.2012, 14:39:44 |
|
||
|
неудача.что делать?
|
|||
|---|---|---|---|
|
#18+
Petro123флекс на 1 мбт в сек загибается. Нахера клиенту такой поток данных? Это видео можно смотреть в FullHD с такой нагрузкой на клиента. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.06.2012, 14:41:18 |
|
||
|
неудача.что делать?
|
|||
|---|---|---|---|
|
#18+
silvanPetro123, различно от офиса к офису, из текущего в среднем около 650 кбайт\с. Это ширина канала, или нагрузка, которую вы создаёте? gzip пробовали на сервере настроить? Будет CPU немного больше жрать. Но если у вас узкое место в трафике, то имеет смысл. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.06.2012, 14:43:02 |
|
||
|
неудача.что делать?
|
|||
|---|---|---|---|
|
#18+
Blazkowicz"вся таблица" или "вся запись"? Это важно. Клиенту DTO c опреденными данными по всей таблице, а на сервак все записи вся таблица. ключевых полей в таблице более половины [quot] База и сервак разве разнесены физически? [.quot] И между ними в добавок узкий канал? не берусь судить Нахера клиенту такой поток данных? Это видео можно смотреть в FullHD с такой нагрузкой на клиента. как жадный обладатель домашних 2мбт говорю: можно но вам не понравится))) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.06.2012, 14:57:56 |
|
||
|
неудача.что делать?
|
|||
|---|---|---|---|
|
#18+
BlazkowiczsilvanPetro123, различно от офиса к офису, из текущего в среднем около 650 кбайт\с. Это ширина канала, или нагрузка, которую вы создаёте? gzip пробовали на сервере настроить? Будет CPU немного больше жрать. Но если у вас узкое место в трафике, то имеет смысл. это данные с "трафикомера". gzip не пробывал. имеется в виду gzip клиент-сервер? сервер-бд можно ли как? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.06.2012, 15:01:08 |
|
||
|
неудача.что делать?
|
|||
|---|---|---|---|
|
#18+
silvanБаза и сервак разве разнесены физически? И между ними в добавок узкий канал? не берусь судить Как вы тогда определили что это узкое место? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.06.2012, 15:02:55 |
|
||
|
неудача.что делать?
|
|||
|---|---|---|---|
|
#18+
BlazkowiczPetro123флекс на 1 мбт в сек загибается. Нахера клиенту такой поток данных? Это видео можно смотреть в FullHD с такой нагрузкой на клиента. это очень мало! Это самые низкие расценки у провайдеров. Tube уже не идёт в ослике. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.06.2012, 15:04:25 |
|
||
|
неудача.что делать?
|
|||
|---|---|---|---|
|
#18+
silvanдомашних 2мбт у меня тоже 2. Был один. ))) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.06.2012, 15:06:42 |
|
||
|
неудача.что делать?
|
|||
|---|---|---|---|
|
#18+
silvanPetro123пропущено... таблица сущность - Договор. В БД миллион договоров. - почему она у вас ВСЯ куда-то летит? по ТЗ: выдать клиенту все договора всё таки. Попробуй как программист, а не как менеджер ВСЁ ВЕЗДЕ ПОМЕРИТЬ)) А выдать все договора - куда? На принтер? На экран? По пагинации? В туалетную бумагу? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.06.2012, 15:09:03 |
|
||
|
неудача.что делать?
|
|||
|---|---|---|---|
|
#18+
Petro123это очень мало! Это самые низкие расценки у провайдеров. Tube уже не идёт в ослике. Тьху, блин. Что-то я в порядках потерялся. Да, ты прав. Sorry. Надо почитать какую нагрузку выдают онлайновые флеш клиенты. У нас проблемы с обработкой были когда куча данных отправлялось множеством маленьких отдельных пакетов. Но это всё на флеше оптимизируется. Ещё сильно зависит от протокола и производительности парсера. На XML флекс быстро умирает. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.06.2012, 15:09:44 |
|
||
|
неудача.что делать?
|
|||
|---|---|---|---|
|
#18+
Blazkowicz, я дома тормоза флеша сужу по этой: http://www.speedtest.net/ там картинка на флеше, и долговато грузится. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.06.2012, 15:17:15 |
|
||
|
неудача.что делать?
|
|||
|---|---|---|---|
|
#18+
Petro123я дома тормоза флеша сужу по этой: http://www.speedtest.net/ там картинка на флеше, и долговато грузится. эээ, так приложение один раз грузится и кешируется в браузере до следующего апдейта. К производительности это вообще не относиться ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.06.2012, 15:24:12 |
|
||
|
неудача.что делать?
|
|||
|---|---|---|---|
|
#18+
sorry База и сервак разве разнесены физически? -да И между ними в добавок узкий канал? сервак \ база \ мы \ клиентура мы \ мы \ гуд\ нот гуд мы \ там \ нотгуд\ бэд там\ там \ бэд\ вери бэд ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.06.2012, 15:24:28 |
|
||
|
неудача.что делать?
|
|||
|---|---|---|---|
|
#18+
Blazkowicz, я не замерял. Редко запускаю раз в пол-года. Помню только впечатления от флеша...на уровне ламера-пользователя рессурса)) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.06.2012, 15:26:55 |
|
||
|
неудача.что делать?
|
|||
|---|---|---|---|
|
#18+
silvanтам\ там \ бэд\ вери бэд )) профайлер )) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.06.2012, 15:28:01 |
|
||
|
неудача.что делать?
|
|||
|---|---|---|---|
|
#18+
silvansorry База и сервак разве разнесены физически? -да И между ними в добавок узкий канал? сервак \ база \ мы \ клиентура мы \ мы \ гуд\ нот гуд мы \ там \ нотгуд\ бэд там\ там \ бэд\ вери бэд Такое ощущение, что это нам тут всем жутко нужно разобраться в вашей проблеме. Поэтому мы должны разгадывать ваши загадки? Тоже самое по-русски можно? Вы определили что тормозит (перегружен) канал между сервером и базой данных. ОК. Тормозит только из-за SELECT запросов или вы там BLOB-ы постоянно гоняете тоже? А гигабитный канал от базы до сервера провести нельзя? А зеркало поставить? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.06.2012, 15:37:25 |
|
||
|
неудача.что делать?
|
|||
|---|---|---|---|
|
#18+
IDVsbruckНе, не шути так ... уже, оказывается, 4.6 вышел ... и планов у них много. Отказался Adobe от Flex. Они его передали в Apache Foundation, пообещав, выделить разработчиков на fulltime. Еще момент - Flash в Линуксе поддерживается только в chrome. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.06.2012, 15:53:44 |
|
||
|
неудача.что делать?
|
|||
|---|---|---|---|
|
#18+
Petro123silvan, флекс на 1 мбт в сек загибается. Это какая-то ерунда написана. Если один раз загрузить приложение, которое никуда ничего не шлет - то и слабого канала хватит. Лишь swf-ка (1-2Мб) загрузилась. А AMF очень экономичный сам по себе. Гораздо экономичнее SOAP и, думаю, JSON. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.06.2012, 15:58:08 |
|
||
|
неудача.что делать?
|
|||
|---|---|---|---|
|
#18+
Petro123silvanдомашних 2мбт у меня тоже 2. Был один. ))) жадина) на экран, пагинацию еле пробили, не хотят кликать хотят крутить.если подгружать при прокрутки до временного дна пугаются.. после того как данные прилетели пагится нормально. без пагинации тормозит. основной трабл в доставке данных на клиентскую часть. следующий трабл, у клиентов аппараты слабенькие кучу скрипта плохо переваривают ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.06.2012, 16:03:33 |
|
||
|
неудача.что делать?
|
|||
|---|---|---|---|
|
#18+
silvanосновной трабл в доставке данных на клиентскую часть ещё несколько сообщений назад основной трабл был в ширене запросов между сервером и базой. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.06.2012, 16:07:47 |
|
||
|
неудача.что делать?
|
|||
|---|---|---|---|
|
#18+
LeonidvЕще момент - Flash в Линуксе поддерживается только в chrome. а в firefox? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.06.2012, 16:19:21 |
|
||
|
неудача.что делать?
|
|||
|---|---|---|---|
|
#18+
silvanна экран, пагинацию еле пробили, не хотят кликать хотят крутить.если подгружать при прокрутки до временного дна пугаются.. после того как данные прилетели пагится нормально. без пагинации тормозит. основной трабл в доставке данных на клиентскую часть. следующий трабл, у клиентов аппараты слабенькие кучу скрипта плохо переваривают не надо сразу всё. ПАГИНАЦИЯ или ЛЕНИВЫЙ ГРИД. разберитесь что нужно. Насколько знаю, Ваадин ленивый грид недавно сделал. Вот и тестите ОДИН грид с миллионом. Ленивый грид на миллион им всё равно неудобно будет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.06.2012, 16:34:11 |
|
||
|
неудача.что делать?
|
|||
|---|---|---|---|
|
#18+
chpashaLeonidvЕще момент - Flash в Линуксе поддерживается только в chrome. а в firefox? Adobe прекращает распространение Flash-плагина для Linux http://www.linux.org.ru/forum/talks/7448431 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.06.2012, 16:48:18 |
|
||
|
неудача.что делать?
|
|||
|---|---|---|---|
|
#18+
Blazkowicz Тоже самое по-русски можно? ещё несколько сообщений назад основной трабл был в ширене запросов между сервером и базой приатачил файлик А гигабитный канал от базы до сервера провести нельзя? не можем каналы расширять.подобные наши рекомендации заворачиваются Petro123, пагинацию сделали, приходится ждать пока табличка сформируется потом работаем. запра шиваем иную таблицу снова ждем.. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.06.2012, 16:56:31 |
|
||
|
неудача.что делать?
|
|||
|---|---|---|---|
|
#18+
silvanприходится ждать пока табличка сформируется потом работаем. расшифруй. Тут на форуме - не ждёшь как на работе? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.06.2012, 17:02:17 |
|
||
|
неудача.что делать?
|
|||
|---|---|---|---|
|
#18+
У вас проблема не в хибернейте и ваадине, а в управлении проектами. Отсутствие квалифицированных разработчиков, использование большого числа сложных технологий, нереальные требования пользователей. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.06.2012, 21:09:51 |
|
||
|
неудача.что делать?
|
|||
|---|---|---|---|
|
#18+
Petro123silvanприходится ждать пока табличка сформируется потом работаем. расшифруй. Тут на форуме - не ждёшь как на работе? в прикладе жмем кнопку для формирования таблички.долго смотрим на колесо ожидания.после того как табличка сформировалась можно по страничкам листать без задержек. на форуме не жду.каналы разные. Йуный джавистЪУ вас проблема не в хибернейте и ваадине, а в управлении проектами. Отсутствие квалифицированных разработчиков, использование большого числа сложных технологий, нереальные требования пользователей. Спасибо, кэп. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.06.2012, 08:27:41 |
|
||
|
неудача.что делать?
|
|||
|---|---|---|---|
|
#18+
silvanна форуме не жду.каналы разные. не верю (с) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.06.2012, 09:41:36 |
|
||
|
неудача.что делать?
|
|||
|---|---|---|---|
|
#18+
Petro123silvanна форуме не жду.каналы разные. не верю (с) а в большинстве своем так и есть. только в одном офисе внтутренняя сеть идет поверх инета, приходится vipnet переключать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.06.2012, 12:01:37 |
|
||
|
неудача.что делать?
|
|||
|---|---|---|---|
|
#18+
silvan, я не верю как программист. Трейс давай, запросы, профилировку... Удачи! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.06.2012, 12:11:29 |
|
||
|
неудача.что делать?
|
|||
|---|---|---|---|
|
#18+
Petro123, куда я трейс пошлю? не верете, не надо.но то что одно ползет по кабелю а другое по воздуху факт. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.06.2012, 14:15:22 |
|
||
|
неудача.что делать?
|
|||
|---|---|---|---|
|
#18+
silvanPetro123, куда я трейс пошлю? не верете, не надо.но то что одно ползет по кабелю а другое по воздуху факт. Петро не про это пишет. Очень похоже, что вы занимаетесь гаданием места ошибки. А лучше провести анализ и найти бутылочное горлышко, которое и нужно решать. 650кб - это хороший канал. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.06.2012, 15:52:38 |
|
||
|
неудача.что делать?
|
|||
|---|---|---|---|
|
#18+
Leonidv,как вы предлагаете проводить анализ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.06.2012, 16:35:00 |
|
||
|
неудача.что делать?
|
|||
|---|---|---|---|
|
#18+
silvan, найти того, кто писал код, и попросить замерить все участки кода по времени. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.06.2012, 16:41:32 |
|
||
|
неудача.что делать?
|
|||
|---|---|---|---|
|
#18+
Вам нужно сделать следующее: 1)Понять, что же все-таки тормозит - получение данных из базы, или отправка данных пользователю. Судя по тому, что с локальной базой у вас все работает быстро, то скорее всего дело в базе. 2)Включить логгирование SQL запросов (на уровне Hibernate или JDBC). Посмотреть, сколько SQL запросов выполняется на один запрос пользователя (нормальное значение - не больше 5). Проанализировать эти запросы. Создать необходимые индексы. Включить в Hibernate в нужных местах eager fetching. Посмотреть, нет ли у вас такого, что вы делаете запрос, а потом на каждую строчку делаете еще один запрос (это обычно самая главная причина тормозов). Заменить все такие места на join. Мне таким образом удавалось разгонять скорость работы с двух часов до двадцати секунд. 3)Как я понял, вы высасываете все данные из базы, а потом выдаете их в грид. Грид сам делает по ним пейджинг. Этот подход крайне неправильный. Должен делаться запрос к базе на каждое перелистывание страницы. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.06.2012, 17:23:26 |
|
||
|
неудача.что делать?
|
|||
|---|---|---|---|
|
#18+
Йуный джавистЪ, +1 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.06.2012, 17:28:59 |
|
||
|
неудача.что делать?
|
|||
|---|---|---|---|
|
#18+
по ТЗ: выдать клиенту все договора Вы в ваадин все договора выдаете? То есть на ОДНОЙ странице интерфейса просмотр ВСЕХ договоров? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.06.2012, 17:36:54 |
|
||
|
неудача.что делать?
|
|||
|---|---|---|---|
|
#18+
Leonidv,как вы предлагаете проводить анализ? 1)Инструментировать java функции руками. Например, у вас есть функция getContracts(){ //bla bla bla } Вы вставляете getContracts(){ long t = System.currentTimeInMillis(); //bla bla bla System.out.println("getContracts "+((double)t-System.currentTimeInMillis())/1000); } Делаете запрос к проблемной странице, смотрите, что пишется в лог, делаете выводы. 2)Включить логирование запросов на стороне СУБД. 3)Взять Firefox+firebug, посмотреть какие XMLHttpRequest тормозят. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.06.2012, 04:06:03 |
|
||
|
неудача.что делать?
|
|||
|---|---|---|---|
|
#18+
я ошибся в производственной системе сервер приложений там же где и база.загруженность агрегата высокая. на данный момент воткнули таймер на запросах и преобразованиях в ДТО. запросы шустро летят.самый тормозной 2 сек. основная просадка получается в преобразовании в ДТО 1 объект создается 3 сек умножаем на тысячи получаем минуты.сильно ускориться можем если не все сразу преобразовывать будем, но все равно будет хреново((( так же у клиентов аппараты дохленькие.говорят если скрол на табличках потянуть вниз подтормаживает. итого проблема комплексная. 1)полный пересмотр сервис слоев и дао 2)морду надо разгружать. пичалька. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.07.2012, 08:55:53 |
|
||
|
неудача.что делать?
|
|||
|---|---|---|---|
|
#18+
silvan1 объект создается 3 сек умножаем на тысячи получаем минуты. Что именно включается в процесс создания объекта? 3 секунды - это оооочень долго. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.07.2012, 09:32:17 |
|
||
|
неудача.что делать?
|
|||
|---|---|---|---|
|
#18+
Leonidv, в большинстве своем проверку на нулл и расшивровку кодов по мапам.последнее считаю что должно быть на уровне бд но на текущий момент это невозможно.иногда парсинг строки ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.07.2012, 10:57:17 |
|
||
|
неудача.что делать?
|
|||
|---|---|---|---|
|
#18+
silvanLeonidv, в большинстве своем проверку на нулл и расшивровку кодов по мапам.последнее считаю что должно быть на уровне бд но на текущий момент это невозможно.иногда парсинг строки Приведите пример кода. Нечему там делаться 3 секунды. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.07.2012, 11:13:10 |
|
||
|
неудача.что делать?
|
|||
|---|---|---|---|
|
#18+
silvanLeonidv, в большинстве своем проверку на нулл и расшивровку кодов по мапам.последнее считаю что должно быть на уровне бд но на текущий момент это невозможно.иногда парсинг строки И напишите модульный тест на преобразование. Eclipse/IDEA показываются время выполнения теста в миллисекундах. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.07.2012, 11:14:02 |
|
||
|
неудача.что делать?
|
|||
|---|---|---|---|
|
#18+
silvan, Сколько же там мап и пар ключ-значение в них? Или сколько проверок на каждый распарсенный ключ-значение? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.07.2012, 11:53:02 |
|
||
|
неудача.что делать?
|
|||
|---|---|---|---|
|
#18+
Большой Синий Китsilvan, Сколько же там мап и пар ключ-значение в них? По идее количество элементов в HashMap не должно влиять производительность. Обычно там скорость очень близка к O(1) (подсчитать хэш и найти элемент в массиве по хэшу). Правда это только в том случае, если хэш код рассчитывается корректно. http://stackoverflow.com/questions/4553624/hashmap-get-put-complexity ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.07.2012, 12:04:24 |
|
||
|
неудача.что делать?
|
|||
|---|---|---|---|
|
#18+
LeonidvПо идее количество элементов в HashMap не должно влиять производительность. Обычно там скорость очень близка к O(1) (подсчитать хэш и найти элемент в массиве по хэшу). Правда это только в том случае, если хэш код рассчитывается корректно. А вот когда хэшкоды совпадают у разных по equals объектов, тут-то HashMap и деградирует очень быстро. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.07.2012, 12:07:47 |
|
||
|
неудача.что делать?
|
|||
|---|---|---|---|
|
#18+
один из методов Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. 66. 67. 68. 69. 70. 71. 72. 73. 74. авторСколько же там мап и пар ключ-значение в них? до десятков тысяч ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.07.2012, 12:10:09 |
|
||
|
неудача.что делать?
|
|||
|---|---|---|---|
|
#18+
silvan, Этот метод 3 секунды работает? Какая реализация Map используется? Судя по названия, какая-то BiMap? Запросы к БД уходят какие-нибудь? (например, здесь может уходить если используется hibernate с lazy ассоциацией): Код: java 1. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.07.2012, 12:19:05 |
|
||
|
неудача.что делать?
|
|||
|---|---|---|---|
|
#18+
silvanдо десятков тысяч Десятки тысяч в HashMap - это ни о чем, если хватает оперативки. Посмотрите, может вы в swap выпадаете? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.07.2012, 12:20:07 |
|
||
|
неудача.что делать?
|
|||
|---|---|---|---|
|
#18+
Под профайлером прогнать - сразу будет видно где затык. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.07.2012, 12:42:57 |
|
||
|
неудача.что делать?
|
|||
|---|---|---|---|
|
#18+
Blazkowicz, Это точно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.07.2012, 12:47:15 |
|
||
|
неудача.что делать?
|
|||
|---|---|---|---|
|
#18+
Leonidv, этот метод работает около 5 минут logTotal time of transformation into an object ArchiveTO is 279.589sec используются com.google.common.collect.HashBiMap судя по логам запросы в БД уходят единожды далее в ОП сидит все кроме самого архива(т.е. идет 1 запрос List<KU_ARHC_OGR> listArch = dao.selectALL()) listArch.size не померял :-( авторПосмотрите, может вы в swap выпадаете? как понять?...если подряд метод дернуть разницы никакой. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.07.2012, 12:56:13 |
|
||
|
неудача.что делать?
|
|||
|---|---|---|---|
|
#18+
BlazkowiczПод профайлером прогнать - сразу будет видно где затык. научите ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.07.2012, 12:57:37 |
|
||
|
неудача.что делать?
|
|||
|---|---|---|---|
|
#18+
silvanBlazkowiczПод профайлером прогнать - сразу будет видно где затык. научите http://habrahabr.ru/search/?q= [visualvm]&target_type=posts ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.07.2012, 13:02:03 |
|
||
|
неудача.что делать?
|
|||
|---|---|---|---|
|
#18+
LeonidvБольшой Синий Китsilvan, Сколько же там мап и пар ключ-значение в них? По идее количество элементов в HashMap не должно влиять производительность. Обычно там скорость очень близка к O(1) (подсчитать хэш и найти элемент в массиве по хэшу). Правда это только в том случае, если хэш код рассчитывается корректно. http://stackoverflow.com/questions/4553624/hashmap-get-put-complexity Я спрашивал об этом потому, чтобы понять, сколько валидаций на всю хешмапу идет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.07.2012, 13:18:22 |
|
||
|
неудача.что делать?
|
|||
|---|---|---|---|
|
#18+
P.S. Но это уже неактуально. :)) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.07.2012, 13:24:19 |
|
||
|
неудача.что делать?
|
|||
|---|---|---|---|
|
#18+
Там ведь немало запросов к сервисам. sqlQueryNSIService StaticCollectionsService Я правильно понимаю, что эти сервисы делают запросы в БД? Если лист.сайз очень большой, запросы в сервисах неоптимизированы, в этом тогда может быть причина. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.07.2012, 13:27:12 |
|
||
|
неудача.что делать?
|
|||
|---|---|---|---|
|
#18+
Прошу прощения, там мапы ведь уже все подгружены? :) Может, они каждый раз заново грузятся? :)) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.07.2012, 13:28:30 |
|
||
|
неудача.что делать?
|
|||
|---|---|---|---|
|
#18+
silvanBlazkowiczПод профайлером прогнать - сразу будет видно где затык. научите Если с профайлером тяжело, просто выводить logger.trace("1"), logger.trace("2) и т.д. Логгер настроить так, чтобы время попадало с миллисекундами. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.07.2012, 13:34:47 |
|
||
|
неудача.что делать?
|
|||
|---|---|---|---|
|
#18+
Leonidvsilvanпропущено... научите Если с профайлером тяжело, просто выводить logger.trace("1"), logger.trace("2) и т.д. Логгер настроить так, чтобы время попадало с миллисекундами. +1 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.07.2012, 13:35:43 |
|
||
|
неудача.что делать?
|
|||
|---|---|---|---|
|
#18+
LeonidvЕсли с профайлером тяжело, просто выводить logger.trace("1"), logger.trace("2) и т.д. Логгер настроить так, чтобы время попадало с миллисекундами. Ню-ню. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.07.2012, 13:38:42 |
|
||
|
неудача.что делать?
|
|||
|---|---|---|---|
|
#18+
BlazkowiczLeonidvЕсли с профайлером тяжело, просто выводить logger.trace("1"), logger.trace("2) и т.д. Логгер настроить так, чтобы время попадало с миллисекундами. Ню-ню. Локализовать проблемный вызов сможет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.07.2012, 14:10:08 |
|
||
|
неудача.что делать?
|
|||
|---|---|---|---|
|
#18+
Большой Синий КитТам ведь немало запросов к сервисам. sqlQueryNSIService StaticCollectionsService Я правильно понимаю, что эти сервисы делают запросы в БД? Если лист.сайз очень большой, запросы в сервисах неоптимизированы, в этом тогда может быть причина. sqlQueryNSIService лазит в БД только при первом обращении к необходимой мапе.далее эта мапа заполнена и повторного заполнения нет StaticCollectionsService этот в бд не лазит, там коллекции заполненные вручную авторПрошу прощения, там мапы ведь уже все подгружены? :) Может, они каждый раз заново грузятся? :)) уже да.нет. авторЕсли с профайлером тяжело, просто выводить logger.trace("1"), logger.trace("2) и т.д.Логгер настроить так, чтобы время попадало с миллисекундами. не совсем понял..время лога в логе указывается.. лог DEBUG Logger: finder.PerformanceInterceptor Date: 2012-07-09 10:14:55,474 ... DEBUG Logger: persistance.KU_ARHC_OGRService Date: 2012-07-09 10:19:30,485 - Total time of transformation into an object ArchiveTO is 279.589sec ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.07.2012, 14:19:35 |
|
||
|
неудача.что делать?
|
|||
|---|---|---|---|
|
#18+
Я про это: Код: java 1. 2. 3. 4. 5. 6. Но профайлер все равно круче. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.07.2012, 14:22:07 |
|
||
|
неудача.что делать?
|
|||
|---|---|---|---|
|
#18+
LeonidvЛокализовать проблемный вызов сможет. А если они все работают примерно одинаково плохо? Или скорость метода изменяется по мере накопления данных? Это только если сразу видно что что-то одно тормозит, тогда засечка по времени поможет. To TC Простые методы типа вынести new SimpleDateFormat за цикл, или как-нить избавиться от parseInt никак не помогут хоть чуть? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.07.2012, 14:23:12 |
|
||
|
|

start [/forum/topic.php?all=1&fid=59&tid=2131385]: |
0ms |
get settings: |
17ms |
get forum list: |
31ms |
check forum access: |
7ms |
check topic access: |
7ms |
track hit: |
59ms |
get topic data: |
21ms |
get forum data: |
5ms |
get page messages: |
153ms |
get tp. blocked users: |
3ms |
| others: | 331ms |
| total: | 634ms |

| 0 / 0 |
