Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Сбор и централизованное сохранение данных

7
25 июля 2010 года
@pixo $oft
3.4K / / 20.09.2006
Есть необходимость с разных компьютеров(не расположенных в одной подсети) собирать данные и сохранять их для последующей обработки.Ума не приложу,как это можно сделать.Варианты–только один:сохранять на каком-то сайте,который поддерживает такую возможность(хотя,немного подумав,понял,что можно работать с FTP,например)
Укажите нужное направление,пожалуйста,что где копать.С задачей сталкиваюсь впервые,навыков с работой с сетью нет
11
25 июля 2010 года
oxotnik333
2.9K / / 03.08.2007
не вижу проблем сделать через сокеты - сервер и клиенты, и какая резница в каких подсетях они будут, главное что бы клиенты смогли до сервера достучаться
7
25 июля 2010 года
@pixo $oft
3.4K / / 20.09.2006
Да,я через сокеты и планировал.Но дело вот в чём–у меня дома один провайдер,в универе–другой,ещё где-то–3й.И уж тут не достучаться,сами понимаете
Поэтому прошу подсказать,как тут можно справиться
332
26 июля 2010 года
Valiant
416 / / 27.09.2004
Разместите сервер в общедоступной сети.
7
26 июля 2010 года
@pixo $oft
3.4K / / 20.09.2006
К сожалению,такой возможности нет.Не всё так просто
11
26 июля 2010 года
oxotnik333
2.9K / / 03.08.2007
Цитата: @pixo $oft
К сожалению,такой возможности нет.Не всё так просто


а у провайдера купить статический внешний IP можно? в нашей сети это копейки стоило, как щас не знаю - инфы чет не нашел

7
26 июля 2010 года
@pixo $oft
3.4K / / 20.09.2006
Дело в том,что провайдеров несколько(в универе и у студентов/аспирантов на местах,поэтому покупать каждому слишком уж затратно).Поэтому подобные варианты отпадают

Может,есть какие-то службы связи серых IP?Например,какой-то сервер при подключении к нему клиентов сверяет переданный SessionId и,если он равен,связывает процессы.Пример–Garena(программа для игры в сетевые игры через интернет,т.е. эмулируется локалка)
11
26 июля 2010 года
oxotnik333
2.9K / / 03.08.2007
Цитата: @pixo $oft
Дело в том,что провайдеров несколько(в универе и у студентов/аспирантов на местах,поэтому покупать каждому слишком уж затратно).Поэтому подобные варианты отпадают

Может,есть какие-то службы связи серых IP?Например,какой-то сервер при подключении к нему клиентов сверяет переданный SessionId и,если он равен,связывает процессы.Пример–Garena(программа для игры в сетевые игры через интернет,т.е. эмулируется локалка)


Зачем всем то покупать? Один IP для сервера купи, и по нему подрубайся с любых адресов.

7
26 июля 2010 года
@pixo $oft
3.4K / / 20.09.2006
Тьфу ты точно,туплю.Но всё равно не то.Кому-то придётся держать компьютер включенным почти целые сутки,вряд ли кто на это согласится.Поэтому реквестирую что-нибудь по 2й части вопроса
332
26 июля 2010 года
Valiant
416 / / 27.09.2004
Можно и не покупать, dyndns.com Вас спасёт!
7
26 июля 2010 года
@pixo $oft
3.4K / / 20.09.2006
Да,знаю такую вещь.Сейчас возьмусь за изучение
Надеюсь,при попытке программной работы с ней проблем и сложностей не возникнет



