Обработка изображений для веб-приложения: на сервере или в браузере? - PullRequest
2 голосов
/ 29 декабря 2010

Я пытаюсь сделать веб-приложение из написанной мной программы, которая развивает изображения и использует PIL (Python Imaging Library) для обработки изображений.Однако я новичок в веб-разработке и не уверен, должен ли я размещать довольно дорогой в вычислительном отношении компонент обработки изображений моего приложения на веб-сервере, используя что-то вроде Java Servlets или (для python) WSGI, или в браузере, использующем Javascript нахолст HTML5.Я создал простое приложение web.py, которое выполняет обработку изображений на сервере, но мои первоначальные тесты показывают значительную задержку при отправке синтезированных изображений по HTTP клиенту (они представляют собой небольшие изображения размером 200x200 пикселей).Какой твой совет?Как бы вы подошли к этой проблеме?

Спасибо!

Ответы [ 3 ]

1 голос
/ 20 июня 2011

Вы можете обрабатывать изображения как на стороне сервера, так и на стороне браузера.Создайте свои изображения на сервере с помощью сервлета Java, используя, скажем, java.awt.Image и управляйте / аннотируйте представление изображений в браузере, используя HTML5 CanvasЗадержка, скорее всего, будет вызвана обработкой изображения на сервере, а не передачей в браузер.Из-за времени, которое требуется для обработки изображения на сервере, вам может потребоваться асинхронная обработка изображения и его доставка в стиле Ajax, чтобы избежать блокировки браузера пользователя.Вы можете определить, поддерживает ли браузер пользователей поддержку HTML5, используя Modernizr из JavaScript.

0 голосов
/ 29 декабря 2010

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

0 голосов
/ 29 декабря 2010

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

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