• FMS А есть тут спец по Flash Media Server, который может дать линк на best practices по отладке взаимодействия с FMS? А то Charles его не берет, а говно откуда-то прет :(

Replies (17)

  • @Constantiner, Ну вот сам протокол снифать не приходилось, обычно хватало поглядеть на клиенте и на сервере, чего посылается и приходит. А если пустить через http-тунелиг, то может Charles покажет, чего там?
  • @yzh44yzh, Можно подробнее про последний пункт?
  • @Constantiner, FMS может работать как веб-сервер через 80й порт. Увы, сам я этого не пробовал, так что подробности в документации.
  • @yzh44yzh, Подозреваю, что надо что-то менять на сервере. Мне бы какой способ при уже существующем сервере. Там какая-то консоль есть, смысла и назначения в которой я так и не понял. Может, она может?
  • @Constantiner, Fms консоль — незаменимый (в прямом смысле, ибо альтернатив нет) в отладке тул. Показывает в риал тайме трейсы, число соединений, число видео стримов, траффик, нагрузку на проц, расход памяти и т.д.

    На FMS пишешь
    client.SomeMethod(someData)
    {
    trace(someData);
    }
    в консоли наблюдаешь, чего trace показывает. Унылая отладка, но другой нету.
  • @yzh44yzh, То есть чисто состав данных он показать не может?
  • @Constantiner, Ну ты имеешь объект, уже десериализованный (может даже и типизированый, хотя на стороне FMS это не важно). Можешь перебрать свойства этого объекта и поглядеть.

    Debug = {};

    Debug.Trace = function(input /Object/) /Void/
    {
    if(input instanceof Object)
    {
    trace('|Object');
    for(var prop in input) trace('|-- [' + prop + '] [' + input[prop] + ']');
    trace('|End Object');
    }
    else trace(input);
    }
  • @Constantiner, В общем, отладка там такая:
    — модифицируешь asc код, расставляешь trace где надо
    — рестартуешь fms приложение
    — запускаешь (перезапускаешь) клиент
    — выполняешь юзерские действия, которые приведут к выполнению нужного кода на сервере
    — втыкаешь в логи в консоли, думаешь :)

    убого, да. Поэтому я сделал либу для юнит-тестов (готовой не нашел), чтобы упростить это все дело. Чего юнит-тестами покрыто, то не нужно тестировать таким вот образом.
  • @yzh44yzh, Бля, вот пиздец. Других слов нет :( И это говно стоит денег и позиционируется как сервер приложений :( Как по мне, так это просто морально устаревший Fail :(
  • @Constantiner, Ну мы в итоге у себя сделали вывод, что медиа сервер не нужно использовать как сервер приложений. Пусть он занимается передачей видео и только.

    Правда тебе эта мысль ничем не поможет :(
  • @yzh44yzh, Ну вот хз. Мне для понимания этого факта понадобилось несколько часов. Но я чувствую некоторый подвох. Может, я правда что-то не учитываю? Особенно не могу понять и учесть инвестиций. Ведь вариант FMS в качестве сервера приложений много дороже!
  • @Constantiner, Его покупают для видео стриминга. И здесь FMS лучший. Ну а раз уж он куплен, то можно съэкономить тем, что не брать дорогого сервер-сайд программиста, а поручить это дело уже имеющемуся в штате флэш-разработчику. И оный за день склепает на JavaScript всю серверную логику.
  • @Constantiner, Это вообще политика Адоби — все сделать для того, чтобы писать код могли флэш-дизайнеры.
  • @yzh44yzh, Ну я вот тут неиллюзорно наблюдаю случай, когда по части клиент-серверного взаимодействия FMS является лишь фасадом для Java-сервера. Такое решение выворачивает мне внутренности :(
  • @yzh44yzh, Типа больше говнокода хорошего и разного? :)
  • @Constantiner, Ну это уже идиотизм. Java-серверу фасад не нужен, а такой — тем более.
  • @Constantiner, Типа что б попроще и побыстрее накодить. Ну и побочные эффекты соответствующие.
    Но ведь это мечта человечества — кодить проще и быстрее :)