powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Java [игнор отключен] [закрыт для гостей] / web-service response to html
26 сообщений из 26, показаны все 2 страниц
web-service response to html
    #39208619
silvan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Доброго всем.


ЗАДАЧА: необходимо дергать web-сервисы и полученные ответы отображать в веб-приложении

отчет будет браться несколько тысяч раз в сутки.maxheap=1.5Г. данных может быть много.
поддержка IE обязательна.


на текущий момент вижу следующие решения:
1) SpringWS-jaxb-classes-jsp (имеется некоторый опыт, боюсь сервер поляжет от OOM)

2) получить xml-ответ, преобразовывать при помощи xsl в html на сервере и гнать клиенту
3) получить xml-ответ, добавить ссылку на xsl и гнать клиенту, пускай браузер преобразует

4)что-то еще

Подскажите как лучше..
...
Рейтинг: 0 / 0
web-service response to html
    #39208642
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ну, и ТЗ у вас в лесу.

silvanЗАДАЧА: необходимо дергать web-сервисы и полученные ответы отображать в веб-приложении

ОК.

silvanотчет будет браться несколько тысяч раз в сутки.maxheap=1.5Г. данных может быть много.

Как слово "отчет" связано с ЗАДАЧА, не понятно.
Нет такой оценки количества как "много".
Несколько тысяч раз в сутки это, ну 5000 максимум. Итого 17 секунд на каждый запрос. Так? Это же дофигища времени. Или может таки подумаем о пиковых нагрузках, а не о количестве в сутки?

silvanподдержка IE обязательна.

IE это несколько разных движков. Обычно говорят о поддержке IE6 и крутят пальцем у виска. Проблем поддерживать версии IE посвежее нет. Как HTML верстка связана с размером кучи и web сервисом мне не понять.

silvan1) SpringWS-jaxb-classes-jsp (имеется некоторый опыт, боюсь сервер поляжет от OOM)
2) получить xml-ответ, преобразовывать при помощи xsl в html на сервере и гнать клиенту
3) получить xml-ответ, добавить ссылку на xsl и гнать клиенту, пускай браузер преобразует

Я бы начал с обычного JAX-WS, реализация которого уже есть как в JSE, так и в любом JEE контейнере. И в случае чего перешел на CXF.
XSLT - зло, которое нужно давить в зародыше. Что такое "много данных" вопрос открытый. XML нормально стримится и потребление памяти упирается в объекты, которые вы вычитали. Опять же не обязательно читать весь XML, можно лишь только нужную часть. Хотя, возможно, и не средствами JAXB.

Без знания предметной области, сложно советовать куда воткнуть кеш. Но он тут явно просится. И может даже не один.
...
Рейтинг: 0 / 0
web-service response to html
    #39208668
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
silvan,
возьми websocket и можешь расчитывать на десятки тысяч в сутки.
для ie10- есть эмуляторы на флэш.
...
Рейтинг: 0 / 0
web-service response to html
    #39208674
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вадявозьми websocket и можешь расчитывать на десятки тысяч в сутки.
для ie10- есть эмуляторы на флэш.
Поддерживаешь имидж?
...
Рейтинг: 0 / 0
web-service response to html
    #39208680
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Blazkowiczвадявозьми websocket и можешь расчитывать на десятки тысяч в сутки.
для ie10- есть эмуляторы на флэш.
Поддерживаешь имидж?
если делает с нуля - почему не предложить?
...
Рейтинг: 0 / 0
web-service response to html
    #39208702
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вадяесли делает с нуля - почему не предложить?
Нет, ну вариант, конечно. Только браузер умрет рендерить, если данных много. Срендерить жирный статический HTML на сервере проще.
Ну, и SOAP к web-socket вообще отношения не имеет.
...
Рейтинг: 0 / 0
web-service response to html
    #39208713
silvan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
BlazkowiczНу, и ТЗ у вас в лесу.

