Вы можете оптимизировать свой код следующим образом:
import re
form_win = ['2/5','1/4','3/2','4/1','5/8','1/3','7/10','8/6']
form_chr = ['a','b','c','d','e','f','g','h']
print('uglyst:',[ form_chr[cnt] for cnt, a in enumerate(form_win) if(re.match(r'^1\/', a))])
EDIT (2013): попробуйте вместо этого Бумеранг , как подсказывает @ yasei-no-umi. Он активно поддерживается.
- старый ответ -
Мы используем Jiffy .
Его очень просто использовать и модифицировать - мы написали собственный серверный код (вместо Apache Jiffy) + perl) и использовал Jiffy's JS.
Что касается снижения производительности - на стороне клиента его нет. Сам JS тривиально быстр, и отправка отчетов на сервер может быть выполнена с помощью XHR после загрузки страницы, что никак не влияет на работу пользователя. На стороне сервера вы получите в два раза больше запросов. Если это узкое место, вы можете настроить другой сервер только для синхронизации ответов.
Что относительно того, чтобы использовать что-то как yslow (расширение Firefox)?
У нас есть "отзывание" (1x1 прозрачное изображение GIF с параметром, представляющим идентификатор для рендеринга страницы) на странице, которая регистрирует "Страницу, просмотренную" к нашей базе данных. Это - записи с тем же идентификатором, что сама страница зарегистрирована, и у нас есть запись в журнале, когда наш рендеринг заканчивается.
, Таким образом, у нас есть время:
, Помогает с понимающими клиентами, которые являются "медленными" (ЦП или ISP/пропускная способность)
P.S. Рендеринг Page, который не звонит домой, представляет интерес также - нажатого пользователя - прочь (предполагающий, что другой рендеринг страницы на той сессии действительно записывал Телефон Домой)
Мы склонны использовать комбинацию из:
Firefox: Панель инструментов веб-разработчика Firebug YSlow
IE: Fiddler
Из всех этих я обнаружил, что YSlow дает наилучшую информацию о том, что вы можете сделать, чтобы улучшить время загрузки, но Fiddler дает наилучшую общую информацию о том, что вы можете ожидать по проводам, и может даже моделировать различные скорости сети.
Я довольно сомнителен из этих методов. Некоторые из этих методов более сложны, чем необходимый, и я подвергаю сомнению точность этих данных. То, что я сделал бы, сделали, чтобы тестеры перешли к различным сетям и использовали что-то как Firebug или что-то:
Для heck его; вот интересная статья, недавно представленная к SOSP на инструменте под названием AjaxScope. Интересно достаточно это - академическая статья, представленная Исследованием MS, которое показывает реализацию JavaScript Firefox, работающую много раз лучше, чем Internet Explorer в нескольких случаях. :)
Альтернативой Jiffy является Эпизоды .
Оба включают в себя инструментальную обработку вашего Javascript для отслеживания различных таймингов и регистрацию этих таймингов на центральном сервере.