Отправляет email-рассылки с помощью сервиса Sendsay

За 2020-04-11

[prg] Docker и WSL2 (Промежуточные результаты)

Всем доброго времени суток!

03.03.2020 17:09, Вадим Шмаков пишет:
> Имеется ли у кого-нибудь опыт работы с докером через wsl2? Если я
правильно понимаю, docker desctop for windows уже умеет использовать его
вместо Hyper-V. Насколько повышается скорость работы контейнеров?
Возникают ли какие-то сложности с кодировкой, окончанием строк?

В общем установил я windows insider, включил wsl2 и поставил убунту.
Первым вариантом запуска докера в связке с wsl2 была установка docker
desktop edge и перевод бекенда с виртуализации на нативный линукс. В
теории это должно было повысить скорость и надежность докера. При этом
файлы проекта и прочее окружение оставались бы на windows. Т.е. самый
консервативный вариант.
Инструкции по его воплощению есть в документации докера.
https://docs.docker.com/docker-for-windows/wsl-tech-preview/
Результат: все стало работать еще медленнее, что, видимо, связано с
плохой интеграцией файловых систем линукса и windows. Во всяком случае
такое объяснение заканчивает все обсуждения в интернете на эту тему.
Второй вариант неизменно мелькает на тех же форумах, где обсуждается
ущербность первого. В общем предлагается перенести сам проект на линукс,
установить туда же докер и запускать все в одном месте. Но на этот раз
через мост между файловыми системами должна будет работать уже ide.
Данный подход вполне хорошо описан в этой статье:
https://habr.com/ru/post/474346/
Разве что создавать символическую ссылку необязательно. По
\\wsl$/Ubuntu... Переходит и проводник, и total commander, и ide.
Результат: Докер просто летает. По ощущениям раз в 10 быстрее, чем
desktop версия. А вот ide чувствует себя хуже. PHPStorm, например, по
полминуты тормозит при переключении между git ветками и без ручного
обновления не видит созданные другими программами файлы. Но в целом все
вполне терпимо. Еще visual studio code по слухам имеет какой-то
волшебный плагин, позволяющий работать через wsl2 вообще бесшовно. Но я
лично не пробовал.
Третий вариант - перенести на линукс и ide. Тогда вообще все окружение
будет работать в одной коробке. Процесс для продуктов jetbrains описан
здесь:
https://www.tomaszmik.us/2020/01/26/intellij-on-wsl/
Вроде бы это решает вообще все проблемы. Но мб и создает новые. Так же
сомнительно, чтобы такая конструкция имела какое-то accessibility. Может
кто лучше понимает, о чем там идет речь. Было бы интересно услышать
рецензию.
По итогу второй уровень перехода на wsl2 пока меня вполне устраивает.
Полностью на windows возвращаться не планирую. Было бы интересно
как-нибудь попробовать и третий вариант. А вообще, где-то в мае должна
выйти уже стабильная десятка с полноценным ядром линукса под капотом. И
подобная схема работы станет доступна не только на инсайдере. Резюмируя
можно сказать, что с появлением wsl2 докеробоязни у меня поубавилось. Но
и пространство для улучшений все еще есть.

   2020-04-11 17:11:55 (#3650020)

[prg] профилировщик для c# кода

Приветствую всех.

Возникла потребность в профилировании приложения, но профилировка во
время отладки в visual studio кажется недоступной. Т.е. хочется понять
как грузиться процессор, потребляется память и пр. между двумя
брекпоинтами, но в VS я такой информации не вижу, возникает впечатление,
что там просто отображается график, где все это показано. Существуют ли
какие-нибудь альтернативные способы это сделать? Или может быть это все
в VS реализуется, но нужно это как-то по особому делать? К примеру я,
просто ставлю несколько брекпоинтов и нажимаю ctrl+alt+f2, где надеюсь
выбрать нужное событие прерывания и посмотреть, что происходило до него.

В общем буду безмерно благодарен за советы.

С уважением, Константин.

   2020-04-11 13:01:02 (#3650008)