golang
Разбираем паттерны конкурентности

БазаПараллельность - выполнение задач в один момент времени на разных логических ядрах.Конкурентность - выполнение задач последовательно, но со сменой контекста на другую задачу в ожидание завершения иной задачи. У пользователя может возникнуть иллюзия многозадачности даже в однопроцессорной системе, поскольку смена контекста происходит быстро (микросекунды).Процессы:Раздельная памятьРаздельные ресурсыРаздельные регистрыПотоки:Общая памятьОбщие ресурсыРаздельные стэк и регистрыГорутины:Общая па…

  • вторник, 1 апреля 2025 г. в 00:00:08
golang
Параллельное программирование на Go

На практике, создаваемое нами ПО выполняется на множестве процессоров. К сожалению, многие наши допущения, справедливые для одного процессора, в случае нескольких процессоров становятся ложными. Например, каким будет состояние памяти, если два процессора изменяют один блок памяти? В общем случае на этот вопрос ответить сложно. Может случиться так, что внесённое одним процессом изменение перепишет внесённое другим. Справедливо может быть и обратное: может «победить» изменение другого процессора…

  • вторник, 1 апреля 2025 г. в 00:00:07
javascript
CI/CD для чайников — разберитесь, и начните наконец-то автоматизировать рутину в разработке. Часть1…

Всем привет. Наверняка каждый, кто так или иначе связан с IT сферой, слышал модную аббревиатуру CI/CD. Везде мы слышим про необходимость ее использования, преимущества автоматизации процессов и т.д.В вакансиях все чаще требуется опыт работы с одним из инструментов в этой инфраструктуре – Jenkins, Travis, AWS, Gitlab CI/CD.⚠️Я предлагаю вам посмотреть на этот процесс, глазами простого разработчика. Чем ему может помочь автоматизация. Что в конечно итоге скрывается под этой аббревиатурой, и как у…

  • вторник, 1 апреля 2025 г. в 00:00:06
javascript
Балансировка нагрузки LLM через Nginx

Исходный код, разобранный в статье, опубликован в этом репозиторииВ интернете существует множество примеров, которые позволяют подключить ChatGPT 3.5 без инструментов к телеграм боту. Однако, когда речь заходит о большом количестве пользователей, не существуют примеров распределения нагрузки по нескольким процессам: все туториалы в интернете запускают монолит с одной репликойhttps://github.com/telegraf/telegraf/issues/423Так же, на практике работы с NodeJS, я сталкивался с проблемой, когда мног…

  • вторник, 1 апреля 2025 г. в 00:00:05
github
supabase-community / postgres-language-server

A Language Server for Postgres Postgres Language Server A collection of language tools and a Language Server Protocol (LSP) implementation for Postgres, focusing on developer experience and reliable SQL tooling. Docs: pgtools.dev Install: instructions CLI releases VSCode Neovim Overview LSP Demo CLI Demo This project provides a toolchain for Postgres development, built on Postgres' own parser libpg_query to ensure 100% syntax compatibility. It is built on a Server-Client archi…

  • вторник, 1 апреля 2025 г. в 00:00:03
github
yetone / avante.nvim

Use your Neovim like using Cursor AI IDE! avante.nvim avante.nvim is a Neovim plugin designed to emulate the behaviour of the Cursor AI IDE. It provides users with AI-driven code suggestions and the ability to apply these recommendations directly to their source files with minimal effort. 查看中文版 Note 🥰 This project is undergoing rapid iterations, and many exciting features will be added successively. Stay tuned! …

  • вторник, 1 апреля 2025 г. в 00:00:02
habrahabr
Измерительный мост Уитстона — электронные весы

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

  • понедельник, 31 марта 2025 г. в 00:00:12
habrahabr
Интернет мельчает. К чему привели тенденции Web дизайна

За время своего существования сайты в интернете пережили не одну революцию, превратившись из простых страничек (и даже таблиц) в многофункциональных монстров в виде веб приложений. Сначала пользователей надо было удерживать на страницах, так в моду вошли пестрые цвета, анимации и flash player. Развился JS, веб перешел на HTML5, что подарило сообществу огромный функционал в плане технических возможностей и параметров кастомизации сайтов. Интернет быстро перестал быть местом для гиков, в интернет…

  • понедельник, 31 марта 2025 г. в 00:00:12
javascript
Интеграция Google Tag Manager (GTM) с Content Security Policy

Примечание: Пост предназначен для веб-аналитиков и специалистов, работающих с GTM, поэтому не несет в себе подробных инструкций по имплементации на стороне разработки.Соответствие политикам Content Security Policy (CSP) при использовании Google Tag Manager (GTM) на сайте может быть сопряжено с рядом сложностей.CSP блокирует загрузку внешних ресурсов, выполнение inline-скриптов и стилизации, что может вызвать сбои в работе GTM: некорректную загрузку тегов, проблемы с передачей данных или отсутст…

  • понедельник, 31 марта 2025 г. в 00:00:10