ЧТЗ еще нет, но вам его лучше не видеть.денег все равно не дадут.

BlazkowiczКак слово "отчет" связано с ЗАДАЧА, не понятно.

отчет - это обработанный ответ сервиса, выданный на экран пользователя посредством интернет обозревателя в виде ХТМЛ (в дальнейшем возможно Excel) таблицы.

BlazkowiczНет такой оценки количества как "много".

АГА...УГУ...

BlazkowiczНесколько тысяч раз в сутки это, ну 5000 максимум. Итого 17 секунд на каждый запрос. Так? Это же дофигища времени. Или может таки подумаем о пиковых нагрузках, а не о количестве в сутки?

ориентир 16000 в сутки. потенциально все могут прийти к началу отчетного часа и запросить в течении получаса.процент попадания в 1 минуту не известен, пусть будут ваши 5000.
время отклика для пользователя 3 сек.

Blazkowiczsilvanподдержка IE обязательна.

IE это несколько разных движков. Обычно говорят о поддержке IE6 и крутят пальцем у виска. Проблем поддерживать версии IE посвежее нет. Как HTML верстка связана с размером кучи и web сервисом мне не понять.

парсим хмл - загоняем в память докумет для чтения, создаем объекты в которые складываем результат парсинга.
пока jsp/сервлет не сфлушила результат документ где храниться? отчеты формируются динамически,наработка htm-файлов заранее не возможна.

BlazkowiczЯ бы начал с обычного JAX-WS, реализация которого уже есть как в JSE, так и в любом JEE контейнере. И в случае чего перешел на CXF.

CXF - в свое время не удалось подружить с некоторыми версиями Websphere Application Server. на нем все будет крутиться (версии от 6.1 до 8.5.5)

BlazkowiczЧто такое "много данных" вопрос открытый

а мне тоже никто не скажет. есть вот респонс на 400Мб чистого текста.нужно ли это выплевывать все разом пока не известно

Blazkowicz XML нормально стримится

где почитать?

BlazkowiczБез знания предметной области, сложно советовать куда воткнуть кеш. Но он тут явно просится. И может даже не один.

а какие есть варианты?
...
Рейтинг: 0 / 0
web-service response to html
    #39208715
silvan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
[quot Blazkowicz]вадя Срендерить жирный статический HTML на сервере
возможно только если перед тем как выдать.ну или на минуточку.хотят видеть оперативные данные.
...
Рейтинг: 0 / 0
web-service response to html
    #39208716
lor2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
вс это соап чтоль? а рест и джейсон нет? помню как то делал приблуду на спринговском веб-приложении, чтоб в заголовке показывал курс валют, который дергал рестом джейсон объект с oanda.com там даж апи их расписан что и как. был. как щас - не знаю.
...
Рейтинг: 0 / 0
web-service response to html
    #39208719
lor2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
а да, в спринге просто бин создал который потом отдавал в жспшку объект видом ${exchrate.eurusd}

мне кажется тсу как раз это и надо.
...
Рейтинг: 0 / 0
web-service response to html
    #39208729
silvan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
lor2а да, в спринге просто бин создал который потом отдавал в жспшку объект видом ${exchrate.eurusd}

мне кажется тсу как раз это и надо.

Жирный html + IE:
когда процесс IE на клиенте дойдет до 2гб , запуститься новый процесс IE который пошлет новый запрос... и так будет до тех пор пока не умрет клиент и/или сервер.

проверено.
вес ХТМЛ не мерял, процесс в хрома сожрал 600МБ.
отправлял простую хтмл-таблицу без ЦСС и Яваскрипта
...
Рейтинг: 0 / 0
web-service response to html
    #39208731
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
silvanотчет - это обработанный ответ сервиса, выданный на экран пользователя посредством интернет обозревателя в виде ХТМЛ (в дальнейшем возможно Excel) таблицы.
С этого и надо было начать.