Таки не совсем то[QUOTE=Википедия]Этот клиент постоянно отправляет сигналы DNS-серверу сервиса DynDNS, тем самым сообщая о своём IP-адресе. Сервер службы DynDNS сохраняет последний IP пользователя, и при обращении к пользовательскому доменному имени, полученному при регистрации, перенаправляет запрос на этот IP[/QUOTE]Если параллельно придётся работать с 2х компьютеров,IP будут разные.Так-то.Что-то не укладывается в голове,что тут можно сделать
332
27 июля 2010 года
Valiant
416 / / 27.09.2004
Сервер у Вас один! Именно он будет сообщать о своём айпи! айпи клиентов не имеют никакого значения.
Соответственно к одному ДНС привяжется только один айпи (сервера).
Именно на сервере Вы и откроете серверный сокет.
Хотя купить себе статику не проблема, у моего провайдера это стоит всего то 50р.
7
27 июля 2010 года
@pixo $oft
3.4K / / 20.09.2006
Ясно.Я так понял,что придётся у кого-то держать постоянно включенным компьютер(не говоря уж об установке специальной программы)

В данный момент я задумался над использованием FTP(благо есть домен с его поддержкой).Если будут вопросы(а они уже есть:)),отпишусь сюда
332
27 июля 2010 года
Valiant
416 / / 27.09.2004
Наверное самая большая проблема здесь будет - закрытые порты. Я например админю большую сеть и соответственно закрываю всякие левые порты на активном оборудовании. Лучшим вариантом будет конктиться к какому то вэб серверу или как Вы уже сказали ФТП. Вообщем дерзайте =)
7
28 июля 2010 года
@pixo $oft
3.4K / / 20.09.2006
Вот,начал делать через FTP,благо есть с чем соединяться.Сразу появились вопросы
Делаю вот так
 
Код:
Invoke InternetOpen,0,Internet_Open_Type_Direct,0,0,0
Mov hInternet,EAX
Invoke InternetConnect,hInternet,Addr szFTPServ,21,Addr szFTPUser,Addr szFTPPwd,Internet_Service_FTP,0,0
В последней строке возникает ошибка доступа к памяти(это если автономные режим в IE/WMP отключен.Если включен,по возвращении из функции GetLastError=чему-то там,чему нет описания по FormatMessage.Впрочем,я нашёл ошибку там же,в кодах ошибок)
В чём может быть проблема?Неужели в том,что dwContextId равен 0?В MSDN написано,что такое может быть.В szFTPServ и далее содержатся валидные значения,так что не понимаю,в чём дело
14
28 июля 2010 года
Phodopus
3.3K / / 19.06.2008
Скорее всего из-за него. В MSDN неоднозначно написано.
7
28 июля 2010 года
@pixo $oft
3.4K / / 20.09.2006
Ох…тогда реквестирую годных советов,что хорошего можно сделать.Всё же этот параметр,как я понял,для асинхронного режима,а у меня установлен синхронный
14
29 июля 2010 года
Phodopus
3.3K / / 19.06.2008
Чего-чего, не заполнять его нулем.
7
29 июля 2010 года
@pixo $oft
3.4K / / 20.09.2006
Годный совет…только ни разу не рабочий,к сожалению:(
Если включен автономный режим,возникает ошибка(GetLastError) 2F83,и до AV дело не доходит.А в противном случае возникает 6BA(RPC_S_SERVER_UNAVAILABLE которая,неясно почему) и возникает AV.Такие дела
10
29 июля 2010 года
Freeman
3.2K / / 06.03.2004
Цитата: @pixo $oft
RPC_S_SERVER_UNAVAILABLE которая,неясно почему


А это не гадская Виста или 7?

7
29 июля 2010 года
@pixo $oft
3.4K / / 20.09.2006
Нет,в том-то и дело–XP.А что такое?(просто интересно.У меня в сетевых прогах часто такая возникает)
342
29 июля 2010 года
Yos
209 / / 21.06.2003
Мне кажется что перед выбором технического решения для начала необходимо определить объемы передаваемых и как следствие сохраняемых данных.

Если Вас не затруднит - укажите их...
7
29 июля 2010 года
@pixo $oft
3.4K / / 20.09.2006
Не затруднит,указываю:)
Данные будут передаваться пакетами с определённой периодичностью.Накапливается их немного,так что несколько килобайт

