Node.JS

  • ХабрахабрФото С 500 мс до нуля, или история о том, как я написал Node.js C++ addon и ускорил скидочный сервис в 500 раз

    С 500 мс до нуля, или история о том, как я написал Node.js C++ addon и ускорил скидочный сервис в 500 раз

    Приветствую тебя! Меня зовут Дмитрий и я работаю в Lad.Сегодня я поведаю историю о том, как эволюционировал скидочный сервис одного из наших проектов. Пройдя путь от всеми нелюбимого, "тормозящего" сервиса, до сервиса,который имеет наилучшие показатели на недельных графиках SLA. Рассказ делится на четыре части, первая из которых это краткая вводная о том, что из себя представляет скидочный сервис и как…

    Читать далее »
  • ХабрахабрФото [Перевод] Релиз Bun 1.0 (новый runtime для JavaScript )

    [Перевод] Релиз Bun 1.0 (новый runtime для JavaScript )

    Представляем Bun версии 1. 0. Bun — это быстрый универсальный набор инструментов для запуска, сборки, тестирования и отладки JavaScript и TypeScript кода (от одного файла до fullstack-приложения). Сегодня Bun стабилен и готов к продакшену. Установка Bun # curlcurl -fsSL <https://bun.sh/install> | bash# npmnpm install -g bun# brewbrew tap oven-sh/bunbrew install bun# dockerdocker pull oven/bundocker run --rm --init --ulimit memlock=-1:-1 oven/bun Обновление…

    Читать далее »
  • ХабрахабрФото Бот-сказочник, или как генерировать истории с помощью ChatGPT и Telegram

    Бот-сказочник, или как генерировать истории с помощью ChatGPT и Telegram

    Представьте, что вам нужно написать художественный роман. У вас есть ключевые идеи, продуманы основные повороты событий, но нет возможности объединить все в одну историю. Кажется, что написать захватывающую историю просто. Появилась идея — запиши, пришла новая мысль — запиши ее тоже. Потом добавь деталей и эмоций — и готово. Но это иногда последний пункт забирает больше всего времени. Такая же…

    Читать далее »
  • ХабрахабрФото Внутреннее представление и оптимизации строк в JavaScript-движке V8: «отмываем» строки, «обгоняем» C++

    Внутреннее представление и оптимизации строк в JavaScript-движке V8: «отмываем» строки, «обгоняем» C++

    С самого рождения JavaScript в каком-то смысле был языком для манипулирования текстом — от веб-страничек в самом начале до полноценных компиляторов сейчас. Неудивительно, что в современных JS-движках достаточно много сил уделено оптимизации внутреннего представления строк и операций над ними. В этой статье я хочу рассмотреть, как могут быть представлены строки в движке V8. Попытаюсь продемонстрировать их эффект, обогнав C++ в…

    Читать далее »
  • ХабрахабрФото Волшебство Drag And Drop: Как динамические дашборды делают жизнь проще. Часть 1. Описание и мотивы

    Волшебство Drag And Drop: Как динамические дашборды делают жизнь проще. Часть 1. Описание и мотивы

    Всем привет 🙂 Я Никита, уже больше 4 лет занимаюсь фронтендом, погружаюсь в инфраструктуру и кайфую от IT мира и комьюнити около веба, частенько читаю Хабр и решил попробовать написать сам. Решил сделать цикл статей и рассказать про опыт добавления динамических элементов на страницу с помощью drag and drop и получения данных с bff. Предварительно разбив на три части. Описание…

    Читать далее »
  • ХабрахабрФото Явное управление ресурсами: пробуем новую фичу JavaScript и TypeScript

    Явное управление ресурсами: пробуем новую фичу JavaScript и TypeScript

    Одной из самых интересных грядущих новинок JavaScript и TypeScript для меня является явное управление ресурсами. Новый синтаксис using foobar = … реализует идиому RAII, позволяя писать намного менее многословный код, управляющий какими-либо ресурсами. В этой статье я хочу на примерах разобрать эту фичу — в том виде, в котором она сейчас доступна в TypeScript 5. 2. 0-beta с полифиллом disposablestack.…

    Читать далее »
  • ХабрахабрФото Реализация WebRTC в Node JS. Передача видео с Raspberry PI до Web

    Реализация WebRTC в Node JS. Передача видео с Raspberry PI до Web

    У меня была задача - передача видео с минимальной задержкой с Raspberry Pi до веб-интерфейса моего робота. Причем необходима была реализация на Node JS. В этой статье я расскажу как можно реализовать стриминг с Raspberry Pi до веб-страницы используя WebRTC и Node JS. Немного об WebRTC WebRTC позволяет устанавливать p2p соединение между пользователями и передавать друг другу данные. Принципиальная блок-схема…

    Читать далее »
  • ХабрахабрФото KeyDB и Redis: в поисках серебряной пули — in-memory replicated DB (Replicated IMDB)

    KeyDB и Redis: в поисках серебряной пули — in-memory replicated DB (Replicated IMDB)

    На кластерах клиентов, которые мы обслуживаем, есть как «одноголовые» инсталляции Redis (обычно для кэшей, которые не страшно потерять), так и более отказоустойчивые решения — Redis Sentinel или Redis Cluster. По нашему опыту, во всех трех вариантах можно безболезненно переключиться с Redis на KeyDB и получить прирост производительности. Точнее, избавиться от бутылочного горлышка Redis в одно ядро. Хотя в новых версиях…

    Читать далее »
  • ХабрахабрФото ES2023 — что нового в JavaScript?

    ES2023 — что нового в JavaScript?

    Введение В данной статье мы обсудим новые возможности работы с массивами в JavaScript, которые были добавлены в ES2023. findLast и findLastIndex Допустим, у нас есть массив с элементами: const arr = [0, 1, 2, 3, 7]; Нам нужно найти элемент со значением 7, и мы предполагаем, что он находится ближе к концу массива. В предыдущем варианте когда мы использовали find(),…

    Читать далее »
  • ХабрахабрФото Как настроить Node.js Express сервер для React

    Как настроить Node.js Express сервер для React

    React - это библиотека JavaScript для разработки пользовательских интерфейсов. Она позволяет создавать эффективные и масштабируемые веб-приложения, основанные на компонентной архитектуре. Express.js - это минималистичный и гибкий веб-фреймворк для Node.js, который облегчает разработку веб-приложений и API. Он предоставляет простой интерфейс и набор функций, позволяющих быстро создавать серверы и маршрутизировать запросы. Введение Это руководство поможет вам разработать простое приложение на React и…

    Читать далее »


Кнопка «Наверх»