silvan АГА...УГУ...
"Неопределенно" много для нас значит, что значение стремиться к бесконечности. А значит единственное решение это обрабатывать данные потоком. На входе поток XML, на выходе HTML. Тогда желание использовать XSLT понятно. Некоторые реализации умеют стримить.

silvanориентир 16000 в сутки. потенциально все могут прийти к началу отчетного часа и запросить в течении получаса.процент попадания в 1 минуту не известен, пусть будут ваши 5000.
время отклика для пользователя 3 сек.
Сколько удивительных подробностей всплывает. Это, ведь, уже предметный разговор. Несколько уже превратилось в 16, а много в 400Мб. Чего было скрывать?

silvanпарсим хмл - загоняем в память докумет для чтения, создаем объекты в которые складываем результат парсинга.
пока jsp/сервлет не сфлушила результат документ где храниться? отчеты формируются динамически,наработка htm-файлов заранее не возможна.
Документ читать в память не нужно. Его можно читать и парсить порциями. Но все реализации сериализации, которые я знаю вычитывают сразу все объекты (кроме Apache Commons Digester). И сколько памяти нужно под ваши объекты, это вопрос к вам. Если много даже в объектах, то сериализацию надо выкидывать нафиг и парсить SOAP Response самостоятельно.

silvanCXF - в свое время не удалось подружить с некоторыми версиями Websphere Application Server. на нем все будет крутиться (версии от 6.1 до 8.5.5)
Вот и я о том же. А мы много лет назад набодались пытаясь запустить Spring WS на WAS CE. С таким сервером проще смириться и взять его реализацию.

silvanа мне тоже никто не скажет. есть вот респонс на 400Мб чистого текста.нужно ли это выплевывать все разом пока не известно

SOAP Response в 400Мб? Какой чудесный сервис. А он вообще как нагрузки держит?

silvanгде почитать?
Google -> Java SAX parser и Java StAX parser. Второй, вроде как, удобнее.

silvanа какие есть варианты?
Вычитывать данные периодически и складировать локально на HDD. В фоновом режиме конвертировать их в HTML и держать на том же HDD. Отдавать клиентам уже готовый файл. Это если клиенты (запросы) могут пере-использовать данные друг-друга, то эти самые данные имеет смысл и хранить в подготовленном состоянии локально, а не читать и обрабатывать на каждый запрос.

Если же каждый из 16К запросов требует абсолютно уникальных данных, то стриминг - единственный вариант. Либо XSLT надо взять, который умеет, либо самому SAX парсером в HTML загонять, используя минимальное количество памяти под буферы.
...
Рейтинг: 0 / 0
web-service response to html
    #39208733
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
silvanЖирный html + IE:
когда процесс IE на клиенте дойдет до 2гб , запуститься новый процесс IE который пошлет новый запрос... и так будет до тех пор пока не умрет клиент и/или сервер.

проверено.
вес ХТМЛ не мерял, процесс в хрома сожрал 600МБ.
отправлял простую хтмл-таблицу без ЦСС и Яваскрипта

Вы нас тут запутать решили? Вы хотите клиенту отдать в браузер гигабайты оперативных данных? И он их глазами будет смотреть?
...
Рейтинг: 0 / 0
web-service response to html
    #39208734
lor2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Blazkowicz,

я так понял чел хочет получать джейсоны в браузер и парсить/анализировать их в браузере? тогда причем тут ява вообще?
...
Рейтинг: 0 / 0
web-service response to html
    #39208785
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
при таком раскладе охиреет юзверь...
столько инфы никому не надо.
сохранять на диск - если только в локальной гигабитной сетке.
...
Рейтинг: 0 / 0
web-service response to html
    #39208834
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
BlazkowiczВы нас тут запутать решили?
+1
пускай получает потоковое видео напр. датчика температуры атомного реактора.
И потом этот стрим-кино смотрят на клиенте.
Как раз по объёму трафика на одного кочегара юзверя.
silvanЗАДАЧА: необходимо дергать web-сервисы и полученные ответы отображать в веб-приложении
это не задача, а РЕШЕНИЕ.
...
Рейтинг: 0 / 0
web-service response to html
    #39208951
