powered by simpleCommunicator - 2.0.59     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / WPF, Silverlight [игнор отключен] [закрыт для гостей] / Синхронизация Клиент(а/ов)
25 сообщений из 45, страница 1 из 2
Синхронизация Клиент(а/ов)
    #37045112
Фотография уТКа
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Всем привет.

Пришла идея создать браузерную игру после просмотра одного фильма.

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

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

п.с. Клиентом (мордой GUI) по сути может быть что угодно, это и сам браузер с HTML и Silverlight/Flash, проблема у всех одна, синхронизация игроков.

Взаимодействие Клиента и Сервера предполагает использование WCF WebService, т.е. никаких сокетов.

Высказывайтесь господа, нужна ваша помощь!
...
Рейтинг: 0 / 0
Синхронизация Клиент(а/ов)
    #37045116
Фотография МСУ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Синхронизировать ничего не нужно - движок должен крутиться на сервере, а там время одно.
Смотрим сюда: 9509403
...
Рейтинг: 0 / 0
Синхронизация Клиент(а/ов)
    #37045141
Фотография уТКа
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
МСУ,

авторWcfTicketing\WcfTicketingService\WcfTicketingService.csproj' cannot be opened.

The project type is not supported by this installation.
что это за тип проекта ?

открываю на рабочем буке где стоит Visual Studio Web Developer 2010 Express
...
Рейтинг: 0 / 0
Синхронизация Клиент(а/ов)
    #37045145
Фотография МСУ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Microsoft Visual Studio 2010 (Ultimate)

уТКаVisual Studio Web Developer 2010 Express
Выбросьте в мусорку.
...
Рейтинг: 0 / 0
Синхронизация Клиент(а/ов)
    #37045152
Фотография уТКа
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
МСУMicrosoft Visual Studio 2010 (Ultimate)

уТКаVisual Studio Web Developer 2010 Express
Выбросьте в мусорку.
мне на зарплату еле наскребают 10к рупи в месяц, а ты говоришь выброси...
...
Рейтинг: 0 / 0
Синхронизация Клиент(а/ов)
    #37045154
Фотография МСУ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
уТКамне на зарплату еле наскребают 10к рупи в месяц, а ты говоришь выброси...
Варианты:
Прекращаем строить из себя девственницу и качаем с торрентов

Создать новый солюшен в Visual Studio Web Developer 2010 Express и скопипастить классы

Забить на программирование, заняться земледелием
...
Рейтинг: 0 / 0
Синхронизация Клиент(а/ов)
    #37045159
Фотография уТКа
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
МСУ,

лежа на диване открывалось в Express версии.

запустил.

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

по сабжам из ссылки уже подумалось что речь пойдет о WCF Duplex, но нет, в проекте NetTCP - это пожалуй единственное чего я не глядел.

спасибо за наводку ;)
...
Рейтинг: 0 / 0
Синхронизация Клиент(а/ов)
    #37045165
Фотография МСУ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
уТКаподумалось что речь пойдет о WCF Duplex, но нет, в проекте NetTCP - это пожалуй единственное чего я не глядел.
Да, дуплекс - это как альтернатива. Но, по мне красивее написать свой честный CallbackContract (ITicketCallBack в примере).
...
Рейтинг: 0 / 0
Синхронизация Клиент(а/ов)
    #37045167
Фотография уТКа
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
МСУ,

блин.
чего избегали, на то и напоролись.

главная причина по которой не хотелось использовать Сокеты - это ограниченное кол-во портов на которых может работать Клиент сначала хотелось на Сильверлайт реализовать.

Так вот, посмотрел чего там предлагает WCF NET.TCP - это те же самые сокеты только через wcf-сервисы.

есть другое предложение?
...
Рейтинг: 0 / 0
Синхронизация Клиент(а/ов)
    #37045174
Фотография МСУ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
NetTcpBinding

Заметкииспользуемая по умолчанию конфигурация для TCP быстрее при обмене сообщениями между конечными точками, чем конфигурация по умолчанию для привязок HTTP

<netTcpBinding>

maxConnectionsЦелое число, указывающее максимальное число входящих и исходящих подключений, которые будут созданы/приняты службой. Входящие и исходящие подключения считаются относительно отдельного предела, определенного этим атрибутом.
Входящие соединения сверх указанного предела помещаются в очередь и обрабатываются по мере освобождения ресурсов .
Исходящие соединения сверх указанного предела помещаются в очередь и обрабатываются по мере освобождения ресурсов .
Значение по умолчанию — 10.


