Обновить
64K+

Серверная оптимизация *

Разгружаем сервер

61,62
Рейтинг
Сначала показывать
Порог рейтинга
Уровень сложности

4 аргумента убедить директора приобрести ИБП в малом бизнесе

Время на прочтение8 мин
Охват и читатели8.1K


Страх и жадность — это про страсти на Уолл-стрит? Совсем нет, именно эти два чувства испытывает директор в компании малого бизнеса, когда админ приходит просить денег на ИБП (источник бесперебойного питания) для сервера, онлайн-кассы и рабочих мест. Скорее всего, админу откажут. Но есть 4 аргумента, благодаря которым столь необходимая покупка может получить одобрение.

«База лежит», в конторе шок и трепет


Компания «нажглась» на экономии и при отключении электроснабжения потеряны ценные данные? Админ — проси денег на ИБП для сервера, не отходя от кассы. Это твой звездный час.
Стандартная ситуация — при отключении электропитания падает сервер 1С, а после возобновления подачи электроэнергии пользователи замечают, что нормальная работа с 1С невозможна. К примеру, появляются сообщения «Ошибка при входе в 1С х.х: неверный формат хранилища данных, Невосстановимая ошибка при выполнении запроса POST» и т.д. и т.п.
Читать дальше →

Автоматическая настройка и оптимизация сервера MySQL для повышения производительности

Время на прочтение4 мин
Охват и читатели13K
Всем привет.

Хочу обсудить с сообществом наш проект, с помощью которого можно за 1 минуту создать конфигурационный файл MySQL, оптимизированный под производительность (тюнинг MySQL). Таким образом можно достаточно быстро создавать конфигурационный файл для первичной оптимизации производительности MySQL.
Читать дальше →

PostgreSQL Antipatterns: навигация по реестру

Время на прочтение4 мин
Охват и читатели13K
Сегодня не будет никаких сложных кейсов и мудреных алгоритмов на SQL. Все будет очень просто, на уровне Капитана Очевидность — делаем просмотр реестра событий с сортировкой по времени.

То есть вот лежит в базе табличка events, а у нее поле ts — ровно то самое время, по которому мы хотим эти записи упорядоченно показывать:

CREATE TABLE events(
  id
    serial
      PRIMARY KEY
, ts
    timestamp
, data
    json
);

CREATE INDEX ON events(ts DESC);

Понятно, что записей у нас там будет не десяток, поэтому нам потребуется в каком-то виде постраничная навигация.

#0. «Я у мамы погроммист»


cur.execute("SELECT * FROM events;")
rows = cur.fetchall();
rows.sort(key=lambda row: row.ts, reverse=True);
limit = 26
print(rows[offset:offset+limit]);

Даже почти не шутка — редко, но встречается в дикой природе. Иногда после работы с ORM бывает тяжело перестроиться на «прямую» работу с SQL.

Но давайте перейдем к более распространенным и менее очевидным проблемам.
Читать дальше →

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

Время на прочтение10 мин
Охват и читатели4.9K
Привет, Хабр!

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

6 ключевых вопросов при переводе бизнеса в облако

Время на прочтение6 мин
Охват и читатели4.4K


Из-за вынужденных каникул даже крупным компаниям с развитой IT-инфраструктурой сложно организовать удаленную работу персонала, а у малого бизнеса попросту не хватает ресурсов для развертывания необходимых сервисов. Другая проблема связана с информационной безопасностью: открывать доступ во внутреннюю сеть с домашних компьютеров сотрудников рискованно без применения специализированных продуктов корпоративного класса. Аренда виртуальных серверов не требует капитальных затрат и позволяет вынести временные решения за пределы защищенного периметра. В небольшой статье мы рассмотрим несколько типовых сценариев использования VDS в условиях самоизоляции. Сразу стоит отметить, что статья ознакомительная и ориентирована больше на тех, кто только вникает в тему.
Читать дальше →

Сравнение производительности HTTP/3 и HTTP/2

Время на прочтение5 мин
Охват и читатели25K