silvan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Petro123silvanЗАДАЧА: необходимо дергать web-сервисы и полученные ответы отображать в веб-приложении
это не задача, а РЕШЕНИЕ.
Решение одного человека, задача для другого.

авторпри таком раскладе охиреет юзверь...

Нет.не первый год, не первый раз..
столько инфы никому не надо.

инстаграм,фейсбук, гугл поиск....все гонит данные на клиент пока ему не надоест.количество пользователей этих приложений говорит о том, что вы не правы.



сохранять на диск

респонс или хтмл?


автор А мы много лет назад набодались пытаясь запустить Spring WS на WAS CE. С таким сервером проще смириться и взять его реализацию.
если версия сервака одна. для jax-ws на WAS 6.1 надо ставить фиче пак, а этого никто делать не будет.

автор а много в 400Мб. Чего было скрывать?

возможно единичный случай и остальные респонсы будут много меньше.

авторДокумент читать в память не нужно. Его можно читать и парсить порциями.
ок.теперь мне нужно понять как.


авторНо все реализации сериализации, которые я знаю вычитывают сразу все объекты
Это о чем? как относится к парсингу?

авторВы нас тут запутать решили? Вы хотите клиенту отдать в браузер гигабайты оперативных данных?
я, нет.
размер ХТМЛ документа не равен размеру ОП выделенному процессу интернет обозревателя под обработку и отображение этого документа

авторИ он их глазами будет смотреть?
и печатать, и сводить с другими данными.искать расхождения и прочее.

авторSOAP Response в 400Мб? Какой чудесный сервис. А он вообще как нагрузки держит?
на реквест передаются параметры, если послать аля select * ,то возможно будет кирдык.
там где сервис дергает автомат, респонс маленький, т.к. параметры точные. Но у меня будет человек который будет смотреть в формате "а что там было с - по"

Разработка этого сервиса к этой задаче не относится.
Про другие сервисы в рамках этой задачи ничего сказать не могу, т.к. их пока нет у меня..
...
Рейтинг: 0 / 0
web-service response to html
    #39208967
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
silvan,
Гугл поиск не гонит данные на клиент. И не в таком объёме.
Банальный запрос странички по ajax и ленивая подгрузка в DOM
...
Рейтинг: 0 / 0
web-service response to html
    #39208969
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
silvanинстаграм,фейсбук, гугл поиск....все гонит данные на клиент пока ему не надоест.количество пользователей этих приложений говорит о том, что вы не правы.
Объем текстовой информации в указанных сервисах не дотягивает и до десятка мегабайт на запрос. Изображения и видео отдельная тема, ведь у вас их нет?

silvanсохранять на диск

респонс или хтмл?
В идеале и то и другое. Я же не знаю вашей предметной области и не могу за вас это решить.

silvanвозможно единичный случай и остальные респонсы будут много меньше.
Опять неопределенность.

silvanок.теперь мне нужно понять как.
Ключевое слово Streaming

silvanавторНо все реализации сериализации, которые я знаю вычитывают сразу все объекты
Это о чем? как относится к парсингу?
Вы указали JAXB как вариант решения. JAXB не грузит документ в память. XML он парсит потоком (streaming).
А вот объекты, которые он из этого XML формирует, они уже будут в памяти целиком.
Если 400Мб XML это единичные случаи, то подобный SOAP в объектах может занимать на порядок меньше места, что вполне нормально. А вот если у вас сотни запросов в секунду и многие парсят 400-метровые ответы, то с памятью уже будет не так всё гладко.

silvanя, нет.
размер ХТМЛ документа не равен размеру ОП выделенному процессу интернет обозревателя под обработку и отображение этого документа
Так-то верно, но если у вас текстовые данные, то пользователь не способен проанализировать такой объем информации. Так почему бы не отдавать ему её лишь частями?