P.S.Я так понимаю,можно всё реализовать через сокеты,посылая команды FTP вручную…но для этого надо с ознакомиться и с сокетами,и с командами.Я считаю,что выбранный мной путь легче в освоении[COLOR="Gray"][SIZE="1"](правда,ошибки неиллюзорно намекают,что нет)[/SIZE][/COLOR]
14
29 июля 2010 года
Phodopus
3.3K / / 19.06.2008
Цитата: @pixo $oft
Годный совет…только ни разу не рабочий,к сожалению:(
Если включен автономный режим,возникает ошибка(GetLastError) 2F83


ERROR_INTERNET_DISCONNECTED
The Internet connection has been lost.
вопросы?

Цитата: @pixo $oft

возникает 6BA(RPC_S_SERVER_UNAVAILABLE которая,неясно почему)


потому что кто-то, помнится, [COLOR="Silver"]дохуя[/COLOR]слишком фанатично лазает в системе. А я предупреждал. Теперь сам разбирайся.

7
30 июля 2010 года
@pixo $oft
3.4K / / 20.09.2006
Цитата: Phodopus
The Internet connection has been lost.
вопросы?

Оно и не устанавливалось,чтобы теряться.Да и не сильно я по системе лазал(и уж точно не по связанному с RPC),такие дела

342
30 июля 2010 года
Yos
209 / / 21.06.2003
Цитата: @pixo $oft
Данные будут передаваться пакетами с определённой периодичностью.Накапливается их немного,так что несколько килобайт



Тогда FTP это не лучший вариант, на мой субъективный взгляд. Лично я бы в данном случае выбрал бы обмен по POP3 или SMTP. Тем более завести ясчик(и) не составляет вообще никаких проблем. При этом протоколируется передача + из заголовка сообщения можно вытащить IPшники если в этом есть необходимость. + можно всегда достучаться и что не маловажно можно создать резервное дублирование. Протоколы просты до нельзя (у меня в свое время на это ушло 2 дня до рабочей программной реализации), исходники (если есть такая необходимость) найти вообще не проблема. (как и для FTP собственно).

Цитата: @pixo $oft
Я так понимаю,можно всё реализовать через сокеты,посылая команды FTP вручную…но для этого надо с ознакомиться и с сокетами,и с командами.Я считаю,что выбранный мной путь легче в освоении



Да через сокеты но команды по POP3 или SMTP. Сложного там вообще ничего нет, тем более Вам не надо писать собственный сервер. А выбранный Вами путь не легче, просто потому что WinNet заточен под HTTP и еще достаточно сырой и его рекомендуется использовать только так (если внимательно почитать что он предоставляет + dwContext не рекомендуется делать 0-лем).

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

7
30 июля 2010 года
@pixo $oft
3.4K / / 20.09.2006
Спасибо за хороший ответ
Цитата: Yos
Тогда FTP это не лучший вариант, на мой субъективный взгляд. Лично я бы в данном случае выбрал бы обмен по POP3 или SMTP. Тем более завести ясчик(и) не составляет вообще никаких проблем

Хостинг платный,за ящик там придётся дополнительно платить,вот.Так что я вполне не против FTP

Цитата: Yos
При этом протоколируется передача + из заголовка сообщения можно вытащить IPшники если в этом есть необходимость. + можно всегда достучаться и что не маловажно можно создать резервное дублирование

Всё это многообразие мне не нужно,важны только данные

342
30 июля 2010 года
Yos
209 / / 21.06.2003
Цитата: @pixo $oft
Хостинг платный,за ящик там придётся дополнительно платить,вот.Так что я вполне не против FTP

Все не так грустно как кажется - у меня когда то была необходимость совместно с исследованием для другого промышленного комплекса (вот там пришлось писать собственный сервер и протокол, так как используется очень большой объем неструктурированных данных), я написал тестовую прогу которая мониторит изменение файлов в системе и пишет об этом на ясчик на mail.ru. При этом компы законцованы у разных провайдеров, как раз почти Ваш вариант...

Цитата: @pixo $oft
Всё это многообразие мне не нужно,важны только данные

Я в этом ни сколько не сомневаюсь, но... сначала всегда кажется что больше ничего не нужно... "потом сапожки, потом сумочку к ним" и тд и тп :)

10
30 июля 2010 года
Freeman
3.2K / / 06.03.2004
Цитата: Yos
Лично я бы в данном случае выбрал бы обмен по POP3 или SMTP.


Вообще-то POP3 когда-то возник как расширение FTP. :)

5
30 июля 2010 года
hardcase
4.5K / / 09.08.2005
Цитата: @pixo $oft
 
Код:
Invoke InternetOpen,0,Internet_Open_Type_Direct,0,0,0
Mov hInternet,EAX
Invoke InternetConnect,hInternet,Addr szFTPServ,21,Addr szFTPUser,Addr szFTPPwd,Internet_Service_FTP,0,0


Автор истинный извращенец, раз пытается работать с сетью на ассемблере. :D
Остается только предположить, почему работа происходит со столь высокоуровневым API? Почему бы сразу не на уровне ndis?

342
30 июля 2010 года
Yos
209 / / 21.06.2003
Был бы очень сильно удивлен, если бы это было бы не так :) тем более если (дальше проводить линию) учесть что SMTP очень похож на POP3. На мой взгляд всегда правильнее "улучшать" существующую проверенную технологию путем сервисной надстройки...

Да и предложил такой вариант из-за доступности проверенных требуемых ресурсов...

Изобретение нового почетное занятие, но не избавляет от ошибок, на которых (что опять же правильно) надо учиться...
5
30 июля 2010 года
hardcase
4.5K / / 09.08.2005
Цитата: Yos
Изобретение нового почетное занятие, но не избавляет от ошибок, на которых (что опять же правильно) надо учиться...


Учиться надо на чужих ошибках и лишь потом на своих.

С моей колокольни все видится гораздо прозаичнее. Делается веб-сервис (XML или REST-фул - пофигу) и клиент к нему. На .NET3.5 задача вчерне решается где-то минут за 30-40 (сюда входит поиск халявного или не очень ASP.NET хостинга) и уходит в релиз.
Может быть стоит сперва инструменты подходящие выбирать? Не? ;)

PS> сорь за оффтоп, это я промышленную альтернативу ассемблеру показал.

342
30 июля 2010 года
Yos
209 / / 21.06.2003
Цитата: hardcase
Учиться надо на чужих ошибках и лишь потом на своих.

- Золотые слова...

веб-сервис - это правильно в свете нынешних решений, и изначально была идея его же предложить, но сначала человек пусть решит какие "гайки крутить" а вот потом уже "ключи" к ним подбирать :) тем более что ну любит челавек ASM :)

PS перестал набирать в строке masm... когда в коде стало все реже и реже встречаться INT21 :)

7
30 июля 2010 года
@pixo $oft
3.4K / / 20.09.2006
Ну что ж,о ясчике на мэйле я и не подумал:) Тогда такой вопрос–поддерживают ли FTP/SMPTP/POP3 дозапись(т.е. гораздо удобнее хранить всё одним файлом,чем кучей)

P.S.Если можно,ссылочки для начинающих по вышеописанным протоколам.Почему не лезу в гугл?Хотелось бы уже вами проверенные,чтобы не наткнуться на какую-то лажу и тормозить из-за неё потом
[SIZE="1"][COLOR="Silver"]а ещё я не умею составлять правильные поисковые запросы (=[/COLOR][/SIZE]
342
30 июля 2010 года
Yos
209 / / 21.06.2003
Дозапись нет - используйте к примеру блоки данных для передачи, которые сначала аккумулируйте локально...

Исходников много, как и описаний самих протоколов причем на русском языке (за столько лет существования уже перевели) :) но все что выкладыается это как правило пример использования, не дающий нужную реализацию...

На вскидку (где изучал некоторые вещи в юности) - http://sources.ru/cpp/cpp_network.shtml#6
7
30 июля 2010 года
@pixo $oft
3.4K / / 20.09.2006
Ох-ох,исходнички…мне бы не помешал гайд:)
Ладно,спасибо,буду изучать и пробовать
342
30 июля 2010 года
Yos
209 / / 21.06.2003
А вот так - http://sources.ru/protocols/pop3_learning.shtml
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог