V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  Jirajine  ›  全部回复第 67 页 / 共 213 页
回复总数  4259
1 ... 63  64  65  66  67  68  69  70  71  72 ... 213  
2022-09-25 07:07:50 +08:00
回复了 Cify 创建的主题 程序员 Linux 下有类似 windows 磁盘加密工具 bitlocker 吗?
@eason1874 所以还是依赖 secure boot 和 TPM 进行签名验证。initramdisk 本身就是一个 mini rootfs ,和“系统盘”是同一种东西。没有 TPM 的情况下,修改替换内核 /initramdisk 并关闭 /修改安全启动的证书用户程序无法验证,和修改系统效果是一样的。
没有 TPM 这种硬件保护机制,什么方法都没法抗拒物理访问的侵入,有 TPM 则可以连同 boot 分区一并加密。

@Cify 从用户角度,对硬件访问的安全保护 可以从 https://wiki.archlinux.org/title/security#Physical_security 开始看
同时算 hash 应该没有什么特别的办法,最多并行计算的时候共享一下 buffer 。

@mikewang go 为了 portability 重新实现很多东西,这些实现不如广泛使用的优化更好很正常。
另外单以 SIMD 来说也不一定非要汇编,c/rust 都是支持的,只是 go 不支持。
2022-09-25 05:20:23 +08:00
回复了 Cify 创建的主题 程序员 Linux 下有类似 windows 磁盘加密工具 bitlocker 吗?
@eason1874 其实 initrd 里 ssh 输入密码和只加密数据盘是一样的,也可以拆机替换 initramdisk 加个木马偷取密钥。
要抗 Evil Maid attack 的话,还得配合 secure boot 签名和 TPM 验证。不过如果有 TPM 的话,可以直接用 TPM 解密 luks 磁盘,也就没必要 ssh 输入了。当然,前提是信任厂商的 TPM 实现。
2022-09-25 03:22:07 +08:00
回复了 Cify 创建的主题 程序员 Linux 下有类似 windows 磁盘加密工具 bitlocker 吗?
@eason1874 也可以在 initrd 里配置启动时通过 ssh 输入密码解密磁盘,不需要控制卡和输入设备。
2022-09-25 03:11:27 +08:00
回复了 sunny1688 创建的主题 程序员 对协程的理解
槽点太多,各个概念都搞混了。
协程 coroutine 重点在于 cooperative ,协作式,相对应的是 preemptive ,抢占式,最经典的实现既 Thread ,线程。
这两者都是 multitasking 多任务的机制。
协作式就是各个任务之间相互合作,程序主动在需要等待的时候让出控制权,体现在代码里就是 yeild/await 等机制,golang 则是由编译器隐式插入 yield 点。
抢占式自然是各个程序不协作,相互争抢,由外部调度器决定运行哪个。
前者的优点在于因为是程序自己协作,自然知道挂起 /恢复时需要哪些信息,而 OS 线程调度器不知道这些,就得把整个 call stack/ register 的状态都存下来以后才能恢复。这就是协程性能好、更轻量的原因。
抢占式的优点在于不需要用户代码关心和处理协作的细节,用户代码更简单且责任少。操作系统如果用协作式的多任务,那一个程序不让出控制权就能卡死整个系统,这也是通用操作系统实现线程的原因。而嵌入式操作系统等用户态可控的环境下,则可以实现协程作为多任务机制。

stackful/stackless 是协程实现的方式,前者使用类似 stack 的结构保存状态,优点是编写时更接近传统线程,aka 绿色线程。后者则是生成状态机,只保存确实需要的状态,性能最好。

异步是一种调用机制,指调用函数立即返回而不是完成后返回,完成后通过某种方式通知调用方再获取结果。回调和某些语言的 async/await 语法就是为了表达这个过程。
异步 IO 是指通过异步的方式提供 IO 接口,操作系统提供 epoll/io_uring/IOCP 等接口,上层应用 /运行时再封装,常常配和协程、async/await 语法等结合起来以简化使用。

说异步 /协程提升性能主要指因为使用了异步 IO 接口,线程不会被阻塞,所以只需要少量线程而不是大量线程等待,少量线程内部再调度协程等待 IO 。因为协程更轻量,所以高并发场景下开销小,自然性能就好了。

Promise/Future 等是对异步过程的封装对象,和协程是相关但不同的两个概念。

goroutine 之所以叫 goroutine 而不是 coroutine 就是因为 goroutine 不是完全协作式的,也存在抢占式调度。

可以去了解一下 async rust ,async rust 因为太难用以至于你不得不对 async 、携程相关的概念、实现都完全理解才能真正用起来。
2022-09-24 19:35:09 +08:00
回复了 humbass 创建的主题 Node.js 比较好奇大家时间都是怎么存数据库的
大部分应用不需要也不应该处理、存储时区信息,用户发表了一个 post ,你只需要知道该 post 发布的“绝对时间”,没必要去记录用户是用什么时区发布的。

