Обновить
0
@swargaread⁠-⁠only

Пользователь

Отправить сообщение

Кэширование и производительность веб-приложений

Время на прочтение8 мин
Охват и читатели57K
Кэширование позволяет увеличивать производительность веб-приложений за счёт использования сохранённых ранее данных, вроде ответов на сетевые запросы или результатов вычислений. Благодаря кэшу, при очередном обращении клиента за одними и теми же данными, сервер может обслуживать запросы быстрее. Кэширование — эффективный архитектурный паттерн, так как большинство программ часто обращаются к одним и тем же данным и инструкциям. Эта технология присутствует на всех уровнях вычислительных систем. Кэши есть у процессоров, жёстких дисков, серверов, браузеров.

image

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

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

Растёт количество учёных, считающих, что будущее может влиять на прошлое

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


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

Но что если эту прямую причинно-следственную связь можно каким-то образом обратить вспять во времени, позволяя действиям в будущем влиять на результаты в прошлом? Эта удивительная идея, известная как ретропричинность, на первый взгляд может показаться фантастикой, но она начинает приобретать реальную популярность среди физиков и философов, а также других исследователей как возможное решение некоторых из самых неразрешимых загадок, лежащих в основе нашей реальности.
Читать дальше →

WAF глазами хакеров

Время на прочтение23 мин
Охват и читатели49K
Привет, Хабр! Сегодня мы поговорим об одном из современных механизмов защиты веб-приложений, а именно о WAF, Web Application Firewall. Мы расскажем, на чем основываются и как работают современные WAF, какие существуют способы обхода и bypass-техники, как их применять, а также почему ни в коем случае не стоит всецело полагаться на WAF. Мы представим свой взгляд пентестеров, которые никогда не принимали участие в разработке WAF и которые собирали информацию из открытых источников и на основе своего опыта, поэтому о некоторых тонкостях работы WAF мы можем даже и не подозревать.
Читать дальше →

Принципы работы протокола BGP

Время на прочтение14 мин
Охват и читатели335K
Сегодня мы рассмотрим протокол BGP. Не будем долго говорить зачем он и почему он используется как единственный протокол. Довольно много информации есть на этот счет, например тут.

Итак, что такое BGP? BGP — это протокол динамической маршрутизации, являющийся единственным EGP( External Gateway Protocol) протоколом. Данный протокол используется для построения маршрутизации в интернете. Рассмотрим как строится соседство между двумя маршрутизаторами BGP.

My Image
Рассмотрим соседство между Router1 и Router3. Настроим их при помощи следующих команд:
Читать дальше →

Инфраструктура сети: AS, PI, LIR и прочие вкусности. :)

Время на прочтение4 мин
Охват и читатели107K
Не нашел на Хабре внятного этой RIPEвской кухни, потому пишу сам :)

Здесь я попробую (кратко) рассказать, как работает Интернет :)
И какие бонусы может извлечь из этого администратор сети предприятия, хостер или ISP.

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

Ubiquitous Language и Bounded Context в DDD

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

Domain-Driven Design: Tackling Complexity in the Heart of Software Эванса — лучшая книга о проектировании действительно больших enterprise-приложений, что я читал. Видимо это мнение разделяют многие другие разработчики и проектировщики, потому что Entity и ValueObject, Repository и Specification встречаются почти в каждой большой кодовой базе. Но вот незадача, Ubiquitous Language (единый язык) и Bounded Context (контекст предметной области) в чужом коде я не видел ни разу. И здесь зарыта очень большая собака.
Выкапываем собаку

Инструменты Domain Driven Design

Время на прочтение11 мин
Охват и читатели31K
Синий кит — отличный пример того, как проектирование сложного проекта пошло не по плану. Кит внешне похож на рыбу, но он млекопитающее: кормит детенышей молоком, у него есть шерсть, а в плавниках до сих пор сохранились кости предплечья и кистей с пальцами, как у сухопутных. Он живет в океанах, но не может дышать под водой, поэтому регулярно поднимается на поверхность глотнуть воздуха, даже когда спит. Кит самое большое животное в мире, длиной с девятиэтажный дом, а массой как 75 автомобилей Volkswagen Touareg, но при этом не хищник, а питается планктоном.

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



Для создания проектов, которые помогают бизнесу зарабатывать, а не похожих на морское животное, которое не может дышать под водой, есть DDD. Это подход, который фокусируется не на инструментах или коде, а на изучении предметной области, отдельных бизнес-процессов и на том, как код или инструменты работают для бизнес-логики.

Что такое DDD и какие инструменты в нем есть, мы расскажем в статье на основе доклада Артема Малышева. Подход DDD в Python, инструменты, подводные камни, контрактное программирование и проектирование продукта вокруг решаемой проблемы, а не используемого фреймворка — все это под катом.

Как мы выбирали сервис для электронного документооборота с заказчиками

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

Хабровчане, делюсь исследованием. В марте искали лучшего оператора электронного документооборота. Ну, как лучшего. Выбирали того, чей сервис больше подходит именно нашей компании. За неделю пришлось изучить 7 наиболее известных – сравнили их по параметрам: от возможностей интеграции с 1С до качества техподдержки. Но обо всём по порядку…


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

Веб-типографика сегодня. Часть V

Время на прочтение12 мин
Охват и читатели30K
Часть IЧасть IIЧасть IIIЧасть IVЧасть V — Часть VI

Часть V



Очевидно, что в сфере высоких технологий развитие зачастую происходит быстро и бурно. Так произошло и со средствами отображения информации. В течении каких-то двух-трёх лет обычные ЭЛТ-мониторы почти целиком и полностью были вытеснены стремительно дешевеющими ЖК-собратьями. Что позволило существенно улучшить как геометрию отображения, так и цветопередачу, а также снизить утомляемость глаз за счёт отсутствия вредного мерцания. И если несколько лет назад подобное утверждение в пользу TFT-панелей можно было бы оспорить, то теперь этот факт не вызывает ни у кого сомнений: ЖК-дисплеи намного лучше для повседневной работы рядового пользователя. В связи с этим фактором возникла необходимость поиска качественно новых алгоритмов отображения шрифтов. Одно из таких решений пусть не сразу, но всё же получило определённое признание в среде пользователей, и на сегодняшний день является чуть ли не самым популярным на современных платформах. Речь, конечно же, о технологии рендеринга ClearType, которая послужила причиной разработки новых веб-ориентированных шрифтов…

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

Информация

В рейтинге
Не участвует
Зарегистрирован
Активность