Мы в Cloudflare объявили о поддержке HTTP/3 в сентябре прошлого года, когда отмечали девятый день рождения. Наша задача всегда состояла в улучшении интернета. Сотрудничество в области стандартов — важная часть процесса, и нам повезло участвовать в разработке HTTP/3.

Хотя HTTP/3 ещё на стадии черновика, мы заметили большой интерес к новому протоколу со стороны наших пользователей (инфраструктура Cloudflare обслуживает более 10% сайтов интернета — прим. пер.). К настоящему моменту поддержку HTTP/3 активировали более 113 000 зон, и если у вас экспериментальный браузер, то теперь вы можете получить доступ к этим зонам по новому протоколу! Здорово, что его включили так много людей: работа по HTTP/3 большого количества реальных веб-сайтов означает, что можно тестировать больше разнообразных свойств со стороны браузеров.
Читать дальше →

Более безопасное подключение к SSH с помощью DNSSEC

Время на прочтение6 мин
Охват и читатели19K

Все, кто использует SSH знают, что при первом подключении к серверу, появляется сообщение с подтверждением отпечатка ключа. Дальше ключ сохраняется на стороне клиента, и больше это сообщение не показывается до момента пока сохраненный ключ не изменится. Но в чем практический смысл этой процедуры?

В реальной жизни почти никто не проверяет отпечаток SSH-ключа сервера не особенно задумываясь о возможности MiTM-атаках. С появлением DNS-записи SSHFP отпечаток ключа сервера можно хранить в DNS и проверять его подлинность с помощью DNSSEC. При этом не нужно даже подтверждать ключ при первом подключении. В статье разберем, как настроить запись SSHFP для своего SSH-сервера.
Читать дальше →

Сотни тысяч маршрутов в секунду на ядро. Опыт Яндекс.Маршрутизации

Время на прочтение5 мин
Охват и читатели16K


Пару недель назад Даня Тарарухин рассказал на Хабре, как появился наш сервис, Яндекс.Маршрутизация, и как он помогает компаниям с логистикой. Создавая платформу, мы решили несколько интересных проблем, одной из которых и посвящён сегодняшний пост. Я хочу поговорить о самом планировании маршрутов и необходимых для этого ресурсах.
Читать дальше →

Втискиваем Windows Server на маломощную VPS с помощью Windows Server Core

Время на прочтение8 мин
Охват и читатели23K

По причине прожорливости Windows-систем в среде VPS доминируют легкие Linux-дистрибутивы: Mint, Colibri OS, Debian или Ubuntu, лишенные ненужного, в рамках наших задач, тяжеловесного окружения рабочего стола. Как говорится, только консоль, только хардкор! И на самом деле, это совершенно не преувеличение: тот же Debian стартует на 256 MB памяти и одном ядре с тактом 1 Ghz, то есть почти на любом «пне». Для комфортной работы понадобятся от 512 MB и процессор чуть пошустрее. Но что если мы скажем вам, что примерно то же можно провернуть на VPS под Windows? Что не нужно накатывать тяжеловесный Windows Server, который требует от трех-четырех гектаров оперативной памяти и минимум пару ядер с тактом в 1,4 GHz? Просто воспользуйтесь Windows Server Core — избавьтесь от GUI и части служб. О том как это сделать и поговорим в статье.
Читать дальше →

Бесперебойное электроснабжение торговых центров или Shopping Must Go On

Время на прочтение7 мин
Охват и читатели4.7K


Вечером 9 декабря 2019 года предпраздничный шопинг посетителей торгового центра Eaton Centre в Торонто был прерван неожиданным блэкаутом. Торговые галереи погрузились в темноту, и единственным источником света осталась рождественская елка — ее фото многие поспешили запостить в соцсети как совершенно мистическое явление. Впрочем, среди твитов были и такие, где мистику объяснили легко и просто: елка была подключена к источнику бесперебойного питания. Сегодня мы поговорим о том, на каких ИБП арендаторы могут организовать бесперебойное электроснабжение для своих площадей в торговых центрах. Ведь shopping must go on, не правда ли?
Читать дальше →

Делегируем управление RDP-сеансами

Время на прочтение5 мин
Охват и читатели23K

