|
|
|
Передача данных между java приложениями при плохом соединении. Посоветуйте технологии.
|
|||
|---|---|---|---|
|
#18+
Есть сервер и некоторое количество клиентов. Сервер в зависимости от ситуации будет отправлять сигналы, данные клиентам. Клиент как и сервер это java приложение. Интернет соединение может быть плохим, а данные могут быть достаточно объёмными - видеозаписи, картинки. Мы должны быть уверены, что данные окажутся на клиенте. Посоветуйте какие технологии лучше всего использовать для решения такой задачи. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.12.2014, 12:32 |
|
||
|
Передача данных между java приложениями при плохом соединении. Посоветуйте технологии.
|
|||
|---|---|---|---|
|
#18+
Hypertext Transfer Protocol -- HTTP/1.1 . Какие конкретно библиотеки упростят работу с деталями протокола - вопрос отдельный. Можете посмотреть на Apache HttpComponents . ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.12.2014, 12:59 |
|
||
|
Передача данных между java приложениями при плохом соединении. Посоветуйте технологии.
|
|||
|---|---|---|---|
|
#18+
redwhite90, А сервер и клиенты находятся на одной машине? Что используется в качестве хранилища больших данных? По мне так общение сервера и клиентов через JMS (если его можно поставить). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.12.2014, 13:38 |
|
||
|
Передача данных между java приложениями при плохом соединении. Посоветуйте технологии.
|
|||
|---|---|---|---|
|
#18+
Крошкин ДмитрийА сервер и клиенты находятся на одной машине? Конечно. Это ведь единственный вывод, который можно сделать из "Интернет соединение может быть плохим". ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.12.2014, 13:40 |
|
||
|
Передача данных между java приложениями при плохом соединении. Посоветуйте технологии.
|
|||
|---|---|---|---|
|
#18+
Машины распределены и очень сильно. Basil A. Sidorov Basil A. Sidorov Hypertext Transfer Protocol -- HTTP/1.1. Какие конкретно библиотеки упростят работу с деталями протокола - вопрос отдельный. Можете посмотреть на Apache HttpComponents. а возможно при помощи этого реализовать докачку? ну например скачали пол файла, интернет пропал, потом появил через 10 минут и чтоб не самого начала качать всё это добро, а с того места, где остановились. а нет смысла смотреть в сторону java to java вещей? http://www.hazelcast.com/ , http://www.terracotta.org ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.12.2014, 14:12 |
|
||
|
Передача данных между java приложениями при плохом соединении. Посоветуйте технологии.
|
|||
|---|---|---|---|
|
#18+
redwhite90а возможно при помощи этого реализовать докачку? ну например скачали пол файла, интернет пропал, потом появил через 10 минут и чтоб не самого начала качать всё это добро, а с того места, где остановились. Да. Но нет проверки контрольной суммы. Стоит её добавить. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.12.2014, 14:26 |
|
||
|
Передача данных между java приложениями при плохом соединении. Посоветуйте технологии.
|
|||
|---|---|---|---|
|
#18+
Blazkowiczredwhite90а возможно при помощи этого реализовать докачку? ну например скачали пол файла, интернет пропал, потом появил через 10 минут и чтоб не самого начала качать всё это добро, а с того места, где остановились. Да. Но нет проверки контрольной суммы. Стоит её добавить. покажете какой-нить пример с интернетов? а то я не знаю перевести слово докачка) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.12.2014, 14:37 |
|
||
|
Передача данных между java приложениями при плохом соединении. Посоветуйте технологии.
|
|||
|---|---|---|---|
|
#18+
redwhite90, http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html 14.35 Range http://svn.tools.ietf.org/svn/wg/httpbis/specs/rfc7233.html ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.12.2014, 14:47 |
|
||
|
Передача данных между java приложениями при плохом соединении. Посоветуйте технологии.
|
|||
|---|---|---|---|
|
#18+
redwhite90, Тут ещё stackoverflow хороший термин подсказал: https://www.google.com/search?q=high latency file transfer ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.12.2014, 14:50 |
|
||
|
Передача данных между java приложениями при плохом соединении. Посоветуйте технологии.
|
|||
|---|---|---|---|
|
#18+
Blazkowicz, Честно говоря непонятно, что мне с этой инфой делать(( примерчик бы кода.... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.12.2014, 19:36 |
|
||
|
Передача данных между java приложениями при плохом соединении. Посоветуйте технологии.
|
|||
|---|---|---|---|
|
#18+
... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.12.2014, 20:32 |
|
||
|
Передача данных между java приложениями при плохом соединении. Посоветуйте технологии.
|
|||
|---|---|---|---|
|
#18+
Плюс, не забываем, что при начальном запросе (нормальный) сервер возвращает заголовок-тег . При конструировании условного запроса ETag поможет "не промахнуться". Если нужны контрольные суммы, то Content-MD5 . Ну и так далее. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.12.2014, 20:48 |
|
||
|
Передача данных между java приложениями при плохом соединении. Посоветуйте технологии.
|
|||
|---|---|---|---|
|
#18+
Basil A. Sidorov, я не понимаю как чтение спецификации http поможет написать мне код. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.12.2014, 22:21 |
|
||
|
Передача данных между java приложениями при плохом соединении. Посоветуйте технологии.
|
|||
|---|---|---|---|
|
#18+
redwhite90Basil A. Sidorov, я не понимаю как чтение спецификации http поможет написать мне код.Фигасе заявленьице !!! Тогда что Вы делаете в программировании? Ищете готовые решения и берёте их для своих нужд? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.12.2014, 08:46 |
|
||
|
Передача данных между java приложениями при плохом соединении. Посоветуйте технологии.
|
|||
|---|---|---|---|
|
#18+
Alex Kuznetsov, опыт подсказывает, что всё в основном написано до нас, а эта проблема видится типовой. Неужели надо самому в хэдеры писать какие-то md-5 хэши ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.12.2014, 10:22 |
|
||
|
Передача данных между java приложениями при плохом соединении. Посоветуйте технологии.
|
|||
|---|---|---|---|
|
#18+
redwhite90Есть сервер и некоторое количество клиентов. Сервер в зависимости от ситуации будет отправлять сигналы, данные клиентам. Клиент как и сервер это java приложение. Интернет соединение может быть плохим, а данные могут быть достаточно объёмными - видеозаписи, картинки. Мы должны быть уверены, что данные окажутся на клиенте. Посоветуйте какие технологии лучше всего использовать для решения такой задачи. 1) можно придумать велосипед и использовать WebSockets - сервер сам рассылает всю информацию по клиентам и держит соединения . если все на java то ваш клиент это либо swing либо javafx пример на спринге : https://github.com/spring-projects/spring-boot/tree/master/spring-boot-samples/spring-boot-sample-websocket-jetty пример в ide netbeans https://netbeans.org/kb/docs/javaee/maven-websocketapi_ru.html можно использовать обычные TCP сокеты - для swing либо javafx тогда вам нужно будет реализовать свой протокол... либо берите готовое решение проверенное временем - RMI - быстро и надежно. авторИнтернет соединение может быть плохим лучше вложиться в каналы ибо сейчас это дешевле чем писать свои протоколы итд ... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.12.2014, 10:27 |
|
||
|
Передача данных между java приложениями при плохом соединении. Посоветуйте технологии.
|
|||
|---|---|---|---|
|
#18+
redwhite90опыт подсказывает, что всё в основном написано до нас, а эта проблема видится типовой.Т.е. вам хочется, чтобы за вас не только написали код, но и отыскали кем-то написанное? "Вы есть слишком много кушать". Это во-первых. А во-вторых - если поиск готового решения занимает больше времени, чем самостоятельное решение задачи - задачу надо решать самостоятельно. Кроме всего прочего, начинаете понимать, какие вещи проще найти, а какие - сделать самому.Неужели надо самому в хэдеры писать какие-то md-5 хэши ?Зависит от требований. Собираетесь проверять контрольную сумму на клиенте - надо. Не собираетесь - не надо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.12.2014, 10:27 |
|
||
|
Передача данных между java приложениями при плохом соединении. Посоветуйте технологии.
|
|||
|---|---|---|---|
|
#18+
Atum1лучше вложиться в каналы ибо сейчас это дешевле чем писать свои протоколы итд ...Вложиться в канал(ы) сервера - не проблема. Что делать с клиентами? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.12.2014, 10:30 |
|
||
|
Передача данных между java приложениями при плохом соединении. Посоветуйте технологии.
|
|||
|---|---|---|---|
|
#18+
Basil A. Sidorov, авторТ.е. вам хочется, чтобы за вас не только написали код, но и отыскали кем-то написанное? "Вы есть слишком много кушать". Это во-первых. А во-вторых - если поиск готового решения занимает больше времени, чем самостоятельное решение задачи - задачу надо решать самостоятельно. Кроме всего прочего, начинаете понимать, какие вещи проще найти, а какие - сделать самому. Никогда не решал подобную проблему, поэтому мне тяжело оценить проще самому написать или найти решение. Точнее я даже не знаю с чего начать писать своё решение. Верно я понял, что предлагается взять какую-то библиотеку, которая будет формировать http пакеты? авторВложиться в канал(ы) сервера - не проблема. Что делать с клиентами? +1 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.12.2014, 10:40 |
|
||
|
Передача данных между java приложениями при плохом соединении. Посоветуйте технологии.
|
|||
|---|---|---|---|
|
#18+
redwhite90Точнее я даже не знаю с чего начать писать своё решение. conditional get .Верно я понял, что предлагается взять какую-то библиотеку, которая будет формировать http пакеты?Вам дали всю необходимую информацию. Могу добавить, что для статических ресурсов на сервере делать ничего не надо - любой вменяемый самостоятельно обработает клиентский запрос. Что позволяет есть слона по частям - написать и отладить клиента и топать дальше. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.12.2014, 10:50 |
|
||
|
Передача данных между java приложениями при плохом соединении. Посоветуйте технологии.
|
|||
|---|---|---|---|
|
#18+
redwhite90Мы должны быть уверены, что данные окажутся на клиенте. кроме всего того что Вам правильно написали, это не есть ТЗ. - что значит - "оказались" на клиенте? - видеофайл FullHD оказался на клиенте. - что означает? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.12.2014, 10:56 |
|
||
|
Передача данных между java приложениями при плохом соединении. Посоветуйте технологии.
|
|||
|---|---|---|---|
|
#18+
redwhite90Сервер в зависимости от ситуации будет отправлять сигналы, данные клиентам. вы ищите готовые решения. Для этого, одной фразы выше недостаточно. Т.к. _возможно_. дело не только в протоколе. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.12.2014, 11:01 |
|
||
|
Передача данных между java приложениями при плохом соединении. Посоветуйте технологии.
|
|||
|---|---|---|---|
|
#18+
Atum11) можно придумать велосипед и использовать WebSockets - сервер сам рассылает всю информацию по клиентам и держит соединенияЭто и всё нижепоскипанное великолепие разбивается об один простой вопрос: что делать, если соединение всё-таки оборвалось? Задачу надо решать просто, но не проще, чем это возможно. Задача "передать данные через ненадёжный канал" обязана уметь работать с обрывками данных. Ни модные веб-сокеты, ни классический RMI не умеют этого из коробки. Что плавно переводит нас ко второму вопросу: зачем изобретать велосипед, если не менее классический HTTP предоставляет всю необходимую функциональность? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.12.2014, 11:12 |
|
||
|
Передача данных между java приложениями при плохом соединении. Посоветуйте технологии.
|
|||
|---|---|---|---|
|
#18+
Petro123, автор- что значит - "оказались" на клиенте? На файловой системе клиента оказался переданный файл. этот файл должен совпадать с тем, что передавался сервером))) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.12.2014, 11:12 |
|
||
|
|

start [/forum/topic.php?fid=59&fpage=145&tid=2126008]: |
0ms |
get settings: |
8ms |
get forum list: |
14ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
31ms |
get topic data: |
7ms |
get forum data: |
2ms |
get page messages: |
37ms |
get tp. blocked users: |
1ms |
| others: | 208ms |
| total: | 312ms |

| 0 / 0 |
