Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 3.0 (http://www.flasher.ru/forum/forumdisplay.php?f=83)
-   -   шлюз на php или сервер на С (http://www.flasher.ru/forum/showthread.php?t=93549)

lemegeton 23.03.2007 18:28

шлюз на php или сервер на С
 
Всем привет. Есть работа выполненная на Flash+PHP+MySQL.
Т.е. графический интерфейс написан на AS2. Логика работы заложена в PHP и хранение данных MySQL. Flash соединяется с php скриптами через шлюз на php amfphp.
Но при высоких скоростях доступа в интернет, достаточно низкая скорость работы приложения. Я думаю написать на си сервак, к которому будет конектится клиент на AS3 через сокеты пересылать данные структурируя их XML. А вот уже сервак будет дальше решать проблему взаимодействия с базой.
Вопрос в том, насколько это повысит скорость обмена данными между клиентом и сервером.
Может быть есть какие-то другие решения данной задачи?

С уважением, Алексей.

motor4ik 23.03.2007 18:44

web-services , soap

lemegeton 26.03.2007 10:51

Так а чем плох вариант Си+AS3?

etc 26.03.2007 11:08

А кто сказал, что плох? Оправдан ли?

lemegeton 26.03.2007 11:33

так вот и я о том же... Увеличится ли скорость и надежность? или будет пустая трата времени? вот в чем вопрос...
Просто понимаете, при работе по технологии Flash+AMF+PHP+MySQL прога бывает тормозит... При обращении к базе не всегда происходит успешный вызов. Приходится проверять возвращаемое значение функции на php и если оно не удовлетворяет блокировать экран и повторять операцию... Вот и встал вопрос о выборе другой коснтрукции приложения

etc 26.03.2007 12:06

Сокет имеет смысл применять, если требуется обеспечить двусторонную связь. В противном случае использовать методы, предложенные моторчиком.
Я в этих сервисах не специалист, что-то конкретное подсказать не могу, но это примерно то же, что и AMF.

lemegeton 26.03.2007 12:22

Да 30-40 процентов вызываемых функций, возвращают массив данных, которые используются клиентом на флеш. Значит Вы советуете в данном случае использовать сокет?

etc 26.03.2007 12:24

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

lemegeton 26.03.2007 14:47

А никто не знает, есть ли смысл использовать С#? Не будет такая конструкция работать быстрее и надежнее?

etc 26.03.2007 14:55

Всё зависит от того, как надежно будет написано.

8888

aksios 26.03.2007 15:23

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

lemegeton 26.03.2007 15:46

А на счет скорости, что скажите? Я читал, что работает вся эта байда не быстро, типа ActivX... Хотя некоторые говорят, что будет летать потому как технология сама по себе предпологает компиляцию один раз перед первым запуском... Вообщем осталось дело за малым сделать выбор :)

lemegeton 26.03.2007 15:58

Цитата:

Сообщение от aksyos
Это не вопрос - какой сервак, какое подключение, и т.д. ваще такая связка у всех нормалных людей работает идеально. Понятно на никсе. Понятно если глюков в коде нет.

Какая именно связка работает идеально?
Как раз таки вопрос абсолютно нормальный. Каждая технология имеет свои плюсы и свои минусы. Вот как раз это я и хочу выяснить. Я считаю, что использование шлюза, который потом подрубает скрипты тормозит работу... Если я не прав, поправьте меня и объясните почему.
Демон на мой взгляд будет работать быстрее хотя бы потому что не надо грузить интерпритатор php... Вообщем поиски на самом деле абсолютно логичны. А с Вашим подходом можно писать страницы на html и только и говорить - Это работает. Поэтому не надо ничего искать!

aksios 26.03.2007 16:11

Цитата:

Сообщение от lemegeton
Какая именно связка работает идеально?
Как раз таки вопрос абсолютно нормальный. Каждая технология имеет свои плюсы и свои минусы. Вот как раз это я и хочу выяснить. Я считаю, что использование шлюза, который потом подрубает скрипты тормозит работу... Если я не прав, поправьте меня и объясните почему.
Демон на мой взгляд будет работать быстрее хотя бы потому что не надо грузить интерпритатор php... Вообщем поиски на самом деле абсолютно логичны. А с Вашим подходом можно писать страницы на html и только и говорить - Это работает. Поэтому не надо ничего искать!

Так что за платформа?

lemegeton 26.03.2007 16:14

Платформа Linux Fedora. Но если возникнет необходимость использовать C#, то можно и Windows сервак арендовать.

aksios 26.03.2007 17:24

Цитата:

Сообщение от lemegeton
Платформа Linux Fedora. Но если возникнет необходимость использовать C#, то можно и Windows сервак арендовать.

Не знаю, я бы сначало протестил отдельно серверную часть. Причем, с записью реальных таймов. Просто вы вопрос задали в таком интересном разделе...
Есть мнение, что под виндой мускул ваще выпадет в осадок.
Под Феодорой как то всего многа напихано и есть подозрение, что то там лишнее висит или настройки там какие. Не могет такого быть, что тормоза были по вине пхп. Не, они конечна могут быть, в случае мега проекта с 1000 одновременных подключений.

lemegeton 26.03.2007 18:20

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

Всем большое спасибо.

Usnul 28.03.2007 15:28

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

Удачи

lemegeton 28.03.2007 15:41

Спасибо

BlooDHounD 28.03.2007 18:40

Ну рас тут нет знатоков, то выскажусь я, как человек тесно связаный с такой системой.

Отличия сокетных соединений изначально заложено в подходе.

Апач, как сервер, на каждое сокетное соединение создаёт новый поток. Это связано с тем, что каждое конкретное соеденение не общается друг с другом. И каждый запуск скрипта индивидуален и не нуждается в общении своих запущеных копий. Каждый новык поддерживаемый поток требует конкретных затрат памяти и процессорного времени.

У С для обработки сокетов используется один поток. Так как изначально заложен болие низкий уровень, и большие требования. Например соеденения могут общаться друг с другом, напрямую с памятью и т.д. Один единственный поток экономит ресурсы в 10ки раз.

Например грамотно написаный С сервер на линуксе сможет одноверенно держать около 20 тысяч соединейний. Апач ляжет. По энерго затратам, разница в 100 соединений и 10000 будет практически не различима.

etc 28.03.2007 19:00

Это все верно, но в контексте данной задачи, я не уверен, что это нужно. Если это не чат или что-то для взаимодействия с несколькими пользователями.

BlooDHounD 28.03.2007 20:17

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

etc 28.03.2007 20:29

Ну в первом посте ж было написал PHP+MySQL. Врядли тут нужен сокет…

__i 29.03.2007 11:53

я думаю что причина в кривых ручках... былобы нефигово посмотреть на то что там в ПХП коде твориться и что там БД. Знаем мы некоторых граматеев) которые че хочишь положат своими перлами.

etc 29.03.2007 13:20

Ну БД тормозить может, например, из-за виртуального хоста. А на вирт. хост и сокет-то не поставишь…

motor4ik 29.03.2007 13:46

все зависит от времени, средств... Си +as3 нормальный вариант, если он может писать. пусть пишет ))


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

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