В организации, где я работаю, удаленка запрещена в принципе. Была. До прошлой недели. Теперь пришлось в срочном порядке внедрять решение. От бизнеса — адаптация процессов к новому формату работы, от нас — PKI с пин-кодами и токенами, VPN, детальное логирование и много чего ещё.
Помимо всего прочего, я занимался настройкой инфраструктуры удаленных рабочих столов aka службы терминалов. У нас несколько RDS-развертываний в разных ЦОДах. Одной из задач было дать возможность коллегам из смежных подразделений ИТ подключаться к пользовательским сеансам в интерактивном режиме. Как известно, для этого есть штатный механизм RDS Shadow и самый простой способ его делегировать — дать права локального администратора на RDS-серверах.
Я уважаю и ценю своих коллег, но очень жадный до раздачи админских прав. :) Тех, кто со мной солидарен, прошу под кат.
Читать дальше →

Вывод результатов поиска и проблемы с производительностью

Время на прочтение12 мин
Охват и читатели4.3K
Один из типовых сценариев во всех привычных нам приложениях — поиск данных по определенным критериям и вывод их в удобном для чтения виде. Тут же могут быть дополнительные возможности по сортировке, группировке, постраничному выводу. Задача, по идее, тривиальная, но при ее решении многие разработчики делают ряд ошибок, из-за которых потом страдает производительность. Попробуем рассмотреть различные варианты решений этой задачи и сформулировать рекомендации по выбору наиболее эффективной реализации.

image
Читать дальше →

Для edge-серверов десятого поколения Cloudflare выбирает процессоры от AMD

Время на прочтение9 мин
Охват и читатели3K


Ежедневно через сеть Cloudflare Network проходит более миллиарда уникальных IP-адресов; она обслуживает более 11 млн HTTP-запросов в секунду; она находится на расстоянии не более 100 мс от 95% интернет-населения. Наша сеть раскинулась на 200 городов в более чем 90 странах, а наша команда инженеров построила чрезвычайно быструю и надёжную инфраструктуру.

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

Наш программный стек обрабатывает высоконагруженные вычисления и очень зависит от скорости CPU, из-за чего нашим инженерам приходится постоянно оптимизировать эффективность и надёжность Cloudflare на всех уровнях стека. На стороне сервера проще всего увеличить вычислительную мощность, добавив ядер CPU. Чем больше ядер можно уместить в сервере, тем больше он сможет обрабатывать данных. Для нас это важно, поскольку разнообразие наших продуктов и клиентов со временем растёт, и рост запросов требует от серверов увеличения производительности. Чтобы увеличить их производительность, нам требовалось увеличить плотность ядер – и именно эту задачу мы выполнили. Ниже приводим детализацию данных по процессорам для серверов, разворачиваемых нами с 2015 года, включая и количество ядер:
Читать дальше →

Ближайшие события

Когда Linux conntrack вам больше не товарищ

Время на прочтение5 мин
Охват и читатели53K

Отслеживание соединений (“conntrack”) является основной функцией сетевого стека ядра Linux. Она позволяет ядру отслеживать все логические сетевые соединения или потоки и тем самым идентифицировать все пакеты, которые составляют каждый поток, чтобы их можно было последовательно обрабатывать вместе.

Читать дальше →

Когда фильтр Блума не подходит

Время на прочтение9 мин
Охват и читатели16K


Я ещё с университета знал о фильтре Блума — вероятностной структуре данных, названной в честь Бёртона Блума. Но у меня не было возможности её использовать. В прошлом месяце такая возможность появилась — и эта структура буквально очаровала меня. Впрочем, вскоре я нашёл у неё некоторые недостатки. В этой статье — рассказ о моей краткой любовной связи с фильтром Блума.
Читать дальше →

Взгляд изнутри на надёжность сервисов Facebook

Время на прочтение13 мин
Охват и читатели15K
Когда Facebook «лежит», люди думают, что это из-за хакеров или DDoS-атак, но это не так. Все «падения» за последние несколько лет были вызваны внутренними изменениями или поломками. Чтобы учить новых сотрудников не ломать Facebook на примерах, всем большим инцидентам дают имена, например, «Call the Cops» или «CAPSLOCK». Первый так назвали из-за того, что когда однажды соцсеть упала, в полицию Лос-Анджелеса звонили пользователи и просили его починить, а шериф в отчаянии в Твиттере просил не беспокоить их по этому поводу. Во время второго инцидента на кэш-машинах опустился и не поднялся сетевой интерфейс, и все машины перезапускали руками.