“时区”只是作为时间信息输入 /输出 解析和格式化的时候的一项参数,与时间信息本身无关。就像存一个整数不需要关心它是 16 进制还是 10 进制、如何 padding 如何对齐,这些只是显示和解析时的参数。
2022-09-24 16:44:55 +08:00
回复了 shellus 创建的主题 程序员 IPV6 安全性问题,端口全都暴露在公网?
@JamesR @docx 内网最大的意义是封装,很多设备就是不适合拥有公网地址。即使 ipv4 地址不缺,也是给你在网关上分配公网 IP ,内网暴露服务手动配置,这样做即使公网 IP/段变换,你的整个内网设备也不需要改变地址。当然 v6 下地址空间更多,每个人都能分配一个公网 IP 段,这样可以做 stateless prefix NAT 。直接给内网设备分配公网 IP 意味着一旦前缀变化,所有内网设备都需要变更 IP ,内网对外透明。dhcp-pd 这样的协议大部分应用都不支持,如 docker 、一些防火墙等,处理变更的前缀是很复杂的。
2022-09-23 07:20:31 +08:00
回复了 ioiioi 创建的主题 问与答 clash tun 模式下自动插入的 ip rule 的作用
你都用 premium 了,就不应该关系它具体做了什么,能用就行。这样才是一个合格的闭源软件用户。
2022-09-23 02:32:21 +08:00
回复了 opentrade 创建的主题 程序员 没完没了的争论
@anguiao 主要原因在于 HTML 和 CSS 设计之初是编写 document ,可后来网页都变成了 App 。
2022-09-23 02:05:16 +08:00
回复了 SingeeKing 创建的主题 分享发现 将英文文章「洗稿」成中文并不标出处
这个人的博客屁股太正了还装理中客,反自由反去中心化,甚至还发过文章批判📎。
他的 DNS 系列文章误导了不少小白,按他的说法配置“远端解析”和不代理 DNS 请求,却不告诉你结果可能的 DNS 泄露,大概其预期读者都是“身正不怕影子斜”不担心泄露的。
https://docker-py.readthedocs.io/en/stable/
当然,之前版本的 docker-compose 就是 Python 写的,自然不缺 docker api 的 SDK 。
2022-09-23 01:26:40 +08:00
回复了 fox0001 创建的主题 Linux [交流] Linux 服务器,大家使用什么方案监控性能和资源?
@fox0001 没错,node_exporter 只是输出 CPU/内存这些通用的硬件监测指标,还可以自行添加业务相关的数据源,在线用户数、订单量等,以及代码中结构化日志,有多少 warning 、error ,包括 payload ,都可以在 grafana 里可视化展示。
一般框架和库和 log infra 集成,代码里直接 tracing ,就可以自动收集、汇总、展示了。
2022-09-22 22:57:41 +08:00
回复了 fox0001 创建的主题 Linux [交流] Linux 服务器,大家使用什么方案监控性能和资源?
node_exporter + prometheus + grafana
部署完了以后可以逐步在业务代码里添加 tracing ,收集聚合展示其他业务相关的 metric 。
2022-09-22 14:33:57 +08:00
回复了 IBMall 创建的主题 分享发现 Wasmtime 1.0 正式发布:快速、安全、可用于生产环境
感觉现在这些项目发 1.0 都不够严谨,wasm 还有那么多在草案阶段,deno 直到现在 std 都没稳定下来。
unix socket 的文件路径只是起到一个寻址的作用,读写不涉及硬盘 IO 。
再者一般 sock 所在的 /tmp /run 等临时文件目录,已经是 tmpfs 也就是内存盘了。
2022-09-21 15:29:52 +08:00
回复了 dzdh 创建的主题 Docker 除了 supervisor 还有什么靠谱好用的容器内进程管理工具吗
@dzdh runit 和 s6 可以作为也可以不作为 pid 0 ,很多多进程的容器都是这么用的。
2022-09-21 13:35:53 +08:00
回复了 dzdh 创建的主题 Docker 除了 supervisor 还有什么靠谱好用的容器内进程管理工具吗
runit 、s6
2022-09-21 11:47:25 +08:00
回复了 coolair 创建的主题 问与答 Windows 上除了 Powershell 还有好用的 shell 吗?
@a33291 elvish 比其他来说一个重要好处是和原生外部命令集成的更好。至于补全,你可以配置一下,能使用 bash 和 fish 的补全,还有不少包括 docker/git 等在内的高质量补全。
2022-09-21 11:04:22 +08:00
回复了 yazinnnn 创建的主题 Java java19 ga
Project Wakefield 提都没提,果然优先级很低啊。
1 ... 63  64  65  66  67  68  69  70  71  72 ... 213  
关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2657 人在线   最高记录 6679   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 42ms · UTC 15:31 · PVG 23:31 · LAX 07:31 · JFK 10:31
Developed with CodeLauncher
♥ Do have faith in what you're doing.