Запрос в php файл от Flash зависает в Safari

Прошлые два дня мы пробегались через эту проблему в течение нескольких часов для выяснения то, что продолжается и мы не можем найти подсказки. Вот то, что происходит; у Нас есть приложение Flash, которое позволяет людям размещать заказы. Пользователи настраивают продукт, и изображение того продукта сгенерировано Flash на лету и представлено пользователю. При удовлетворении они могут отправить заказ к серверу. Массив байтов изображения и некоторых других переменных отправляется на сервер, который обрабатывает заказ и генерирует PDF со сводкой порядка и изображением продукта. Сценарий порядка тогда передает все обратно браузеру.

Это все идет действительно хорошо, за исключением Safari на OSX 10.4. Иногда порядок проникает, но большую часть времени Safari зависает. При рассмотрении окна Activity в Safari это указывает, что ожидает сценария порядка и что это - "0 байтов?". Мы думали, что было что-то не так с сервером, таким образом, мы попробовали несколько других серверов, но проблема сохраняется. Первоначально мы использовали простое сообщение для обработки заказа, но, чтобы решить эту проблему, мы обратились к некоторым более сложным методам как дистанционная работа Flash через AMFPHP. Это не решило проблему также.

Мы используем Charles для контроля http трафика, чтобы выяснить, оставляют ли запросы браузер вообще, но странная вещь состоит в том, что, когда Charles работает, мы не можем воспроизвести проблему.

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

10
задан onomio 6 February 2010 в 15:00
поделиться

1 ответ

Нет ничего плохого в создании собственных исключений, которые могут быть адаптированы для передачи именно той информации, которая подходит для вашей ситуации. ConfigFileNotFoundException предоставляет больше информации, чем FileNotFoundException (какой файл мы не нашли?).

Но всеми способами убедитесь, что вы ловите и обрабатываете каждое пользовательское исключение в из вашего кода . Когда исключение летит в какое-то место за пределами вашего модуля (вызывайте его пакет, называйте его пространством имен), эти люди там даже не будут знать, что оно существует, и тем более что с ним делать. За исключением улова (Метаемый t) {/* whut? */} .

-121--3431282-

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

Использование F # это мое понимание комбинаторов:

let sum a  b = a + b;; //sum function (lambda)

В приведенном выше случае сумма является комбинатором, потому что и a , и b связаны с параметрами функции.

let sum3 a b c = sum((sum a b) c);;

Приведенная выше функция не является комбинатором, так как использует sum , который не является связанной переменной (т.е. не исходит ни из одного из параметров).

Сум3 можно сделать комбинатором, просто передав функцию суммы в качестве одного из параметров:

let sum3 a b c sumFunc = sumFunc((sumFunc a b) c);;

Этот путь sumFunc является связанной и, следовательно, вся функция является комбинатором.

Итак, это мое понимание комбинаторов. Их значение, с другой стороны, все еще ускользает от меня. Как отмечали другие, комбинаторы с фиксированной точкой позволяют выразить рекурсивную функцию без явной рекурсии. То есть вместо вызова самой себя рекурсивная функция вызывает лямбду, которая передается в качестве одного из аргументов.

Вот одна из наиболее понятных производных комбинатора, которую я нашел:

http://mvanier.livejournal.com/2897.html

-121--1032016-

просто дикая догадка:

Возвращает ли PDF результат 1 http-запроса, который оба отправляет все необходимые данные на сервер и получает pdf в результате? В противном случае это может быть проблема синхронизации - вы уверены, что все данные доступны на сервере в момент запроса pdf? Количество разрешенных параллельных подключений к веб-сайту не одинаково для всех брендов/версий браузера, и, возможно, это может повлиять на вероятность «столкновения».

Простой тест: введите задержку между отправкой данных на сервер и извлечением pdf и проверьте, имеет ли это какой-либо эффект.

1
ответ дан 4 December 2019 в 04:53
поделиться
Другие вопросы по тегам:

Похожие вопросы: