Открыть список
Как стать автором
Обновить
8
Карма
0
Рейтинг

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

  • Публикации
  • Комментарии

Как построить современное аналитическое хранилище данных на базе Cloudera Hadoop

Блог компании GlowByteBig DataХранилища данныхHadoop

Привет.

В конце прошлого года GlowByte и Газпромбанк сделали большой совместный доклад на конференции Big Data Days, посвященный созданию современного аналитического хранилища данных на базе экосистемы Cloudera Hadoop. В статье мы детальнее расскажем об опыте построения системы, о сложностях и вызовах с которыми пришлось столкнуться и преодолеть и о тех успехах и результатах, которых мы достигли.

Строить хранилище!
Всего голосов 5: ↑4 и ↓1 +3
Просмотры1.8K
Комментарии 6

Нагрузочное тестирование на Gatling — Полное руководство. Часть 1

Блог компании OTUSТестирование IT-системТестирование веб-сервисовGradle
Перевод

Эта статья представляет собой полное, подробное и исчерпывающее руководство по эффективному использованию Gatling для нагрузочного тестирования.

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

Читать далее
Всего голосов 10: ↑10 и ↓0 +10
Просмотры5K
Комментарии 0

Экосистема Low-Code решений

CMSРазработка веб-сайтовJavaScriptПрограммированиеИнтерфейсы
Перевод
image

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

Я бы хотел рассмотреть, что это за инструменты, как именно они помогают, и какие выглядят наиболее многообещающе.
Читать дальше →
Всего голосов 4: ↑4 и ↓0 +4
Просмотры9.7K
Комментарии 0

To spawn, or not to spawn?

Анализ и проектирование системErlang/OTPПараллельное программированиеElixir/Phoenix
Из песочницы

Вот в чём вопрос! Что лучше - держать всё в одном процессе, или создавать отдельный процесс на каждый кусок состояния, которым нам нужно управлять? В этой статье я немного расскажу об использовании или неиспользовании процессов. Я также расскажу, как отделить сложную логику с отслеживанием состояния от таких проблем, как временное (темпоральное) поведение и межпроцессное взаимодействие.

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

Используйте функции и модули для разделения мыслительных сущностей.

Используйте процессы для разделения сущностей времени выполнения.

Не используйте процессы (даже агентов) для разделения сущностей мышления.

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

Использование для этого процессов (например агентов) - это ошибка, которую люди часто допускают. Такой подход существенно упускает функциональную составляющую Elixir и вместо этого пытается имитировать объекты процессами. Реализация, скорее всего, будет хуже, чем простой функциональный подход (или даже эквивалент на языке объектно-ориентированного программирования). Поэтому стоит обращаться к процессам, только когда есть ощутимые выгоды от этого. Организация кода не входит в число этих преимуществ, так что это не лучший повод для использования процессов.

Читать далее
Всего голосов 7: ↑7 и ↓0 +7
Просмотры1.8K
Комментарии 0

Коты и лебеди на выпасе: листаем книги для введения в профессию менеджера

Профессиональная литератураУправление разработкойУправление продуктомУправление персоналомЧитальный зал


Привет! Это Кирилл, куратор потока «Менеджмент». На Хабр часто выкладывают посты про интересную профессиональную литературу. В итоге наша площадка давно превратилась в одну из самых крупных библиотек с отзывами на книги про IT, но структурировать это никто пока не пытался. Чтобы это исправить, запускаем серию библиотечных подборок. Под катом первая из них — с книгами, которые помогут новичку освоиться в роли руководителя, а маститому боссу освежить знания и стать ещё лучше.
Читать дальше →
Всего голосов 24: ↑22 и ↓2 +20
Просмотры5.1K
Комментарии 13

Коты в коробочках, или Компактные структуры данных

Блог компании Mail.ru GroupПрограммированиеАлгоритмыМатематика
🔥 Технотекст 2020 🔥 Технотекст 2020

image


