
Данная статья посвящена способам повышения производительности PostgreSQL и EDB Postgres Advanced Server (EPAS) с 10 по 13 версии. Мы начнём с аппаратного обеспечения и будем двигаться вверх по стеку, оставив напоследок SQL-запросы.
User
Данная статья посвящена способам повышения производительности PostgreSQL и EDB Postgres Advanced Server (EPAS) с 10 по 13 версии. Мы начнём с аппаратного обеспечения и будем двигаться вверх по стеку, оставив напоследок SQL-запросы.
В eslint есть одно простое, но мощное правило, которое поможет вам в поддержании архитектуры приложения.
Когда пишешь код в IntelliJ IDEA, привыкаешь что везде есть подсказки, везде где можно работает комплишен, всегда можно одним кликом перейти на декларацию метода или на его юсаджи. После этого интерфейс командной строки выглядит как-то бедно. Конечно, он очень хорошо продуман, сделан настолько удобным, насколько это возможно в текстовом UI, но в графическом UI возможностей намного больше. Представляю вам плагин для JetBrains IDE, позволяющий работать в командной строке cо всеми удобствами IDE.
Почти все, с чем мы сталкиваемся в интернете, имеет отношение к API, а точнее к версиям этого программного интерфейса, использующим для работы HTTP-запросы. Когда мы хотим узнать прогноз погоды, интерфейс браузера или мобильного приложения вызывает API Яндекс.Погоды или API Gismeteo. Когда прокладываем кратчайший маршрут из одного места в другое, Яндекс.Карты вызывают соответствующее API.
Пользовательские API-интерфейсы могут быть реализованы на Python с использованием нескольких фреймворков. В этой статье остановимся на особенностях работы с одним из самых популярных вариантов — платформой FastAPI, библиотеки которой активно используют такие технологические гиганты, как Microsoft, Netflix, Uber. Речь пойдет о некоторых расширенных функциях FastAPI, которые могут использовать в своих проектах те разработчики, у кого уже есть базовые знания о фреймворке.
Алгоритмы являются фундаментальными строительными блоками в программировании и играют важнейшую роль в современном мире, основанном на технологиях. Они представляют собой набор инструкций для эффективного выполнения задач, таких как сортировка данных, поиск в базах данных и составление прогнозов. Автоматизируя эти процессы, алгоритмы помогают экономить время, сокращать количество ошибок и принимать обоснованные решения. Они лежат в основе многих технологий, которые мы используем в повседневной жизни, от социальных сетей до электронной коммерции, и оказывают значительное влияние на различные отрасли, от финансов до здравоохранения.
Например, практически каждый современный графический редактор предоставляет своим пользователям множество полезных и удобных инструментов. Один из таких инструментов — функция заливки однородной области указанным цветом.
Работает она очень просто: необходимо выбрать желаемый цвет заливки и кликнуть указателем мыши на нужную область изображения. В результате выбранный регион изменит цвет на указанный. Этот механизм реализуется специальным алгоритмом, который носит название «метод „наводнение“», или, по-английски, flood fill.
В этой статье мы возьмём интересную задачу с собеседования, которую можно решить при помощи алгоритма flood fill, разберём её и познакомимся с несколькими вариантами решения. В этом поможет Евгений Бартенев, техлид и автор курса «Python-разработчик» в Яндекс Практикуме.
Обзор кода - один и составляющих процессов поддержания качества программного обеспечения. В ходе него один или несколько человек изучают и оценивают программу в основном путем просмотра и чтения отдельных фрагментов его исходного кода.
Программисту легко запутаться в бесконечном списке дел и постоянно отвлекаться. Однако, используя правильные инструменты и методы, вы можете повысить свою производительность и сделать больше за меньшее время. В этой статье мы рассмотрим 7 советов по оптимизации рабочего процесса и повышению эффективности вашей работы как программиста. От постановки четких целей до заботы о своем здоровье - эти советы помогут вам работать умнее, а не тяжелее. Итак, давайте начнем!
Возможно сейчас это все выглядит в какой-то степени наивно, но именно из-за этой истории, которая произошла 10 лет назад, я уволился с должности руководителя направления разработки мобильных приложений крупной компании. Это сильно изменило мою жизнь. Что-то в лучшую сторону, а что-то в худшую, а что-то еще предстоит оценить. Испытания были серьезные, но обо всем по порядку. В этой части я расскажу про своего сына, и как он помог мне переосмыслить будущее
Продолжу рассказ "Как поместить весь мир в обычный ноутбук: PostgreSQL и OpenStreetMap" секретами о геоданных OpenStreetMap, на которых множество компаний построили бизнес но не все делятся подробностями... Что ж, сегодня приоткроем завесу!
База данных в PosgreSQL после загрузки из дампа занимает больше 587 GB. Это уже по меркам СУБД большая база и одна огромная таблица на каждый тип объектов не сработает. Для управляемости такие данные надо секционировать, хорошо что PostgreSQL поддерживает декларативное секционирование данных. Осталось лишь придумать как разделить географические данные. После поисков и сравнений мне на помощь пришла иерархическая гексагональная геопространственная система индексирования H Все это было реализовано в моем проекте openstreetmap_h3 для быстрой обработки и загрузки мира в базу.
Не читать, если кушаете! Я предупредил.
Оказывается, разнообразие бактерий в нашем кишечнике стремительно сокращаются. Люди всё чаще питаются плюс-минус одним и тем же. Многие уникальные биомы мы уже потеряли. Чтобы сохранить разнообразные бактерии человечества, ученые запустили большой проект, в ходе которого они собирают, замораживают и хранят экскременты со всего мира. Создается целый подземный банк таких «богатств», который хотят оставить для будущих поколений. Как хранилище семян в Шпицбергене, только… скажем так, не настолько романтично.
Недавно один из крупнейших колокейшн-провайдеров Equinix заявил, что будет повышать температуру в машинных залах ЦОД. Это позволит снизить затраты на охлаждение и сэкономить на электричестве.
Оптимизация расходов электроэнергии в дата-центре — тема вполне злободневная, с учетом того, что многие энергоэффективные решения стали недоступны на российском рынке. Мы строим ЦОД уже много лет и по опыту можем сказать, что зачастую компании заранее закладывают в бюджет внедрение энергоэффективных систем. А в этом случае можно ничего дополнительно не устанавливать — просто немного повысить температуру в машинном зале и сразу начать экономить. Рискованная ли это затея — разбираем в этом посте.
Я попросил представить нейросеть ChatGPT, которую уже прозвали революционной из-за широкого кругозора и способности давать точные ответы на любые запросы — от сочинения музыки до написания программного кода, что она создала сайт и забыла удалить из корневой папки файлы, которые могут представлять наибольшую ценность для злоумышленников.
Читайте, что из этого получилось.
Открытое ПО сегодня привлекает повышенное внимание с разных сторон — разработки, бизнеса, технологий. Естественно, и его безопасность стоит отдельным вопросом, ведь злоумышленники также активно интересуются open source и создают угрозы для безопасной разработки. Доставка вредоносного кода через сторонние зависимости стала одним из опасных способов заражения.
В сложившейся ситуации, ввиду развития тренда, уже недостаточно просто искать вредоносный код: его нужно анализировать и прорабатывать возможные интеграции с другим ВПО, связи между контрольными серверами и т. п. Соответственно, к этому нужно привлекать вирусных аналитиков и специалистов по threat intelligence. Именно поэтому наша команда заинтересовалась поиском угроз в публичных репозиториях и разработкой системы для оперативного выявления вредоносов. В нее мы вложили весь наш опыт исследования ВПО, атрибуции — всего, с чем мы сталкивались в процессе изучения APT-группировок. В итоге мы создали систему PT PyAnalysis, которую можно встроить в процесс безопасной разработки.
Концепцию ООП часто применяют для отражения объектов реального мира в коде программ. Так объект реального мира "Пользователь" может быть описан в коде как класс "Пользователь", у которого есть поля: имя и адрес электронной почты, а действия, которые можно совершить над объектами реального мира, превращаются в методы класса: назначить администратором, удалить учетную и т.д.
Меня зовут Максим Кульгин, моя компания xmldatafeed занимается парсингом сайтов в России порядка четырёх лет. По итогам прошедшего 2022 года поделюсь советами для тех, кто думает о подобном бизнесе. Бизнес очень интересный, но наполнен нюансами, которые и расскажу в статье.
Я ранее рассказывал про наш опыт развития бизнеса на парсинге сайтов в двух статьях (часть 1 и часть 2). Теперь хочу подвести итоги 2022 года и дать некоторые советы командам, которые хотят составить нам конкуренцию (не вижу, кстати, в этом ничего страшного, т. к. рынок довольно большой и скорее всего у вас будет свой путь, отличный от нашего). Никого, разумеется, не учу, пишу только наш опыт, с ним можно согласиться или нет — но у нас именно так… Всегда рад комментариям, которые заставляют задуматься и взглянуть на то, что делаем с другого ракурса.
Веб-тестирование — это проверка вашего веб-приложения или сайта на наличие ошибок до того, как приложение или сайт будут предоставлены конечному пользователю. Веб-тестирование предназначено для проверки всех аспектов функционирования приложения, включая поиск ошибок, связанных с удобством использования, совместимостью, безопасностью и производительностью.
Веб-тестирование является важной частью сборки любого веб-приложения или веб-сайта, поскольку никто не хочет, вложив в разработку время и деньги, сразу же столкнуться с проблемами после выпуска.
Какие существуют типы тестирования веб-приложений?
В наше время, когда количество программного обеспечения, используемого на каждом компьютере, огромно, неправильное тестирование может привести к катастрофическим последствиям, ущерб от которых может стоить миллионы, а то и миллиарды долларов.
Вы когда-нибудь задумывались, почему появляются контейнеры pause
? Когда мы создаем поды, мы не помним, что когда-либо создавали эти контейнеры pause
, так откуда же они берутся? Вы можете подумать, что, так как мы не создавали эти контейнеры самостоятельно, возможно, кластер K8s автоматически создал их?
В этой статье мы рассказываем о том, почему в поде k8s есть служебный контейнер pause и для каких целей он служит.