Рубрика «Серверная оптимизация»

Есть много способов повышения веб-производительности. Один из них — предзагрузка контента, который понадобится позже. Префетчинг CSS, предварительный рендеринг полной страницы или резолвинг доменного имени. Делаем всё заранее, а потом мгновенно отображаем результат! Звучит круто.

Ещё круче, что это очень просто реализовано. Пять тегов <link rel> дают браузеру команду на предварительные действия:

<link rel="prefetch" href="/style.css" as="style" />
<link rel="preload" href="/style.css" as="style" />

<link rel="preconnect" href="https://example.com" />
<link rel="dns-prefetch" href="https://example.com" />

<link rel="prerender" href="https://example.com/about.html" />

Читать полностью »

Как вы думаете, эквиваленты ли по производительности эти два варианта проверки условий внутри цикла?

		
if a > b && c*2 > d {
	....
}
// и
if a <= b  { 
  continue;
}
if c*2 > d {
 ....
}

Читать полностью »

Когда я впервые попытался понять то, как работают средства выделения памяти в Go, то, с чем я хотел разобраться, показалось мне таинственным чёрным ящиком. Как и в случае с любыми другими технологиями, самое важное здесь скрывается за множеством слоёв абстракций, сквозь которые нужно пробраться для того, чтобы что-то понять.

Механизмы выделения памяти в Go - 1

Автор материала, перевод которого мы публикуем, решил добраться до сути средств выделения памяти в Go и рассказать об этом.
Читать полностью »

Линус Торвальдс не верит, что серверы на ARM-архитектуре заменят x86. «Продавать 64-битную модель — идиотизм» - 1

На прошлой неделе компания ARM Holdings объявила, что разрабатывает новую микро-архитектуру для серверных процессоров. Вычислительное ядро, которое будет в ней использоваться, носит кодовое имя Ares, и по обещаниям должно дать 60% прирост по сравнению с текущей платформой. С каждым следующим поколением производительность должна расти еще на 30%.

Серверный рынок — пока не самый большой для ARM. Сейчас процессоры на ее архитектуре используются в мобильных и встраиваемых устройствах. Скачок производительности, который компания обещает производителям серверов, будет выше чем Intel и IBM проделали за последние несколько лет.

Тем не менее, создатель Linux Линус Торвальдс скептично прокомментировал анонс. Он считает, что будущее новой архитектуры не так радужно.
Читать полностью »

Массовая печать в Windows - 1 Иногда нужно быстро распечатать много картинок с котиками документов, а открывать для этого каждый файл совсем не хочется. Первым делом напрашивается использование контекстного меню проводника, но у этого способа есть свои ограничения и нюансы. Поэтому пришлось искать альтернативу. За подробностями — прошу под кат.
Читать полностью »

Когда мы запустили в 2013 году Discourse, наши требования к серверу были высокими:

  • 1 ГБ ОЗУ
  • быстрый двухядерный ЦП
  • быстрый твердотельный накопитель от 20 ГБ

Я имею в виду не дешёвый общий cpanel-сервер, а выделенный виртуальный частный сервер с такими характеристиками.

Нам этого было достаточно, потому что в течение следующего десятилетия Интернета мы писали на Ruby. Я сразу предсказывал, что цена аренды VPS с такими характеристиками упадёт до 5 долларов в месяц, и благодаря Digital Ocean это действительно случилось в январе 2018 года.

Облако стало дешевле и быстрее. И это не очень удивляет, ведь со временем цена железа снижается до нуля. Но это всё-таки облако, то есть оно не совсем дёшево. В конце концов, это чей-то компьютер, за привилегию аренды которого вы платите.

Облако — это просто чей-то компьютер - 1

Но постойте… а что если вы сможете засунуть «в облако» свой компьютер?
Читать полностью »

Приветствую, друзья!

В предыдущих двух статьях (раз, два) мы погружались в сложность выбора между технологиями и искали оптимальные настройки для нашего решения в Ostrovok.ru. Какую тему поднимем сегодня?