Как быть, если дерево поиска разрослось на всю оперативку и вот-вот подопрет корнями соседние стойки в серверной? Что делать с инвертированным индексом, жадным до ресурсов? Завязывать ли с разработкой под Android, если пользователю прилетает «Память телефона заполнена», а приложение едва на половине загрузки важного контейнера?


В целом, можно ли сжать структуру данных, чтобы она занимала заметно меньше места, но не теряла присущих ей достоинств? Чтобы доступ к хэш-таблице оставался быстрым, а сбалансированное дерево сохраняло свои свойства. Да, можно! Для этого и появилось направление информатики «Succinct data structures», исследующее компактное представление структур данных. Оно развивается с конца 80-х годов и прямо сейчас переживает расцвет в лучах славы big data и highload.


А тем временем на Хабре найдется ли герой, способный пересковоговорить три раза подряд
[səkˈsɪŋkt]?

Читать дальше →
Всего голосов 127: ↑127 и ↓0 +127
Просмотры23.9K
Комментарии 42

Барьеры памяти и неблокирующая синхронизация в .NET

.NET
Из песочницы

Введение


В этой статье я хочу рассказать об использовании некоторых конструкций, применяющихся для осуществления неблокирующей синхронизации. Речь пойдёт о ключевом слове volatile, функциях VolatileRead, VolatileWrite и MemoryBarrier. Мы рассмотрим, какие проблемы вынуждают нас воспользоваться этими языковыми конструкциями и варианты их решения. При обсуждении барьеров памяти вкратце рассмотрим модель памяти .NET.
Читать дальше →
Всего голосов 63: ↑62 и ↓1 +61
Просмотры44.7K
Комментарии 18

Модифицируем Bluetooth-стек для улучшения звука на наушниках без кодеков AAC, aptX и LDAC

Разработка под AndroidБеспроводные технологииЗвук
Перед прочтением этой статьи рекомендуется ознакомиться с предыдущей статьёй: Аудио через Bluetooth: максимально подробно о профилях, кодеках и устройствах / in English

Некоторые пользователи беспроводных наушников отмечают низкое качество звука и недостаток высоких частот при использовании стандартного Bluetooth-кодека SBC, который поддерживают все аудиоустройства. Частой рекомендацией для улучшения звука является покупка устройств и наушников с поддержкой кодеков aptX и LDAC. Эти кодеки требуют лицензионных отчислений, поэтому устройства с их поддержкой стоят дороже.

Оказывается, низкое качество SBC обусловлено искусственными ограничениями Bluetooth-стеков и настроек наушников, и это ограничение можно обойти на любых существующих устройствах, путём программных изменений смартфона или компьютера.
Читать дальше →
Всего голосов 100: ↑98 и ↓2 +96
Просмотры88.9K
Комментарии 52

X.509 своми силами в .Net Core

.NET

image


Некоторое время назад я задался вопросом, можно ли наладить фабрику сертификатов, не прибегая к утилите openssl. Как подвести «под кнопку» весь процесс от генерации ключей до проверки подлинности. Забегая вперед, скажу, что пространство System.Security.Cryptography в этом плане является вполне самодостаточным. В статье я рассмотрю этапы создания сертификатов, экспорт в форматы pem и pkcs12, хранение сертификатов в файловой системе, а также проверку подлинности, используя только классы из System.Security.Cryptography.

Читать дальше →
Всего голосов 21: ↑21 и ↓0 +21
Просмотры6.8K
Комментарии 4

Создаем интернет-магазин на Nuxt.js 2 пошаговое руководство Часть 3

Разработка веб-сайтовJavaScriptHTMLNode.JSVueJS
Tutorial


Как и обещал продолжаем.


В этой части:


  • создадим блоки товаров "С этим товаром также покупают" и "Интересные товары"
  • создадим иконку корзины с количеством товаров
  • подключим модальное окно с товарами в корзине
  • перепишем всю логику store
Читать дальше →
Всего голосов 4: ↑4 и ↓0 +4
Просмотры8.5K
Комментарии 2

Налоги на доход от Google в Республике Беларусь

Финансы в IT
Вряд ли эта статья будет полезна тем, кто живет не в Беларуси, если только удивиться, как сложно в нашей системе без бухгалтерской закалки получить свои честно заработанные деньги. Я не претендую на истину в последней инстанции, но найди я в свое время что-то похожее на эту статью — сэкономил бы кучу времени и денег. Надеюсь, кому-то она поможет начать творить и зарабатывать в Play Market, живя при этом в Беларуси)
Читать дальше →
Всего голосов 16: ↑14 и ↓2 +12
Просмотры7.8K
Комментарии 38

Фантастические advisory locks, и где они обитают

Блог компании ТензорPostgreSQLSQLАлгоритмыАдминистрирование баз данных
В PostgreSQL существует очень удобный механизм рекомендательных блокировок, они же — advisory locks. Мы в «Тензоре» используем их во многих местах системы, но мало кто детально понимает, как конкретно они работают, и какие проблемы можно получить при неправильном обращении.


Читать дальше →
Всего голосов 11: ↑11 и ↓0 +11
Просмотры7.1K
Комментарии 9

Измерения малых ёмкостей (аналоговый ёмкостной датчик)

Разработка робототехникиПроизводство и разработка электроникиDIY или Сделай самЭлектроника для начинающих
Предлагаю сообществу датчик малых ёмкостей, работающий почти от 0 пФ. Можно использовать в любительской электронике, роботостроении.

Разрабатывая хобби-электронику, мне понадобился какой-нибудь простой датчик расстояния на ёмкостном эффекте. Поискав в Интернете, нашёл только датчики касания, но они имеют малое расстояние срабатывания и дискретный выход. Другие же датчики слишком сложные или с долгой настройкой. Нужен был очень простой и дешёвый, работающий от микроконтроллера. Что получилось — под катом…
Читать дальше →
Всего голосов 26: ↑26 и ↓0 +26
Просмотры12.7K
Комментарии 28

Как мы оптимизировали наш DNS-сервер с помощью инструментов GO

Блог компании OTUSПрограммированиеGo
Перевод
В преддверии старта нового потока по курсу «Разработчик Golang» подготовили перевод интересного материала.




Наш авторитативный DNS-сервер используют десятки тысяч веб-сайтов. Мы ежедневно отвечаем на миллионы запросов. В наши дни DNS-атаки становятся все более и более распространенными, DNS является важной частью нашей системы, и мы должны убедиться, что мы можем хорошо работать под высокой нагрузкой.

dnsflood — это небольшой инструмент, способный генерировать огромное количество udp запросов.

# timeout 20s ./dnsflood example.com 127.0.0.1 -p 2053

Мониторинг систем показал, что использование памяти нашим сервисом росло так быстро, что нам пришлось остановить его, иначе мы столкнулись бы с OOM ошибками. Это было похоже на проблему утечки памяти; существуют различные причины «похожих на» и «реальных» утечек памяти в go:
Читать дальше →
Всего голосов 31: ↑30 и ↓1 +29
Просмотры5.9K
Комментарии 10

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

Разработка под Arduino3D-принтерыТранспорт
imageФото: superscale2020.blogspot.com

Инженер Димитр Тилев представил разработанную им радиоуправляемую модель автомобиля Oldsmobile Dynamic 88 Wagon 1963 года выпуска. Акселерометр MPU6050 передает данные на плату Arduino, и та в режиме реального времени анализирует их и управляет высотой подвески, что позволяет модели наклоняться и уходить в занос как настоящему автомобилю.

Движения модельки происходят в точном соответствии с законами физики, их сопровождают характерные звуки мотора, а при резком старте задействованы индикаторы выхлопных труб.
Читать дальше →
Всего голосов 59: ↑42 и ↓17 +25
Просмотры17.4K
Комментарии 26

Blazor Client Side Интернет Магазин: Часть 1 — Авторизация oidc (oauth2) + Identity Server4

Разработка веб-сайтовПрограммирование.NETASPC#

Привет, Хабр! Таки да, в прошлой своей статье я попробовал сделать Todo List на Blazor Wasm и остался доволен. Теперь я решил взяться за что-то по серьезней, чтобы опробовать его в деле. Буду делать простенький SPA UI на Blazor для простого вымышленного интернет магазина. Максимально приближенный к боевому применению вариант. Начну я с того что запилю авторизацию пользователей и разделения их по ролям т. е. чтобы админ и обычный пользователь видели немного разный интерфейс. Еще я это все в docker образы собрал и на docker registry выложил. За подробностями добро пожаловать под кат.
Читать дальше →
Всего голосов 1: ↑1 и ↓0 +1
Просмотры6.3K
Комментарии 3

15 лучших и крупнейших библиотек иконок

Блог компании Edison
Перевод


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

Сразу уточняем: это не 15 самых лучших библиотек, а 15 из лучших. Разумеется, есть и другие, не менее замечательные, о которых я не упомянул или не знаю.
И, нет, это не рейтинг — список маркированный, а не нумерованный.
Читать дальше →
Всего голосов 26: ↑24 и ↓2 +22
Просмотры19.6K
Комментарии 12

Повысьте производительность SPA, разбив ваши библиотеки Angular на несколько частей

JavaScriptAngular
Из песочницы

Привет, Хабр! Представляю Вашему вниманию перевод статьи «Improve SPA performance by splitting your Angular libraries in multiple chunks» автора Kevin Kreuzer.


Angular — отличный фреймворк. Мы все его любим <3.


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


Сегодня благодаря Angular CLI библиотеки легко создать. Они прекрасно подходят для того, чтобы делиться кодом между несколькими приложениями.


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


В Frontend есть разные типы производительности. runtime — производительность и initial load. В этой статье мы сосредоточимся на initial load.


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

Читать дальше →
Всего голосов 21: ↑19 и ↓2 +17
Просмотры6.7K
Комментарии 7

TelegramBot инструкция по созданию базового функционала для бота. (Часть 1)

JavaAPI
Tutorial
Не так давно я предложил вам воспользоваться моим ботом для телеграмма.

Telegram Bot — помощник в планировании мероприятий

Получив много вопросов в личку, я понял, что вопрос создания ботов для Телеграм довольно популярен.

У меня спрашивали исходный код бота, просили поделиться конкретными примерами реализации тех или иных возможностей бота, просили подсказать тот или иной функционал по работе с ботом и сообщениями.

Я решил написать цикл статей, в которых хочу показать базовые вещи, которые будут нужны вам для написания своего бота.
Вас ждет Java, Maven, TelegramAPI, Lombok и Log4j.
Кому интересно — прошу под кат…
Читать дальше →
Всего голосов 7: ↑6 и ↓1 +5
Просмотры21.8K
Комментарии 17

Подготовка к Spring Professional Certification. Spring Security

Java
Перевод

Эта статья является переводом статьи по подготовке к Spring Professional Certification.


В ней будет рассмотрена тема Spring Security и основные вопросы по ней.


Ее также можно использовать для подготовки к собеседованию.


↓ Остальные статьи доступны по ссылкам в оглавлении ↓


Оглавление
  1. Внедрение зависимостей, контейнер, IoC, бины
  2. AOP (аспектно-ориентированное программирование)
  3. JDBC, транзакции, JPA, Spring Data
  4. Spring Boot
  5. Spring MVC
  6. Spring Security
  7. REST
  8. Тестирование



Читать дальше →
Всего голосов 17: ↑13 и ↓4 +9
Просмотры6.3K
Комментарии 2

Информация

В рейтинге
3,445-й
Откуда
Минск, Минская обл., Беларусь
Зарегистрирован
Активность