Форум программистов, компьютерный форум, киберфорум
C# .NET
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.86/7: Рейтинг темы: голосов - 7, средняя оценка - 4.86
26 / 26 / 10
Регистрация: 22.12.2013
Сообщений: 153
1

Из клиента подключатся к процессу на сервере и смотреть лог он-лайн

09.01.2014, 15:19. Показов 1375. Ответов 7
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Имеем на сервере некий процесс, следящий за устройствами (отслеживает статус, принимает данные etc)
На все телодвижения ведется лог, на данный момент пишется в БД.
Хотелка такая - из клиента подключатся к этому процессу и смотреть лог он-лайн, причем клиентов может быть одновременно несколько
Поскольку некоторым образом знаком с сокетами то идея такая - и на сервере и на клиенте есть часть содержащая как слушателя, так и клиента (отправителя).
Слушатель на сервере принимает "заявки" на подписку/отписку логов, на клиенте отправляет завку и соответственно принимает лог. Слушатели на сервере и клиенте асинхронные, сидят на одном (каждый своем) порту.
Это решение в "лоб", работоспособность лишь на бумаге (думаю, должно взлететь)
Есть ли какие более изящные варианты решения?
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
09.01.2014, 15:19
Ответы с готовыми решениями:

Нужен исходник он-лайн РПГ, он-лайн игры
........я всё никак не могу разобраться в АСП. Пытаюсь его разобрать при создании собственного...

Авторизация клиента на сервере
Клиент /// <summary> /// Создание экземпляра клиента /// </summary> ...

Авторизция клиента на сервере
Здравствуйте! Пишу клиент-серверное приложение. У клиентов есть логины/пароли. Как принято делать...

Хранение информации на сервере клиента
Всем драсьте! Вот такой вопрос: Есть веб приложение, обрабатывающее определенные данные. Ну и...

7
1245 / 1055 / 293
Регистрация: 07.03.2012
Сообщений: 3,245
09.01.2014, 15:22 2
Лучший ответ Сообщение было отмечено NickoTin как решение

Решение

Цитата Сообщение от паха76 Посмотреть сообщение
из клиента подключатся к этому процессу и смотреть лог он-лайн
зачем к процессу? почему не подключиться к бд? В общем, можно напрямую к бд коннектиться, а можно написать сервис, который будет давать только то, что нужно клиенту. Сервис wcf
0
26 / 26 / 10
Регистрация: 22.12.2013
Сообщений: 153
09.01.2014, 15:35  [ТС] 3
Цитата Сообщение от Монфрид Посмотреть сообщение
можно написать сервис
сервис должен опрашивать БД с достаточно большой частотой - напрягает сервер лишний раз.
Сервис wcf мне не знаком - если я правильно понимаю на него могут подписаться несколько клиентов?
0
1245 / 1055 / 293
Регистрация: 07.03.2012
Сообщений: 3,245
09.01.2014, 17:42 4
Клиенты запрашивают данные у сервиса, он отдаёт. Без разницы сколько клиентов
0
26 / 26 / 10
Регистрация: 22.12.2013
Сообщений: 153
13.01.2014, 14:00  [ТС] 5
Апну топик
Почитал про wcf,

Добавлено через 6 минут
Апну топик
Почитал про wcf, написал простенькую реализацию - все крутится. Но - клиент должен дергать сервис, что в моем случае мягко говоря "не айс"
Клиент не знает, в какое время происходят события, а дергать сервис с какой-то частотой (n раз в сек) представляется нецелесообразным.
Хотелось как раз наоборот - клиент дает заявку на начало(окончание) сеанса, а сервис передает всем подключенным клиентам все телодвижения устройств, за которыми он следит. Видимо, или wcf не подходит, или я не умею его готовить
Что посоветует почтенная публика?
0
438 / 362 / 100
Регистрация: 29.06.2010
Сообщений: 981
Записей в блоге: 1
13.01.2014, 16:47 6
Цитата Сообщение от паха76 Посмотреть сообщение
Видимо, или wcf не подходит, или я не умею его готовить
Дуплексные службы
1
26 / 26 / 10
Регистрация: 22.12.2013
Сообщений: 153
30.01.2014, 14:33  [ТС] 7
апну еще разок
Направьте на путь истинный
Пока все мои муки явили следующее:
Крутится wcf сервис с callback. При возникновении события дергаем метод сервиса, передаем ему сообщение. Метод дергает callback - клиенты получают.
Насколько грамотно так делать?
0
Кодогенератор
200 / 200 / 51
Регистрация: 15.06.2011
Сообщений: 794
30.01.2014, 16:10 8
Лучший ответ Сообщение было отмечено NickoTin как решение

Решение

Цитата Сообщение от паха76 Посмотреть сообщение
Насколько грамотно так делать?
намного грамотней чем
Цитата Сообщение от паха76 Посмотреть сообщение
дергать сервис с какой-то частотой
в 1м сообщении ИМХО впринципе рабочая схема описана, но если я верно понял, разница от того что сервер будет оповещать клиентов о каждой записи в лог от "дерганья" сервера по времени будет не велика, если только события не возникают достаточно редко,
иначе - если сообщение в лог(базу) пишется в среднем раз в секунду, то для получения актуального лога клиентом напрямую из базы надо запрашивать ее с такой же частотой, при схеме с сервисом система будет та же самая, только опрашивать базу будет не клиент а сервис (чуть меньше нагрузка на базу если клиентов много) и отдавать клиентам.
в общем все зависит от количества клиентов и частоты опроса базы.
0
30.01.2014, 16:10
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
30.01.2014, 16:10
Помогаю со студенческими работами здесь

Регистрация клиента на TCP сервере
Клиент присылает на сервер масив пар чисел типа (Xi, Yi). Cервер обрабатывает его и возвращает за...

Listen на сервере, и 2 клиента на 1 машине
Всем привет. Есть сервер, принимает подключения следующим образом. // ... SOCKET...

SQL-запросы клиента к БД на сервере
Здравствуйте, помогите пожалуйста! Необходимо сделать sql запрос с компа клиента по сети к...

Написать программу анализирующую лог файл сервера apache, рассчитывающую увеличение нагрузки на сервере по часам суток
Ребят, помогите, мозг уже пухнет. Написать программу анализирующую лог файл сервера apache,...

Почему cookies хранятся не где-то на сервере, а у клиента?
уже понял

Как реализовывается взаимосвязь клиента и программы на сервере
Здравствуйте! Помогите пожалуйста разобраться в web программировании. Я хочу сделать программу...


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

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru