时至今日, WSL 仍然难用

2024 年 3 月 21 日
 weijancc
前段时间因为重装了 Windows, 想着就装个 Docker 吧, 装软件省事. 但最终依赖的 Hyper-V 是全局虚拟化, 使得宿主机也被虚拟化, 能够明显感到掉帧, 从 wsl2 发行到现在 Hyper-V 还是一样糟糕, 最后还是使用回了虚拟机 Docker.

不知道 2020 年左右简中怎么流行了"Windows 是最好的 Linux 发行版", 真的不想再看到这句话了, 被骗了好几次, 感觉说这个都没用过虚拟机或 VPS 的正版 Linux, WSL 一点都不配.(我的 Windows 配置 i9+4060+40G 内存).
29905 次点击
所在节点    程序员
145 条回复
weijancc
2024 年 3 月 21 日
@aLazarus 这个是 window defender 导致的, 把它关了
Biggoldfish
2024 年 3 月 21 日
讲个笑话,无法忍受 WSL2 稍有限制的正经 Linux 子系统却会大赞 Mac 的类 Unix

systemd 显然是支持的

https://devblogs.microsoft.com/commandline/systemd-support-is-now-available-in-wsl/

"hyper-v 对宿主机的性能损耗其实感知不强...但我是完美主义, 无法忍受这点损耗"

那根本就不该用带 GUI 的系统,多少 CPU cycle 浪费在渲染 UI 和网页上,尤其是 Mac OS 一大堆动画浪费性能,不如 headless 一把梭
freemoon
2024 年 3 月 21 日
mac 下的 dockers desktop 占用几个 G 内存,这算好用吗,已经有替代品 orbstack 了
weijancc
2024 年 3 月 21 日
@xwwsxp
@Biggoldfish Mac 暂且不谈, 还有 vmare 和 virtual box 珠玉在前, wsl 也打不过.
aLazarus
2024 年 3 月 21 日
@weijancc #41 原来是这样,怪不得 win11 的 dev home 会有一个 windows defender 的性能模式
weijancc
2024 年 3 月 21 日
@lasuar 我现在占 4G 内存, 其实不算多, 只是 Mac 内存太贵了, 我买的二手 32G 内存.
ShadowPower
2024 年 3 月 21 日
我用 Cinebench 测过开关 Hyper-V 的 CPU 性能
以及用 AIDA64 内存测试来测过内存性能

10 年前我测得性能下降低于 2%
去年 v2 有个帖子里的回复说有大幅影响,我说只有 2%,对方不服。于是我又测了一次,只有 0.7%损耗

我觉得 macOS 的系统动画和透明模糊效果带来的性能影响都比这个大……
neroxps
2024 年 3 月 21 日
额 WSL 2.0 其实就是 hyper-v 吧,只是打通了文件传输和网络。本质上还是一个东西。不然 win 内核下怎么跑个 iptables ?
ShadowPower
2024 年 3 月 21 日
@ZZ74 VirtualBox 的 IO 性能不如 Hyper-V ,包括虚拟磁盘和网络方面
我之前用 VBox 和 VMware 本地跑一个比较大的 kafka 集群,性能差距就体现出来了……

想了想,毕竟 Azure 就基于 Hyper-V ,这方面要是不行,会影响微软赚钱
itechify
2024 年 3 月 21 日
wsl 都是小打小闹,直接上物理机
BeautifulSoap
2024 年 3 月 21 日
搞笑呢,你说 wsl2 和 Hyper-v 有点不太好用那的确是,但你要说 mac 上的 docker 有多好用那简直是在逗我呢

mac 上的 docker 也是跑在虚拟机上,公司开发默认就给配 mac ,mac 上的 docker 遇到的问题可以一大堆
dayeye2006199
2024 年 3 月 21 日
java 和前端为啥 WSL 没法满足?
这两玩意儿 windows 下都是很好用的把
ShadowPower
2024 年 3 月 21 日
另外我又想起了这个 WSL 没有而 Mac Docker 才有的问题……
https://github.com/pnpm/pnpm/issues/5803

不过后来 Docker Desktop 更新后有办法绕过了,OrbStack 之类的没办法

另外,至于 Mac 版 Docker Desktop 的 IO 性能,还有个 issue:
https://github.com/docker/for-mac/issues/6667
Vegetable
2024 年 3 月 21 日
Docker Desktop For Mac 都成正面例子了
maxxfire
2024 年 3 月 21 日
我遇到比较大小的问题是:无法从 wsl2 中访问 windows 的网络映射盘,其它还好
macaodoll
2024 年 3 月 21 日
mac docker 也是个残疾,用 orb stack 好很多
agagega
2024 年 3 月 21 日
软吹的话听着乐呵得了,真要原汁原味 Linux 还得装个正经发行版
liyaodev
2024 年 3 月 21 日
WSL2 使用一年了,整个感觉用着还行。能同时满足 Linux 和 Windows 的使用需求,不过目前网络配置和磁盘映射权限这块不太友好。比如:我在 WSL2 里面运行 Docker ,总会拉取 Dockerhub 访问不通过,不过现在通过 Windows Docker Desktop 配置解决
enihcam
2024 年 3 月 21 日
从理论讲,硬件抽象 Hypervisor 性能(例,Windows Hyper-V )不应该低于操作系统 Hypervisor(例,Mac 、QEMU)。是不是内核模块没有配置好?

踩着刹车开汽车,不能怪它比马车慢。
rockxsj
2024 年 3 月 21 日
win10 的确不是最好的 wsl2 发行版,因为 win11 才是。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://study.congcong.us/t/1025657

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX