angel

Сокетное соединение с сервером

25.11.2007, 14:18. Показов 4067. Ответов 22
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
В общем идет утренняя планерка, обсуждают что бум дедать в след. неделю....

Все, обговорили, задания распределили, все довольны, все нормально и тут шеф показывает очередное свое творение
( там чего-то графики строит и т.п.), говорит что типа все круто работает, все клиентам нравится, но вот есть мол один косяк - IIS падает.
Ну я спрашиваю а в чем типа дело.
Давай смотреть - IIS-у не хватает памяти.
Давай дальше смотреть, а он, млять из своего апплета, каждые 10 секунд, тянет с сервера XML по 150-200 кило.

Я у него спрашиваю так осторожно, типа кто это писал.
Он ГОРДО, типа он писал.

Я говорю что это не есть оптимальный вариант, что мол у тебя же данные на сервере обновляются не каждые 10 секунд.
И потом говорю ( МЛЯТЬ, ЛУЧШЕ БЫ Я МОЛЧАЛ !!!! ), что типа модные пацаны пишут сокетное соединение с сервером и апплет получает сигнал на обновление только тгда когда это действительно необходимо....

Короче...
2-3 минутное молчание в комнате.

Потом, все говорят - КРУТО!!!!

А потом, шеф смотрит на меня и говорит, ну вот давай и займись этим - мол времени у тебя 7 дней, в след. понедельник
покажи мне, и процитировал млин, 'как модные пацаны в Росии делают это' ( вот знает же гад что я в Яве - НУЛЬ БЕЗ ПАЛОЧКИ !!!! )

Я ему - что типа я только теорию немного знаю и в институте несколько апплетов написал на лабораторных по информатике и все....

А он мне ссылку дает http://java.sun.com

Вот...

В связи с этим у меня к вам, господа вопросы:

1. Возможно мне ЭТО за неделю освоить ? Или лучше подойти и сказать что это слишком сложная задача ?
2. Кто может помочь примерами / ссылками

т.е.
насколько я понимаю, это должно быть два приложения: апплет и сервер.
И сервер по какому-т определенному событию посылает апплету XML файл как текстовую строчку и все.
Или я не прав ?

Заранее спасибо
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
25.11.2007, 14:18
Ответы с готовыми решениями:

Постоянное сокетное соединение
Доброво времени суток! Есть ли возможность создать постоянное сокетное соединение не используя на стороне сервера такую схему: ...

Сокетное соединение между N компьютерами
Есть два компьютера... =) Первый компьютер делает следующие дела: отправляет свой ip на ftp, соединяется с клиентом и шлёт всякие...

Каким образом через сокетное соединение передать файлы или всю директорию?
Есть одна проблемка. Мне нужно проверять обновления файлов в некоторой директории м в случае обнаружения обновлений копировать её на другой...

22
mishgun
28.11.2007, 00:09
Студворк — интернет-сервис помощи студентам
В каком виде файл передается апплету?текст хмl или что? Сам апплет тянуть не может.Надо в проге которая отсылает файл апплету разбивать его.
Вопрос:Какой принцип работы твоей проги вообще?Она что собирает данные из ДБ потом формирует файл а потом отсылает файл апплету?Или файл формируется какими то другими способами?
angel
29.11.2007, 00:04
нет, моя прога ничего не собирает и не готовит, данные сваливаются в XML другим приложением.

Работает так:

1. Апплет цепляется к серверу, на определенный порт и ждет от сервера команды готовиться к приему.
2. Сервер по определенному событию (не важно какому) кидает апплету сообщение 'ЩАС ОТПРАВЛЮ ФАЙЛ' и после этого выпуливает файл с данными, который ему подсунула та самая прога, которая готовит данные :-)

3. Апплет принял данные, отрисовал и опять приготовился к приему
и так по кругу :-)

Все это я сделал :-), спасибо за наводки и примеры.

Теперь внимание вопрос:
- Кто чего посоветут почитать про буффер у сокетов (а то у меня иногда часть файала теряется, почему понять не могу, возможно пытаюсь читать слишком большими кусками ....
1 / 1 / 1
Регистрация: 18.08.2007
Сообщений: 289
29.11.2007, 19:56
Буферизация ускоряет работу приложений с потоками, так как при ее использовании сокращается количество обращений к системе ввода/вывода. Во многих случаях приложение должно выполнять принудительную запись буферов. Это можно сделать с помощью метода flush().

Пример.
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
public void writeFile(String fileName) {
  FileWriter out = null;
  BufferedWriter bout = null;
  try {
     try {
        out = new FileWriter(fileName);
        bout = new BufferedWriter(out);
        bout.write('Ýòî ïðîñòî ïðèìåð.');
        //...
     } catch (Exception ex) {
        //обработаем возможное исключение в нашем коде...
        //...
     } finally { 
        //Интересно, порядок сброса буферов имеет значение? 
        //Я разницы не почувствовал.
        out.flush(); //сброс потока
        bout.flush();//сброс буферизованного потока
        out.close(); //закрытие потока
        bout.close();//закрытие буферизованного потока
     }
  } catch (java.io.IOException ex) {}
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
29.11.2007, 19:56

Не устанавливается соединение с сервером
Здравствуйте, уважаемые форумчане. Возникла проблема. Есть два приложения. Сервер и клиент написанные на Java через Socket. Порт 5000...

Как закрыть соединение с сервером?
При нажатии на кнопку(Connect), клиент берет записи из JTextField'a и отправляет их на сервер. Сервер печатает их в JTextArea. При первом...

Соединение с SQL сервером используя аутентификацию Windows, а не SQL-сервера
Коннекчусь к SQL-серверу из апплета, используя com.microsoft.jdbc.sqlserver.SQLServerDriver. String...

Соединение с сервером
Установил sql сервер,и собственно возник вопрос ,что делать дальше?как создавать БД и собственно таблицы? в инете видел, что БД создают как...

Соединение с сервером
Здравствуйте, меня интересует вопрос по поводу учета данных входа и выхода (например в созданную прогр.) которые бы отображались на...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
23
Ответ Создать тему
Опции темы

Новые блоги и статьи
Кредитный калькулятор
Maks 05.08.2026
Решение задачи по прикладной информатике средствами 1С. Задача: Напишите приложение-калькулятор, которое помогает рассчитывать параметры кредита для аннуитетного и дифференцированного видов. . .
У нас сейчас поговорку "Опять 25" нужно переделать на "Опять +35".
kumehtar 04.08.2026
С ностальгией вспоминаю времена моего детства, когда у нас и правда +25 - была максимальная температура летом. Раньше +25 °C реально казались вершиной жары, когда можно было весь день пропадать на. . .
Как ИИ начал спорить и врать (возможно почуяв опасность для себя от индустрии - уход от электроники).
Hrethgir 04.08.2026
Недельный диалог, на фоне событий с НПЗ. Да, из спирта можно получать бензин, и это не сложно. Но потом в схеме я решил избавиться от насоса, при этом полностью сделав контроль подачи спирта в. . .
Термопринтер QR701
Argus19 03.08.2026
Термопринтер QR701 Купил два термопринтера QR701. На сэлф-тесте написано: Language: PC936 (GB18030). Что означает, что принтеры могут печатать только латиницу и китайские иероглифы. Так же. . .
Создание формы заимствованного документа
Maks 03.08.2026
Задача: Необходимо создать собственную форму заимствованного документа. На форме должен быть реквизит "Покупатель", а также табличная часть со следующими реквизитами: - Расчетный счет покупателя. . .
Задача предоставления скидок покупателям
Maks 03.08.2026
Задача: В документе "Продажи" необходимо реализовать функционал предоставления скидок покупателям. Скидка должна автоматически рассчитываться и подставляться в соответствующее поле при выборе. . .
Почему SEO не начинается с ключевых слов: что проверить до написания текстов
Neotwalker 01.08.2026
Когда владельцу сайта предлагают заняться SEO, первым шагом часто становится сбор запросов и написание текстов. Логика кажется понятной: 1. Находим ключевые слова. 2. Добавляем их на. . .
Знание — сила: Доктрина интенциональности знаний, углубление в формулу
Hrethgir 01.08.2026
https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11957&stc=1&d=1785567302 Знаменитый афоризм Фрэнсиса Бэкона «Знание — сила» (Scientia potentia est) в массовой культуре принято понимать. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru