Сегодня публикуем вторую часть перевода материала, посвящённого статическому анализу больших объёмов серверного Python-кода в Instagram.
Рубрика «Разработка веб-сайтов» - 90
Статический анализ больших объёмов Python-кода: опыт Instagram. Часть 2
2019-11-06 в 9:30, admin, рубрики: python, Блог компании RUVDS.com, разработка, Разработка веб-сайтов9 лучших опенсорс находок за октябрь 2019
2019-11-05 в 12:41, admin, рубрики: big data, javascript, open source, python, Разработка веб-сайтов, разработка мобильных приложенийДоброго ноября, дамы и господа. Подготовил для вас подборку самых интересных находок из опенсорса за октябрь 2019.
За полным списком новых полезных инструментов, статей и докладов можно обратиться в мой телеграм канал @OpensourceFindings (по ссылке зеркало, если не открывается оригинал).
В сегодняшнем выпуске.
Технологии внутри: Rust, Swift, TypeScript, JavaScript, Go, Scala, Python.
Тематика: веб и мобильная разработка, визуализация данных, инструменты разработчика, документация.
Стриминг видеозвонков по RTMP
2019-11-05 в 10:28, admin, рубрики: javascript, rtmp, rtmp protocol, streaming, voximplant, Блог компании Voximplant, Программирование, Работа с видео, Разработка веб-сайтов
Сегодня стриминг-платформы на пике популярности, так как миллионы талантливых людей регулярно делятся своими знаниями – читай, используют стриминг на всю катушку. Так как этот рынок растет, то существует и масса приложений, которые могут стримить видео в реальном времени, используя камеру смартфона или ноутбука. Возможно, вы тоже хотите внедрить в ваше приложение такую функциональность; если так, то спешим обрадовать – теперь Voximplant позволяет прокидывать видеозвонки по RTMP в любой CDN, который поддерживает этот протокол.
Эта функциональность стала возможна благодаря новому модулю Voxengine – StreamingAgent. Под катом вас ждут 5 шагов по настройке этой интеграции, добро пожаловать!
Читать полностью »
Статический анализ больших объёмов Python-кода: опыт Instagram. Часть 1
2019-11-05 в 9:30, admin, рубрики: python, Блог компании RUVDS.com, разработка, Разработка веб-сайтовСерверный код в Instagram пишут исключительно на Python. Ну, в основном это именно так. Мы используем немного Cython, а в состав зависимостей входит немало C++-кода, с которым можно работать из Python как с C-расширениями.
Наше серверное приложение — это монолит, представляющий собой одну большую кодовую базу, состоящую из нескольких миллионов строк и включающую в себя несколько тысяч конечных точек Django (вот выступление, посвящённое использованию Django в Instagram). Всё это загружается и обслуживается как единая сущность. Из монолита выделено несколько сервисов, но в наши планы не входит сильное разделение монолита.
Наша серверная система — это монолит, который очень часто меняется. Каждый день сотни программистов делают сотни коммитов в код. Мы непрерывно разворачиваем эти изменения, делая это каждые семь минут. В результате развёртывание проекта в продакшне выполняется около ста раз за сутки. Мы стремимся к тому, чтобы между попаданием коммита в ветку master и развёртыванием соответствующего кода в продакшне проходило бы менее часа (вот выступление об этом, сделанное на PyCon 2019).
Очень сложно поддерживать эту огромную монолитную кодовую базу, делая в неё ежедневно сотни коммитов, и при этом не довести её до состояния полного хаоса. Мы хотим сделать Instagram местом, работая в котором, программисты могут быть продуктивными и способными быстро готовить к выходу новые полезные возможности системы.
Этот материал посвящён тому, как мы пользуемся линтингом и автоматическим рефакторингом для того чтобы облегчить управление кодовой базой, написанной на Python.
Если вам интересно будет опробовать некоторые идеи, упомянутые в этом материале, то знайте, что недавно мы перевели в разряд опенсорсных проект LibCST, который лежит в основе многих наших внутренних инструментов, предназначенных для линтинга и автоматического рефакторинга кода.
Читать полностью »
Открытые бенчмарки для нагрузочного тестирования серверов и веб-приложений
2019-11-04 в 19:31, admin, рубрики: 1cloud, linux, бенчмаркинг, Блог компании 1cloud.ru, нагрузочное тестирование, подборка инструментов, Разработка веб-сайтовЭто — подборка утилит, составленная на основе рекомендаций резидентов Hacker News и GitHub. В список вошли: Locust, Vegeta, Slow_cooker, k6 и Siege. Ими пользуются инженеры из DICE, EA и Buoyant, а также разработчики Kubernetes и Load Impact. Расскажем об этих инструментах.
Часть вторая. Как проходить code review по версии Google
2019-11-04 в 17:23, admin, рубрики: code review, Программирование, Разработка веб-сайтов, Совершенный кодВозможно вы читали первую часть статьи про код ревью со стороны ревьювера (кстати, мы уже успели ее обсудить в последнем выпуске подкаста "Цинковый прод").
Так как статья набрала много лайков, пишу обещанное продолжение про код ревью с другой стороны — со стороны автора изменений кода
Как обычно, будем говорить MR (Merge Request) вместо CL, потому что термин CL мало кто понимает.
Оригинал инструкции для авторов MR по версии Google можно посмотреть здесь, а я дам краткую выжимку.
Итак, поехали
Ещё 5 дерзких тренировочных проектов для разработчика (Layer, Squoosh, Калькулятор, Website Crawler, Music Player )
2019-11-04 в 14:49, admin, рубрики: edisonsoftware, javascript, Блог компании Edison, практика, Программирование, Разработка веб-сайтов, Учебный процесс в ITПродолжаем серию проектов для тренировки.
PHP-Дайджест № 167 (22 октября – 4 ноября 2019)
2019-11-04 в 0:15, admin, рубрики: Laminas, laravel, php, PHP 7.4, php-дайджест, symfony, yii, zend, дайджест, Разработка веб-сайтовСвежая подборка со ссылками на новости и материалы. В выпуске: PHP 7.4.0 RC5, Xdebug 2.8, критическая уязвимость в PHP-FPM, новости из PHP Internals, порция полезных инструментов, подкасты, стримы и многое другое.
Приятного чтения!
Как заставить ваши веб-приложения работать в автономном режиме
2019-11-03 в 22:08, admin, рубрики: accessibility, edisonsoftware, javascript, Блог компании Edison, Программирование, Разработка веб-сайтовСила JavaScript и браузерного API
Мир становится все более взаимосвязанным — число людей, имеющих доступ к Интернету, выросло до 4,5 миллиардов.
Но в этих данных не отражено количество людей, у которых медленное или неисправное интернет соединение. Даже в Соединенных Штатах 4,9 миллиона домов не могут получить проводной доступ к интернету скорость которого будет более 3 мегабит в секунду.
Остальной мир — те, кто имеет надежный доступ к Интернету — все еще подвержен потере соединения. Некоторые факторы, которые могут повлиять на качество сетевого подключения, включают в себя:
- Плохое покрытие от провайдера.
- Экстремальные погодные условия.
- Перебои питания.
- Пользователи, попадающие в «мертвые зоны», такие как здания, которые блокируют их сетевые подключения.
- Путешествие на поезде и проезд туннелей.
- Соединения, которые управляются третьей стороной и ограничены во времени.
- Культурные практики, которые требуют ограниченного или отсутствия доступа в Интернет в определенное время или дни.
Учитывая это, ясно, что мы должны учитывать автономный опыт при разработке и создании приложений.
Читать полностью »
Дайджест свежих материалов из мира фронтенда за последнюю неделю №387 (28 октября — 3 ноября 2019)
2019-11-03 в 21:27, admin, рубрики: angular, css, ES6, html, html5, javascript, JS, React, vue, браузеры, дайджест, Разработка веб-сайтов, ссылки, фронтендПредлагаем вашему вниманию подборку с ссылками на новые материалы из области фронтенда и около него.