Элина Лобанова работает в Facebook последние 4 года в команде Web Foundation. Участники команды зовутся продакшн-инженерами и следят за надежностью и производительностью всего бэкенда, тушат Facebook, когда он горит, пишут мониторинг и автоматизацию, чтобы облегчить жизнь себе и другим.



В статье, основанной на докладе Элины на HighLoad++ 2019, расскажем, как продакшн-инженеры следят за бэкендом Facebook, какие инструменты используют, из-за чего возникают крупные сбои и как с ними справиться.

Оптимизируем СХД: кейс унификации и снижения стоимости владения

Время на прочтение6 мин
Охват и читатели4.6K
В статье описывается процесс оптимизации инфраструктуры хранения данных компании среднего класса.

Рассмотрены обоснования для такого перехода и краткое описание процесса настройки новой СХД. Приводим в пример плюсы и минусы перехода на выбранную систему.

Введение


Инфраструктура одного из наших заказчиков состояла из множества разнородных систем хранения данных разного уровня: от SOHO-систем QNAP, Synology для пользовательских данных до Entry и Mid-range систем хранения уровня Eternus DX90 и DX600 для iSCSI и FC для служебных данных и систем виртуализации.

Всё это различалось как по поколениям, так и по применяемым дискам; часть систем представляла из себя legacy оборудование, не имевшее поддержки вендора.

Отдельной проблемой было управление свободным местом, так как всё доступное дисковое пространство было сильно фрагментировано по множеству систем. Как следствие – неудобство администрирования и высокая стоимость содержания парка систем.

Перед нами встала задача оптимизации инфраструктуры хранения данных с целью снижения стоимости владения и унификации.

Поставленная задача была всесторонне проанализирована экспертами нашей компании с учётом требований заказчика к доступности данных, IOPS, RPO/RTO, а также возможности модернизации существующей инфраструктуры.
Читать дальше →

Лучшие серверы для малого бизнеса в 2020 году

Время на прочтение9 мин
Охват и читатели15K
image

Несмотря на широкое распространение облачных серверов многие выбирают локальные серверы, которые дают больше контроля. Портал TechRadar составил список 10 лучших серверов, начиная с тех, которые предназначены для небольших предприятий, и заканчивая теми, которые могут понадобиться крупным корпорациям.
Читать дальше →

4-ая платформа отходит от б/у сервера

Время на прочтение8 мин
Охват и читатели7.7K
Всем привет! Мы с коллегами столкнулись с дефицитом информации о развитии серверного оборудования, а также по сравнениям разных линеек при подборе конфигураций под самые ходовые нужды (по крайней мере те, с которыми мы в GaltSystems работаем чаще всего). Вспоминая нашу прошлогоднюю статью, мы подробно поговорим о серверном оборудовании, его эволюции и ряде сценариев использования.


Читать дальше →

Почему нужна инструментальная поддержка пагинации на ключах

Время на прочтение5 мин
Охват и читатели25K

Всем привет! Я бэкэнд-разработчик, пишу микросервисы на Java + Spring. Работаю в одной из команд разработки внутренних продуктов в компании Тинькофф.



У нас в команде часто встает вопрос оптимизации запросов в СУБД. Всегда хочется еще чуть-чуть быстрее, но не всегда можно обойтись продуманно выстроенными индексами — приходится искать какие-то обходные пути. Во время одного из таких скитаний по сети в поисках разумных оптимизаций при работе с БД я нашел бесконечно полезный блог Маркуса Винанда, автора книги SQL Performance Explained. Это тот самый редкий вид блогов, в котором можно читать все статьи подряд.


Хочу перевести для вас небольшую статью Маркуса. Ее можно назвать в какой-то степени манифестом, который стремится привлечь внимание к старой, но до сих пор актуальной проблеме производительности операции offset по стандарту SQL.

Читать дальше →