Привет! В данной статье рассматривается проблема генерации excel файла и возможности реализовать динамическую генерацию excel файла с использованием интерфейса.
Пользователь
Golang: Мои Открытия
В этом посте мы обсудим несколько увлекательных моментов, которые я узнал в процессе своей работы. В нашем канале много переводов стаей и обзор инструментов GO, welcome.
1. Как используется встраивание (embedding) в Go?
В Go директива //go:embed используется для встраивания файлов и папок в бинарный файл Go на этапе компиляции. Эта функция улучшает безопасность, производительность и простоту кода за счёт возможности прямого импорта файлов без использования функций операционной системы.
Чтение на выходные: «Silent Hill. Навстречу ужасу. Игры и теория страха» Бернара Перрона
Сегодня в рубрике книга для геймеров, которые любят углубиться в теорию.
Бернар Перрон — эксперт из мира кино и компьютерных игр, профессор Монреальского университета, соредактор игры-песочницы Landmark. Книжица небольшая, но содержательная и без воды. Если хотите прочитать за один заход, то лучше на свежую голову, чтобы уловить все примеры и фамилии: автор ссылается на разработчиков, коллег, фильмы, журналы, много чего цитирует.
Челлендж по обработке миллиарда строк на Go: от 1 минуты 45 секунд до 4 секунд
Пару недель назад я прочитал о запавшем мне в душу челлендже по обработке миллиарда строк, поэтому захотел решить его на Go.
Я немного опоздал, соревнования проводились в январе. И на Java. Меня не особо интересует Java, зато давно интересует оптимизация кода на Go.
Этот челлендж был очень прост: обработать текстовый файл названий метеорологических станций и температур, и для каждой станции вывести минимальное, среднее и максимальное значение. Чтобы упростить задачу, было ещё несколько ограничений, однако я проигнорировал те, что относятся только к Java.
Linux на ПК получил 4% рынка десктопов. Это новый рекорд, но чем он объясняется?
Доля операционной системы Linux на настольных компьютерах никогда не была большой. Тем не менее она постепенно продолжает увеличиваться. Сейчас, в 2024 г., этот показатель достиг 4% — за три года он вырос на 2%. Что послужило причиной такого активного роста? Об этом — в продолжении.
SQL в качестве API
SQL в API???
Верно, вы уже успели подумать: «это же безумие, предоставлять API, который принимает SQL». Да, это ужасная идея. Особенно, если API обращён к Интернету. Делать так небезопасно, вы напрашиваетесь на атаки в виде SQL-инъекций. Поддержка такого интерфейса превратится в кошмар, а сама реализация бэкенда будет замкнута на конкретную технологию (это будет какая-нибудь база данных ANSI SQL).
Но справедливо ли такое суждение? Время его пересмотреть!
Как я пишу HTTP-сервисы спустя 13 лет работы с Go
Примерно шесть лет назад я написал пост о том, как пишу HTTP-сервисы на Go, и сегодня я снова хочу рассказать, как пишу HTTP-сервисы.
Тот пост оказался довольно популярным и вызвал обсуждения, повлиявшие на то, как я делаю это сегодня. И спустя годы ведения подкаста Go Time, обсуждения Go в X/Twitter и поддержки подобного кода я решил, что настало время обновить информацию.
(Если вы педант и скажете, что Go не совсем 13 лет, то я отвечу, что начал писать HTTP-сервисы на Go версии .r59.)
В этом посте рассматривается широкий спектр тем, связанных с созданием сервисов на Go
Руководство для домохозяек, стремящихся к соблюдению сетевой гигиены и чистоплотности
Делать будем жёстко, быстро и без соплей с сахаром. Как настоящая домохозяйка или мамкин админ!
За один вечер: покупаем и настраиваем VPS, поднимаем VLESS/Xray, настраиваем клиентcкое ПО на своём планшете, на ноуте мамы и на айфоне бабушки. А для очень ленивых будет AMNEZIA...
Ускоряем Go: известные и не очень методы оптимизации и связанные с ними штуки
Привет, Хабр)
В этой статье хотел бы поделиться приёмами, которые позволяют повысить производительность Golang-кода. Некоторые из этих вещей довольно известные и их могут делать за вас линтеры, например go-critic, noctx (эти 2 касаются defer
и отправки запросов без контекста).
Обсудим:
простые правила, которые не стоит забывать
мифы о производительности в духе "А я слышал, что X повышает скорость на Y%"
более интересные штуки, типо замены switch
на map
, проведём пару тестов, поэкспериментируем
Ну и помним, что преждевременная оптимизация — корень всех зол, не стоит сразу пытаться писать скоростной код, это может быть не так просто.
Поехали!
Запуск проекта в Kubernetes за 60 минут: инструменты, GitLab, Terraform
Привет, Хабр! Меня зовут Илья Нырков, я архитектор в VK Cloud. В своей работе встречаюсь с желанием партнеров (это и крупный энтерпрайз, и различные стартапы) использовать Kubernetes, но их останавливает сложность поднятия, конфигурирования кластера, деплоя в нём приложений и построения CI/CD-процессов вокруг него. Я постараюсь показать на практическом примере, который вы можете повторить сами, как развернуть за сравнительно небольшое время полноценный CI/CD с рабочим приложением, доступным для внешних пользователей.
Сериализация данных в Golang с Protobuf
Привет, Хабр!
Protobuf, или Protocol Buffers, это бинарный формат сериализации, разработанный в Google для эффективного обмена данными между сервисами. Это как JSON, только компактнее, быстрее и типизированнее. Если JSON был вашим первым крашем в мире сериализации, то Protobuf – это тот, с кем вы хотите серьёзных отношений.
Если вы хотите, чтобы ваши приложения общались между сервисами с молниеносной скоростью и минимальными задержками, тогда Protobuf — твой хороший выбор.
Go: передача значений VS передача указателей
Go - один из немногих языков, в которых структуры можно передавать параметрами и возвращать из функций как по значению, так и по указателю. Это приводит к большей выразительности языка, но также разделяет общество разработчиков Go на два лагеря: сторонников указателей и сторонников значений.
В данной статье предлагается во многом субъективное сравнение обоих способов и делается попытка убедить читателей передавать и возвращать значения в тех случаях, где это возможно.
Flask для начинающих — Часть 2 пишем landing page+admin panel с редактированием контента
Здравствуйте! Меня зовут Михаил, и я пишу эту статью специально для начинающих программистов, желающих изучить основы веб-разработки с использованием Flask.
Я сам активно занимаюсь разработкой проектов на Flask и хочу поделиться своими знаниями и опытом, чтобы помочь вам начать свой путь в мире веб-разработки.
Flask для начинающих - Часть 2 создание Веб проекта.
Мы создадим с вами мини проект - веб сайт с админ панелью и обновлением контента сайта. При помощи Python, HTML, CSS, Bootstrap, Flask, SQLite.
Переизобретённая жизнь: в чём суть синтетической биологии и как она изменит мир
Недавно консорциум Sc2.0 (International Synthetic Yeast Genome [Sc2.0] consortium) объявил о важном открытии — в авторитетном научном журнале Сell вышла статья о… простых пекарских дрожжах. Особенность открытия заключается в том, что половины генома новой версии дрожжей никогда прежде не существовало в природе. Её создали в лаборатории. Прежним рекордом было создание дрожжей с четвертью синтетических генов. Достижение ещё на шаг приблизило учёных к получению фундаментальной базы, которая позволит строить полезные живые организмы с нуля. Этим занимается синтетическая биология, и у неё большое будущее.
Открытые инструменты нагрузочного тестирования
Сервисы по продаже билетов, новостные ленты, стриминговые приложения, платформы онлайн-курсов и другие ресурсы, на которых бывает волнообразная нагрузка, должны поддерживать оптимальную производительность без сбоев.
Как помочь ИТ-системам справиться с ростом трафика? Конечно, обеспечить эластичные вычисления и надежные каналы связи — сделать это можно с помощью облака. А еще на помощь приходит нагрузочное тестирование перед пиковыми событиями: вы должны знать, может ли приложение справиться с масштабированием или нет.
Для проведения нагрузочного тестирования следует определиться с методологией: наметить цели, продумать метрики и сценарии, подходы к интерпретации результатов. Разобраться с существенной частью этих задач должны специализированные открытые инструменты, и сегодня мы поговорим о некоторых заметных из них. В подборке: Locust, который позволяет писать тесты на Python, легковесный Drill, производительный Wrk, а еще — k6 и Tsung.
Мокаем сервисы с Mountebank и Go
Mountebank - это мощная платформа для тестирования API и mocking-a, предоставляющая пользователям функционал и инструменты для создания гибких, настраиваемых и надежных тестовых окружений. В этой статье автор рассмотрит настройку Mountebank на реальном примере.
Вы кто такие, я вас не знаю, или Как мы делаем JWT-аутентификацию
Привет! Меня зовут Данил, я backend-разработчик в Doubletapp. Почти во всех наших проектах есть пользователи, которые могут войти в систему. А значит, нам почти всегда нужна авторизация. Мы используем авторизацию, построенную на JSON Web Token. Она отлично сочетает в себе простоту реализации и безопасность для приложений.
В интернете есть много разных материалов с объяснением, что такое JWT и как им пользоваться. Но большинство примеров ограничиваются выдачей токена для пользователя. В этой статье я хочу рассказать не только о том, что такое JWT, но и как можно реализовать работу с access и refresh токенами и решить сопутствующие проблемы. Будет немного теории и много практики. Присаживайтесь поудобнее, мы начинаем.
Путеводитель:
• Что такое JSON Web Token?
• Использование и реализация
• Простая реализация JWT
• Access и refresh tokens
• Как отозвать токены
• Доступ с нескольких устройств
• Удаление старых данных
• Резюмируем
Актуальный гайд по написанию простого Windows-драйвера
В рамках данной статьи я постарался написать полноценное руководство по разработке простого драйвера под операционную систему Windows 10. Всем новичкам, заинтересованным в системном программировании рекомендую ознакомиться. Это поможет вам сделать первые шаги в разработке драйверов.
Практика Go — Обработка ошибок (1 часть)
Я долго думал над тем, как лучше всего обрабатывать ошибки в программах на языке Go. Мне очень хотелось, чтобы существовал единый способ обработки ошибок, которому можно было бы научить всех программистов на Go, как учат математике или алфавиту.
Однако я пришёл к выводу, что единого способа обработки ошибок не существует. Вместо этого я считаю, что работу с ошибками в Go можно разделить на три основные стратегии.
Лучшая фантастика последних трех лет по версии Goodreads
GoodrGoodreads — пожалуй, главный книжный сайт англоязычного интернета. Недавно он составил список самых популярных фантастических книг за 2020-2023 годы, опираясь на мнение пользователей. К сожалению, на русский язык переведено далеко не все, однако даже те книги, которые уже можно прочитать в переводе, составляют внушительный список. Вот он.
Information
- Rating
- 4,037-th
- Location
- Волгоград, Волгоградская обл., Россия
- Date of birth
- Registered
- Activity