Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Сообщения за день
 

Вернуться   Форум Flasher.ru > Flash > Серверные технологии и Flash

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 21.10.2013, 11:26
Lemyr вне форума Посмотреть профиль Отправить личное сообщение для Lemyr Найти все сообщения от Lemyr
  № 1  
Ответить с цитированием
Lemyr

Регистрация: Oct 2013
Сообщений: 5
По умолчанию AS3/PHP/MySQL = игра на сколько это рентабельно?

Всем привет. Я студент(по этому прошу сразу строго не судить) решил по-развиваться в области flash - казуалочки. В мыслях уже бродил идеи на тему карточной игры с элементами стратегии, но это только мысли а так я начал просто с заходи и регистрации)) и как и предполагал тут же столкнулся с кучей проблем, некоторые из них даже немного озвучены на форуме, но я все равно их задам, вдруг кто-нибудь скажет что-нибудь новое.
1 первый вопрос, собственно, адекватно ли создавать AS3/PHP/MySQL связку для игры, прочитал много статеек, предлагают воснавном именно этот вариант.
2 начал реализовывать эту связку и первое что попалось на глаза - я не могу отслеживать кто на данный момент онлайн. те я создал табличку в которой при входе выставляется 1 ка зашедшему. но как адекватно отследить выход человека я не смог придумать, а есть еще ситуация просто разрыва соединения.
3 для работы с базой использовал одного пользователя, но при первых же тестах с 2х киентов, возникли коллизии, что под каждое соединение не запускается своя сессия и вываливаются охибка о количестве возможных подключений.

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

Старый 21.10.2013, 12:20
Korchy вне форума Посмотреть профиль Отправить личное сообщение для Korchy Найти все сообщения от Korchy
  № 2  
Ответить с цитированием
Korchy
 
Аватар для Korchy

Регистрация: May 2011
Сообщений: 301
Записей в блоге: 2
1. Вполне можно. Нормальный вариант для начала и обучения.
2. Гуглите "сокет-сервер". На php вполне можно написать простейший сервер. Опять же для начала и обучения. Для более развитых серверов подойдет ява или c++. Но принципы одни.
3. Опять же гугл спасет. Для соединения с базой данных вы в любом случае будет использовать одного пользователя. Если имеется ввиду именно пользователь базы данных. А уже внутри базы можно организовать список игроков с данными об их регистрациях.
__________________
interplanety

Старый 21.10.2013, 12:30
caseyryan вне форума Посмотреть профиль Отправить личное сообщение для caseyryan Найти все сообщения от caseyryan
  № 3  
Ответить с цитированием
caseyryan
 
Аватар для caseyryan

Регистрация: Jun 2012
Адрес: Новосибирск
Сообщений: 6,644
Записей в блоге: 4
Для игры, в которой в реальном времени должен отслеживаться статус игрока (онлайн), то эта связка не совсем адекватна. Нужно использовать сокеты, а php и сокеты - это извращение. В качестве базы данных MySQL вполне хороший вариант, но вот сервер лучше написать на Java, C++ или другом языке в котором сокеты реализованы нормально.
Есть конечно такая штука как long-polling для длительного ожидания ответа от сервера, но это тоже костыльный вариант по сравнению с сокетами.

Рекомендую сначала взять готовый сервер, типа Node.js или http://www.unionplatform.com/

Старый 21.10.2013, 20:32
Lemyr вне форума Посмотреть профиль Отправить личное сообщение для Lemyr Найти все сообщения от Lemyr
  № 4  
Ответить с цитированием
Lemyr

Регистрация: Oct 2013
Сообщений: 5
Спасибо, в итоге решил что буду писать сокеты на Java(сегодня развлекался написал чатик с клиентом на as и сервером java). Ключевым, наверное, стало то, что php не может сам инициировать сообщение, а только отвечает. а это крайне не удобно. Теперь стоит вопрос в хостинге(локально не удобно тк пишу в разных местах) на эту тему ничего не посоветуете(понятно дело хочется бесплатно или подешевле, а так как я только буду писать а на нем тестить нагрузка будет не велика)? Ну или возможно видели где книжку или статью описывающую архитектуру данных приложений(желательно на русском)
На тему бд, как посмотреть максимальное количество подключений от одного пользователя, и как если что поменять?

Добавлено через 42 часа 30 минут
Продвигаясь в изучении возникают новые вопросы. По результатам просмотра новых статей решил, что клиентский проэкт надо разделить на несколько swf. одна например хранит графику, другая функционал, а основная чисто интерфейс. но способов реализации там вызова фии из смежной свифки или подгрузки графики я не нашел. прошу помочь.


Последний раз редактировалось Lemyr; 23.10.2013 в 15:04.
Старый 25.10.2013, 03:27
djyamato вне форума Посмотреть профиль Отправить личное сообщение для djyamato Посетить домашнюю страницу djyamato Найти все сообщения от djyamato
  № 5  
Ответить с цитированием
djyamato
 
Аватар для djyamato

Регистрация: Feb 2006
Сообщений: 884
Записей в блоге: 2
Отправить сообщение для djyamato с помощью ICQ Отправить сообщение для djyamato с помощью Skype™
пхп вообще не может ни на что ответить после того как страница загружена так как "он уж отработал" до этого и страница = результат его работы (частично)

Писать сокеты на java самому это преступление, возьмите готовый сервак, а лучше откройте сразу red5 для себя (он бесплатный, может с БД напрямую коннектится и кучу-кучу всего, + Spring со всеми вытекающими)
PS Он кроссплатформенный, для первой игрушки - то что доктор прописал: все умеет, синтаксис почти такой же как в AS
(я про java)

Старый 25.10.2013, 03:38
C4Grey вне форума Посмотреть профиль Отправить личное сообщение для C4Grey Найти все сообщения от C4Grey
  № 6  
Ответить с цитированием
C4Grey

Регистрация: May 2007
Сообщений: 181
Отправить сообщение для C4Grey с помощью ICQ Отправить сообщение для C4Grey с помощью Skype™
Цитата:
Сообщение от djyamato Посмотреть сообщение
пхп вообще не может ни на что ответить после того как страница загружена так как "он уж отработал" до этого и страница = результат его работы (частично)
Это не так. Но PHP, как и пишет автор статьи по ссылке, предназначен для решения других задач.
Цитата:
Сообщение от djyamato Посмотреть сообщение
Писать сокеты на java самому это преступление, возьмите готовый сервак
IMHO, преступлением это назвать сложно, но вот научиться чему-то в процессе написания своего сокет-сервера точно можно, готовые решения этих знаний не дадут.

Старый 25.10.2013, 09:08
caseyryan вне форума Посмотреть профиль Отправить личное сообщение для caseyryan Найти все сообщения от caseyryan
  № 7  
Ответить с цитированием
caseyryan
 
Аватар для caseyryan

Регистрация: Jun 2012
Адрес: Новосибирск
Сообщений: 6,644
Записей в блоге: 4
Цитата:
IMHO, преступлением это назвать сложно, но вот научиться чему-то в процессе написания своего сокет-сервера точно можно, готовые решения этих знаний не дадут.
Полностью поддерживаю. Я бы даже сказал советовать red5 начинающему - большее преступление. В нем целая гора всего ненужного для новичка, да и даже установить и настроить его - далеко не тривиальная задача для начинающего.

Старый 25.10.2013, 11:14
Lemyr вне форума Посмотреть профиль Отправить личное сообщение для Lemyr Найти все сообщения от Lemyr
  № 8  
Ответить с цитированием
Lemyr

Регистрация: Oct 2013
Сообщений: 5
Честно, не люблю пользоваться чужими вещами(хотя понимаю что это не правильно и что надо учится пользоваться чужими качественно сделанными наработками), но как говорил один мой преподаватель "мне проще написать свой эксель чем научится работать в этом". К тому же мне нравится делать обработки событий и сообщений на сервере(может, конечно, потому что ничего сложней сетевых больших крестиков ноликов не делал)

В итоге я решил сделать так: Сервер на Java\сокеты(пишется но пока на уровне чатика))) - отвечает за динамические события(битва и тп) и выполняет в основном инсерты в базу, PHP - будет выдавать статические данные(типа хелпашника) и клиент на AS3.

Правда вопрос с базой остается. Как настроить MySQL так чтобы один пользователь мог конектиться несколько раз одновременно?

Старый 25.10.2013, 11:14
Psycho Tiger вне форума Посмотреть профиль Отправить личное сообщение для Psycho Tiger Найти все сообщения от Psycho Tiger
  № 9  
Ответить с цитированием
Psycho Tiger
 
Аватар для Psycho Tiger

блогер
Регистрация: Jun 2005
Адрес: Toronto
Сообщений: 6,599
Записей в блоге: 17
Берите Node.js. Если есть желание поучиться чуть больше, но получая удовольствие в будущем – добавьте CofeeScript.
Цитата:
Теперь стоит вопрос в хостинге(локально не удобно тк пишу в разных местах) на эту тему ничего не посоветуете(понятно дело хочется бесплатно или подешевле, а так как я только буду писать а на нем тестить нагрузка будет не велика)?
Используйте дропбокс и разрабатывайте везде локально.

Старый 25.10.2013, 11:49
Lemyr вне форума Посмотреть профиль Отправить личное сообщение для Lemyr Найти все сообщения от Lemyr
  № 10  
Ответить с цитированием
Lemyr

Регистрация: Oct 2013
Сообщений: 5
Цитата:
Сообщение от Psycho Tiger Посмотреть сообщение
Используйте дропбокс и разрабатывайте везде локально.
а есть портабл дропбокс? просто частично я разрабатываю на работе когда заказов нет, и ставить на раб комп ничего незя(точнее прав нет)

Создать новую тему Ответ Часовой пояс GMT +4, время: 19:06.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


Часовой пояс GMT +4, время: 19:06.


Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.