silvanавторИ он их глазами будет смотреть?
и печатать, и сводить с другими данными.искать расхождения и прочее.
400Мб текстовых данных в один экран и потом сводить?

silvanна реквест передаются параметры, если послать аля select * ,то возможно будет кирдык.
там где сервис дергает автомат, респонс маленький, т.к. параметры точные. Но у меня будет человек который будет смотреть в формате "а что там было с - по"
Дык может в фоновом режиме читать SOAP сервис и хранить данные в удобном для анализа варианте? OLAP?
...
Рейтинг: 0 / 0
web-service response to html
    #39208978
silvan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Petro123silvan,
Гугл поиск не гонит данные на клиент. И не в таком объёме.
Банальный запрос странички по ajax и ленивая подгрузка в DOM
а в результате бесконечный документ!
...
Рейтинг: 0 / 0
web-service response to html
    #39208982
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
silvanа в результате бесконечный документ!
Рукалицо. Гугл тебя временно забанит за несколько запросов, которые выдадут достаточно длинный документ. Это раз.
Клиент не получает весь документ за раз. Только порциями. Сформированный и подготовленный выхлоп лежит на сервере. Это два.
...
Рейтинг: 0 / 0
web-service response to html
    #39209015
silvan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
авторИзображения и видео отдельная тема, ведь у вас их нет?
нет.
"fetch first row", "next" нет в сервисе

авторОпять неопределенность.

Да.ТЗ расказывается на пальцах.
авторВы указали JAXB как вариант решения. JAXB не грузит документ в память. XML он парсит потоком (streaming).
спасибо буду знать

авторЕсли 400Мб XML это единичные случаи, то подобный SOAP в объектах может занимать на порядок меньше места, что вполне нормально.
пробежался с брейкпоинтом похоже на то..а вот при формировании чистого ХТМЛ в JSP добавляется примерно столько..флуш не спасает.

авторТак почему бы не отдавать ему её лишь частями?
Предлагалось, не хотят.

автор400Мб текстовых данных в один экран и потом сводить?
нет.
если это для бумаги на стол. то набор бумаги с подчеркнутыми текстовым выделителем..
если для отладки то выделят, вставят в электронный документ и разошлют всем причастным с вопросом почему во всех системах смежных системах данные разнятся (ошибка ПС или кто-то мухлюет)
все это предположение основанное на общение с конечными потребителями.Функциональный заказчик к потребителю имеет малое отношение...Какая мне собственно разница.
...
Рейтинг: 0 / 0
web-service response to html
    #39209020
silvan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Blazkowicz Сформированный и подготовленный выхлоп лежит на сервере.
Собственно и думаю как это сделать
...
Рейтинг: 0 / 0
web-service response to html
    #39209022
silvan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
авторOLAP?

тоже есть
...
Рейтинг: 0 / 0
web-service response to html
    #39209026
silvan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
silvanавторOLAP?

тоже есть
в том смысле, что данные из куба надо тащить. через olap4j капец как медленно получается
...
Рейтинг: 0 / 0
web-service response to html
    #39209042
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
silvanСобственно и думаю как это сделать
Если SOAP метод только один используется, то напиши простейшую отправку XML запроса по HTTP и отклик разбирай сам через SAX или StAX API - сразу на лету формируй HTML файл. Пользователю выдавай ссылку на готовый файл. Пусть качает сколько надо.
Если SOAP отклик жирный, то можно его сразу сохранить на диск и только потом парсить.
Плюс такого подхода в минимальном использовании памяти и кешировании на диске.
Минус в отсутствии данных в виде Java POJO, которыми бы можно было реализовать сложную логику (например преобразование данных и структуры).
...
Рейтинг: 0 / 0
26 сообщений из 26, показаны все 2 страниц
Форумы / Java [игнор отключен] [закрыт для гостей] / web-service response to html
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]