Каждый сервис должен работать на каком-то сервере, общаясь с железом посредством инструментов операционной системы. Этих инструментов великое множество, как и настроек для них. В большинстве случаев для их работы настроек по умолчанию будет более чем достаточно. В этой статье я хотел бы рассказать о тех случаях, когда стандартных настроек все-таки было недостаточно, и приходилось знакомиться с операционной системой чуть ближе – в нашем случае с Linux.

I’m going deeper underground, или о чем стоит знать, оптимизируя работу сетевого приложения - 1
Читать полностью »

Courier: миграция Dropbox на gRPC - 1

Примечание переводчика

Большинство современных программных продуктов не являются монолитными, а состоят из множества частей, которые взаимодействуют друг с другом. При таком положении дел необходимо, чтобы общение взаимодействующих частей системы происходило на одном языке (притом что сами эти части могут быть написаны на разных языках программирования и выполняться на разных машинах). Упростить решение этой задачи помогает gRPC — open-source-фреймворк от Google, выпущенный в 2015 году. Он решает сразу ряд проблем, позволяя:

  • использовать язык Protocol Buffers для описания взаимодействия сервисов;
  • генерировать программный код на основании описанного протокола для 11 разных языков как для клиентской части, так и для серверной;
  • реализовать авторизацию между взаимодействующими компонентами;
  • использовать как синхронное, так и асинхронное взаимодействие.

gRPC показался мне довольно интересным фреймворком, и мне было интересно узнать про реальный опыт компании Dropbox по построению системы на его основе. В статье есть масса деталей, связанных с использованием шифрования, построением надёжной, наблюдаемой и производительной системы, процессом миграции со старого RPC-решения на новое.

Дисклеймер

Оригинальная статья не содержит описания gRPC, и некоторые моменты могут показаться вам непонятными. Если вы не знакомы с gRPC или другими подобными фреймворками (например, Apache Thrift), рекомендую предварительно ознакомиться с основными идеями (достаточно будет прочитать две небольшие статьи с официального сайта: «What is gRPC?» и «gRPC Concepts»).

Спасибо Алексею Иванову aka SaveTheRbtz за написание оригинальной статьи и помощь с переводом трудных мест.

Читать полностью »

Check Point Maestro Hyperscale Network Security — новая масштабируемая security платформа - 1

Компания Check Point довольно резво начала 2019 год сделав сразу несколько анонсов. Рассказать обо всем в одной статье не получится, поэтому начнем с самого главного — Check Point Maestro Hyperscale Network Security. Maestro это новая масштабируемая платформа, которая позволяет наращивать «мощность» шлюза безопасности до «неприличных» цифр и практически линейно. Достигается это естественно за счет балансировки нагрузки между отдельными шлюзами, которые работают в кластере, как единая сущность. Кто-то может сказать — "Было! Уже есть блейд-платформы 44000/64000". Однако Maestro это совсем другое дело. В рамках этой статьи я вкратце постараюсь объяснить что это, как это работает и как эта технология поможет сэкономить на защите периметра сети.Читать полностью »

Крупные производители популярного софта заботятся о своих заказчиках по-разному. Один из способов — создать программу сертификации. Чтобы, когда заказчики в раздумьях блуждают между аппаратными конфигами для конкретного софта, производитель этого софта мог подойти и с уверенностью показать пальцем: «Бери вот это и все будет хорошо».

Такую программу для своего SQL Server разработал Microsoft — SQL Server Fast Track (DWFT). По ней сертифицируются конфигурации хранилищ данных — те, которые соответствуют требованиям рабочей нагрузки и могут быть внедрены с меньшим риском, стоимостью и сложностью. Звучит прекрасно, но интересно все-таки оценить эти критерии на практике. Для этого мы подробно разберем одну из конфигураций, имеющих сертификацию SQL Server Data Warehouse Fast Track.

Архитектура, сертифицированная по SQL Server Data Warehouse Fast Track (DWFT): что это значит и как устроено - 1
Читать полностью »