listenBacklogПоложительное целое число, указывающее максимальное число каналов, ожидающих принятия прослушивателем. Соединения сверх этого лимита помещаются в очередь и обрабатываются по мере освобождения ресурсов. Атрибут connectionTimeout ограничивает время, в течение которого клиент ожидает установления соединения до создания исключения подключения. Значение по умолчанию — 10.

Так же читать про буферные пулы.

P.S. Какие к чёрту сокеты? Какое ограниченное кол-во портов?
...
Рейтинг: 0 / 0
Синхронизация Клиент(а/ов)
    #37045178
Фотография МСУ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Там всё красиво и умное реализовано через пулы и очереди. Программисту не нужно понимать эту рутинную и сложную систему работы NetTcpBinding. Просто берём, конфигурим и работаем. А оно само там пулится и распихивается по очередям.
...
Рейтинг: 0 / 0
Синхронизация Клиент(а/ов)
    #37045182
Фотография уТКа
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
МСУ,

то что можно конфигурировать пул - это хорошо.

я про другое - сам Сильвер ограничен по портам, через которые можно производить коммуникации.
...
Рейтинг: 0 / 0
Синхронизация Клиент(а/ов)
    #37045236
Фотография МСУ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
уТКасам Сильвер ограничен по портам, через которые можно производить коммуникации.
Ссылка на документацию будет?
...
Рейтинг: 0 / 0
Синхронизация Клиент(а/ов)
    #37045290
Фотография уТКа
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
МСУ,

да вот
выдержкаOne additional restriction on using the sockets classes is that the destination port range that a network application is allowed to connect to must be within the range of 4502-4534. These are the only destination ports allowed by a connection from a Silverlight application using sockets. If the target port is not within this port range, the attempt to connect will fail. It is possible for a target server to receive connections on a port from this restricted range and redirect it to a different port (a well-known port, for example) if this is needed to support a specific existing application protocol.
...
Рейтинг: 0 / 0
Синхронизация Клиент(а/ов)
    #37045311
Фотография МСУ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
уТКа, ок спасибо. Ну так а какие могут быть проблемы использования клиентами одного порта из указанного перечня? Все будут ломиться по одному порту, всё чинно и благородно.
...
Рейтинг: 0 / 0
Синхронизация Клиент(а/ов)
    #37045315
Фотография Верблюд
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
МСУуТКа, ок спасибо. Ну так а какие могут быть проблемы использования клиентами одного порта из указанного перечня? Все будут ломиться по одному порту, всё чинно и благородно.

За одним маленьким "но" - в 90% случаев огнестенки просто пошлют все эти SL в далекое пешее путешествие.
...
Рейтинг: 0 / 0
Синхронизация Клиент(а/ов)
    #37045316
Фотография уТКа
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
МСУ,

ну если пул не будет захлебываться и заботиться о нем действительно не нужно, то дай бог, земледелие отложу до худших времен :)
...
Рейтинг: 0 / 0
Синхронизация Клиент(а/ов)
    #37045324
Фотография Верблюд
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В 4-м SL есть сокеты без ограничения на номера портов

http://msdn.microsoft.com/ru-ru/library/system.net.sockets(v=vs.95).aspx

Плюс, поддержка многоадресной рассылки UDP.
...
Рейтинг: 0 / 0
Синхронизация Клиент(а/ов)
    #37045336
Фотография уТКа
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Верблюд,

ну ну, для тех кто по англицки не понимает, выдержка отсюда :
выдержкаОдно дополнительное ограничение использования классов сокетов заключается в том, что диапазон целевого порта, к которому разрешено подключение сетевого приложения, должен находиться в пределах диапазона 4502-4534. Это единственные целевые порты, разрешенные подключением из приложения Silverlight с помощью сокетов. Если целевой порт не обнаружен в этом диапазоне портов, попытка подключения завершится неудачей. Целевой сервер может получать соединения по порту из этого ограниченного диапазона и перенаправлять их на другой порт (известный порт, например), если это необходимо для поддержки конкретного протокола существующего приложения.
...
Рейтинг: 0 / 0
Синхронизация Клиент(а/ов)
    #37045338
