Здравствуйте, alex1010, Вы писали:
A>Есть две программы, которые должны обмениваться данными. A>Каждая может быть инициатором передачи.
A>Что лучше использовать для работы с сетью? Если учесть, что ранее с сетью почти не работал, а сделать желательно быстро.]
Ну таки WCF действительно самый простой. Но хотелось бы больше знать о требуемой частоте обмена.
Здравствуйте, alex1010, Вы писали:
A>Здравствуйте, Слава, Вы писали:
С>>Ну таки WCF действительно самый простой. Но хотелось бы больше знать о требуемой частоте обмена.
A>нагрузка небольшая имхо, где-то 1-2 раза в секунду обмен не слишком длинными (до 1000 символов?) данными.
Так может вам просто взять и сделать REST сервис на web api/nancyfx?
Здравствуйте, Слава, Вы писали:
С>Здравствуйте, alex1010, Вы писали:
A>>Есть две программы, которые должны обмениваться данными. A>>Каждая может быть инициатором передачи.
A>>Что лучше использовать для работы с сетью? Если учесть, что ранее с сетью почти не работал, а сделать желательно быстро.]
С>Ну таки WCF действительно самый простой. Но хотелось бы больше знать о требуемой частоте обмена.
Для новичка он очень непростой и переусложненный. Но если с ним разобраться, то да, далее можно шустро клепать разные клиент-серверы-пиры.
Здравствуйте, alex1010, Вы писали:
A>Есть две программы, которые должны обмениваться данными. A>Каждая может быть инициатором передачи.
A>Что лучше использовать для работы с сетью? Если учесть, что ранее с сетью почти не работал, а сделать желательно быстро.
Есть ещё один простой вариант — Remoting.
Он, конечно, назван Legacy, но пока существуют App Domain's его никто не выпилит, а в настройке он проще (если нужно только подёргать методы собственноручно написанных объектов/попередавать сериализуемые объекты).
Так что рекомендую, пусть меня и закидают тряпками....
... << RSDN@Home 1.0.0 alpha 5 rev. 0>>
Если при компиляции и исполнении вашей программы не происходит ни одной ошибки — это ошибка компилятора :)))
Здравствуйте, Sharov, Вы писали:
S>Для новичка он очень непростой и переусложненный. Но если с ним разобраться, то да, далее можно шустро клепать разные клиент-серверы-пиры.
нашел очень простой пример
работает )
но это консоль, поэтому как я понимаю, нет конфиг-файлов для тонкой настройки.
более продвинутый, но хорошо написанный tutorial есть?
remoting, почитал, оттолкнул тем (помимо что устарел), что не поддерживает нормального восстановления связи двунаправленной (это важно).
Здравствуйте, alex1010, Вы писали:
A>Здравствуйте, Sharov, Вы писали:
S>>Для новичка он очень непростой и переусложненный. Но если с ним разобраться, то да, далее можно шустро клепать разные клиент-серверы-пиры.
A>нашел очень простой пример A>
A>работает ) A>но это консоль, поэтому как я понимаю, нет конфиг-файлов для тонкой настройки. A>более продвинутый, но хорошо написанный tutorial есть?
A>remoting, почитал, оттолкнул тем (помимо что устарел), что не поддерживает нормального восстановления связи двунаправленной (это важно).
, например. Там бросается исключение и к чему оно относится без логов не разобраться. Так-то он не сложный, будете экспериментировать, ловить исключения, смотреть что не так и далее по циклу.
Здравствуйте, alex1010, Вы писали:
A>Есть две программы, которые должны обмениваться данными. A>Каждая может быть инициатором передачи.
A>Что лучше использовать для работы с сетью? Если учесть, что ранее с сетью почти не работал, а сделать желательно быстро.
В такой ситуации выбрал WebSockets. Сначала было сунулся в WCF, но, поняв, что с ним нужно неспешное знакомство как с девушкой, спешно перескочил на WS и сделал всё быстро.
Все настройки заключаются только в выборе номера порта.
Кодинга минимум: в сервере описать хук OnMessageReceived, на клиенте OnMessage/OnError.
Данные получаете/отправляете либо в байтах, либо в строке.
И клиент и сервер повесил в отдельные Task, непрерывно в цикле принимающие уже сериализованные запросы через BlockingCollection<string>.
Клиент подключается к серверу и далее соединение поддерживается, так что и сервер может в любой момент передать.
Не могу сказать что работает идеально, соединение временами рвётся, даже с учётом что оба пира на одном компе под локалхостом, ещё не разобрался почему, но в этих случаях просто тут же переподключаюсь, так что данные успешно ходят.
, например. Там бросается исключение и к чему оно относится без логов не разобраться. Так-то он не сложный, будете экспериментировать, ловить исключения, смотреть что не так и далее по циклу.
ну пока это трудностью не видится. У меня-то и клиент и сервер свои. Под отладкой первый эксепшен, в сервере из примера, вылетел сразу (не админ был) и VS его нормально поймал.
, например. Там бросается исключение и к чему оно относится без логов не разобраться. Так-то он не сложный, будете экспериментировать, ловить исключения, смотреть что не так и далее по циклу.
A>ну пока это трудностью не видится. У меня-то и клиент и сервер свои. Под отладкой первый эксепшен, в сервере из примера, вылетел сразу (не админ был) и VS его нормально поймал.
Переписку посмотрите -- о чем исключение, и что было причиной. Хрен без логов докопаешься. Врубайте логирование всего и вся и вперед, WCF штука универсальная.
Здравствуйте, alex1010, Вы писали:
A>Здравствуйте, Serginio1, Вы писали:
S>>Здравствуйте, alex1010, Вы писали:
S>>Посмотри .Net Core, AppDomain, WCF, RPC маршалинг по Tcp/Ip свой велосипед
A>вот честно сказать, не понял о чем это. Не для новичков похоже. Там какой-то велосипед, а чтобы его сделать надо сначала тот же wcf знать
Да там все просто. В чем проблемы в начальном примере?
и солнце б утром не вставало, когда бы не было меня