Собрали в одном месте самые важные ссылки
и сделали Тренажер IT-инцидентов для DevOps/SRE
Изучаю python kivy и для себя решил написал маленькое приложение, чтобы разнообразить свое питание. Решил поделиться. Статья рассчитана на новичков в kivy. Приложение занимает около 100 строк кода.
Цель создания велосипеда приложения:
При развитии веб-сайта, на котором добавлена возможность писать комментарии или публиковать статьи, в которых разрешена html-вёрстка, важен механизм для очистки нежелательных html-тегов, в частности тегов script и style , поскольку вредоносные скрипты на качественном ресурсе точно не должны присутствовать. А также хорошо будет иметь возможность очистки стиля текста, особенно, если ресурс подразумевает единообразный стиль.
Из доклада вы узнаете все подробности из жизни внутренних механизмов Django: от первого байта HTTP запроса до последнего байта ответа. Настоящая феерия от том, как работает парсер форм, как компилируется SQL, как реализован шаблонизатор для HTML, как управляется connection pool и т.д. Всё это в хронологическом порядке обработки WSGI объектов.
Данная статья является переводом статьи Кевина Голдберга «A Performance Analysis of Python WSGI Servers: Part 2» dzone.com/articles/a-performance-analysis-of-python-wsgi-servers-part с небольшими дополнениями от переводчика.
Все мы знаем "Тест Тьюринга". В классическом его варианте человек и машина отвечают на вопросы судьи, причем судья не видит отвечающих и должен только по ответам догадаться, кто из них кто.
Про этот тест даже снят короткометражный игровой фильм «Кто за стеной». Можно сказать, фантастический, потому что действие по сюжету происходит в конце 2000 года, а снят он, на минуточку, в 1977 году. Если не видели — посмотрите обязательно, и обязательно до конца — как и положено в короткометражном фильме, развязка будет неожиданна.
Переход с классических языков программирования на Питон доставляет немало сюрпризов.
Читаем документацию:
Generally speaking, instance variables are for data unique to each instance and class variables are for attributes and methods shared by all instances of the class
WSGI-серверы появились потому, что веб-серверы в то время не умели взаимодействовать с приложениями, написанными на языке Python. WSGI (произносится как «whiz-gee» с твердым «g») был разработан Филиппом Дж. Эби (вместе с Ян Бикинг и др.) В начале 2000-х годов. Модуль Apache, известный как mod_python, разработанный Григорием Трубецким в конце 90-х годов, на тот момент обрабатывал большую часть Python-приложений. Однако mod_python не был официальной спецификацией. Он был просто создан, чтобы разработчики могли запускать код Python на сервере. К сожалению, такой подход был небезопасным и разработчики начали искать новое решение.
WSGI(Web-Server Gateway Interface) является потомком CGI(Common Gateway Interface). Когда веб начал развиваться, CGI разрастался из-за поддержки огромного количества языков и из-за отсутствия других решений. Однако, такое решение было медленным и ограниченным. WSGI был разработан как интерфейс для маршрутизации запросов от веб-серверов(Apache, Nginx и т.д.) на веб-приложения.