GOLANG_DIGEST Telegram 227
Уровни оптимизации кода на Go: начинай с главного

https://habr.com/ru/companies/vk/articles/902820/

Автор разделяет оптимизацию на три уровня:

1. Макровзаимодействия — HTTP / gRPC / SQL, старт процессов (десятки‑сотни миллисекунд).

2. Микровзаимодействия — syscalls, WebSocket внутри открытого соединения (микросекунды).

3. Инструкции CPU — циклы, копирование памяти, сортировки (наносекунды).

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

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


Статья короткая, но неплохо расставляет приоритеты. Рекомендую, особенно джунам, которые любят начинать оптимизацию с make(slice, 0, cap)

Ну и, к слову про оптимизацию, не забывайте классику

#article
🔥36👍124



tgoop.com/golang_digest/227
Create:
Last Update:

Уровни оптимизации кода на Go: начинай с главного

https://habr.com/ru/companies/vk/articles/902820/

Автор разделяет оптимизацию на три уровня:

1. Макровзаимодействия — HTTP / gRPC / SQL, старт процессов (десятки‑сотни миллисекунд).

2. Микровзаимодействия — syscalls, WebSocket внутри открытого соединения (микросекунды).

3. Инструкции CPU — циклы, копирование памяти, сортировки (наносекунды).

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

Цитата:

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


Статья короткая, но неплохо расставляет приоритеты. Рекомендую, особенно джунам, которые любят начинать оптимизацию с make(slice, 0, cap)

Ну и, к слову про оптимизацию, не забывайте классику

#article

BY Golang Дайджест




Share with your friend now:
tgoop.com/golang_digest/227

View MORE
Open in Telegram


Telegram News

Date: |

Read now Just as the Bitcoin turmoil continues, crypto traders have taken to Telegram to voice their feelings. Crypto investors can reduce their anxiety about losses by joining the “Bear Market Screaming Therapy Group” on Telegram. The Standard Channel Matt Hussey, editorial director of NEAR Protocol (and former editor-in-chief of Decrypt) responded to the news of the Telegram group with “#meIRL.” It’s easy to create a Telegram channel via desktop app or mobile app (for Android and iOS):
from us


Telegram Golang Дайджест
FROM American