Фотография Верблюд
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
уТКа,

специально для тех, кто за буквами не видит текста. Ссылка та же.


авторВ Silverlight версия 4 доверенным приложениям также предоставлено разрешение на использование сетевых классов в пространстве имен System.Net.Sockets, включая новые классы UdpAnySourceMulticastClient и UdpSingleSourceMulticastClient без проверки политики. Доверенное приложение способно создавать TCP-подключение к любому порту любого узла, при этом файл политики междоменной связи не требуется. Целевой порт больше не должен находиться в диапазоне 4502-4534. Аналогичным образом доверенное приложение, использующее классы UdpAnySourceMulticastClient и UdpSingleSourceMulticastClient, может присоединиться к любой группе многоадресной рассылки через любой порт больший или равный 1024, при этом нет необходимости, чтобы ответчик авторизовал подключение. Чтобы воспользоваться преимуществами этих изменений не требуются дополнительные вызовы методов. Существующие методы не требуют проверок политики при запуске приложения вне браузера с повышенным уровнем доверия как доверенного приложения.
...
Рейтинг: 0 / 0
Синхронизация Клиент(а/ов)
    #37045355
Фотография уТКа
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Верблюд,

подними глаза выше и читай внимательно:
MSDNВ Silverlight версия 4 доверенным приложениям также предоставлено разрешение на использование сетевых классов...
где гарантия что пользователь захочет ставить/инсталлировать приложение?!

вот нашел пример со статьей по использованию Silverlight 4 + WCF NET.TCP
правда пришлось немного постараться чтобы заработало, но работает.
Модератор: уТКа и Верблюд, спокойнее!
...
Рейтинг: 0 / 0
Синхронизация Клиент(а/ов)
    #37045361
Фотография МСУ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
уТКа
MSDNВ Silverlight версия 4 доверенным приложениям также предоставлено разрешение на использование сетевых классов...
где гарантия что пользователь захочет ставить/инсталлировать приложение?!

Как это коррелирует с тем, что целевой порт (в SL4) обязан находиться в диапазоне 4502-4534?


уТКа вот нашел пример со статьей по использованию Silverlight 4 + WCF NET.TCP
правда пришлось немного постараться чтобы заработало, но работает.
Чем этот пример лучше приведенного мною на чистых TCP коллбеках? Более того, я изначально писал и о дуплексе как варианте.
...
Рейтинг: 0 / 0
Синхронизация Клиент(а/ов)
    #37045363
Фотография уТКа
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
МСУ,

О мой бог...

авторКак это коррелирует с тем, что целевой порт (в SL4) обязан находиться в диапазоне 4502-4534?
Доверенным (читать как Установленным) снимаются ограничения, тем что вы запускаете из браузера без предварительной установки доступ к сокетам есть, но с ограничениями по целевому порту.

авторЧем этот пример лучше приведенного мною на чистых TCP коллбеках? Более того, я изначально писал и о дуплексе как варианте.
Фишка в том что это так называемый "Self hosted" сервер в виде веб-приложения, откомпилили, закинули на хостинг и все, запускать ничего не нужно, просто работать как с wcf-сервисом.
...
Рейтинг: 0 / 0
Синхронизация Клиент(а/ов)
    #37045368
Фотография МСУ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
уТКаДоверенным (читать как Установленным) снимаются ограничения, тем что вы запускаете из браузера без предварительной установки доступ к сокетам есть, но с ограничениями по целевому порту.
Рузультат Application.Current.Install() будет являться гарантией? Жёсткий инсталл-таки, не дадим дальнейшего использования, пока результат не будет равен true.

уТКаФишка в том что это так называемый "Self hosted" сервер в виде веб-приложения, откомпилили, закинули на хостинг и все, запускать ничего не нужно, просто работать как с wcf-сервисом.
Хостить WCF можно как угодно, речь не об этом.
...
Рейтинг: 0 / 0
Синхронизация Клиент(а/ов)
    #37045369
Фотография bured
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
уТКа,

сегодня WAS для себя открыл?
...
Рейтинг: 0 / 0
25 сообщений из 45, страница 1 из 2
Форумы / WPF, Silverlight [игнор отключен] [закрыт для гостей] / Синхронизация Клиент(а/ов)
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]