V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  w568w  ›  全部回复第 1 页 / 共 22 页
回复总数  426
1  2  3  4  5  6  7  8  9  10 ... 22  
1 小时 31 分钟前
回复了 muchan92 创建的主题 程序员 人心中的成见是一座大山,数据转换思想
打了一大段字又被 V2EX 吞了。很烦,只说重点。

你这就是响应式函数式编程,Makefile 都能干类似的活。规则挂在类型上毫无意义,大部分逻辑不可复用,纯粹增加心智负担。

为什么觉得大家都没想过?有没有可能实际的复杂业务代码在响应式系统编程时就是这么做的,甚至比你想得更深?

附反应式宣言,这是 10 年前的文章 https://www.reactivemanifesto.org/zh-CN
2 小时 32 分钟前
回复了 Coande 创建的主题 分享发现 清华源愚人节这么玩?
@MFWT 你在说什么?清华大学开源软件镜像站是你口中什么严肃的政府工作网站,还是企业门户页?

网页清清楚楚写了:清华大学 TUNA 协会,全名清华大学学生网络与开源软件协会,是由清华大学热爱网络技术和开源软件的极客组成的学生技术社团。你在学生时代参与兴趣社团的时候也是这样开不得一点玩笑?

还“你日常的浏览习惯”。怎么,你给人家学生打钱了,还是赞赏商,为什么要尊重你?有点自我意识过剩了。
> 为什么不直接把这些协议对应的可执行文件打包到项目里面

你说的大概是指调库,不是调可执行文件。

有几个原因:

1. 各个协议实现的抽象等级不一样,很难统一接口。A 协议开发者发布的库打包了 dns 解析器,B 协议不支持自定义 DNS ,C 协议依赖系统的 TLS 、不支持自定义证书,D 协议完全解离了网络逻辑,要自己实现请求接口……你怎么办?打包在一起,小则行为不一致、令用户迷惑,大则功能完全不能用;

2. 增加调试成本。现在用户来报告 bug 时,你还得先搞明白到底是你写错了,还是引用的上游库有 bug 。就算不是你的问题,你还得重新向上游报告 bug 、等上游修复、集成新的版本……一套流程下来,用户早就不用了(如果 bug 影响到你自己,你估计也不想用了);

3. 小圈子政治,这个不仅仅是国内开发者,但国内确实更明显,代理软件这种开发难度高、用户群体大的更是如此。一群小白在一起跪舔一个(顶着二次元头像的)大佬开发者,甚至攻击其他代理软件、嘲笑其他协议,基本是国内一部分代理项目的常态。
3 天前
回复了 catazshadow 创建的主题 NAS 小体积低功耗+ECC 内存的 NAS 有没有解
@catazshadow #9 随机比特翻转影响到你的概率基本为 0 ,不是天天暴露在宇宙射线的航天器就不用考虑了。你说的更可能是 bitrot ,这种应该选择有文件校验和的文件系统,比如 btrfs 、zfs 。
3 天前
回复了 catazshadow 创建的主题 NAS 小体积低功耗+ECC 内存的 NAS 有没有解
@catazshadow

> 有种文件系统可靠性比较高,但必须要 ECC 内存才能用

没听说过这这种东西。

单个文件系统可靠性都一样高啊(排除没日志、特定硬件的那些),在硬件不坏的情况下不丢文件是对文件系统的基本要求,做不到的那些早就被拍死了,根本不会有人去用。

提高可用性只能通过 RAID + 纠错/备份来解决,比如 zfs 的 RAIDZ 。
3 天前
回复了 catazshadow 创建的主题 NAS 小体积低功耗+ECC 内存的 NAS 有没有解
> ECC 内存

> zfs 这种带 ECC 的文件系统

这完全是两个东西啊。而且文件坏了/丢失不应该先怀疑是不是硬盘、电源或者服务有问题吗
4 天前
回复了 nativeBoy 创建的主题 浏览器 火狐不争气啊
@cmdOptionKana 不是吧,SwitchyOmega 和 Windows 系统代理设置没关系的,它会接管浏览器的代理设置。
5 天前
回复了 muchan92 创建的主题 程序员 一种省时省力的编程方式
计算机哲学民科
5 天前
回复了 w568w 创建的主题 宽带症候群 EasyTier 组网是真不错
@lany 我看了一下文档,主要用来中转的节点可以用 --relay-network-whitelist 来限制可连接的 network_name ,然后其他节点链接的时候使用相同的 network_name 和 secret 才能正常使用中转。不知道这个是不是你想要的 https://easytier.cn/guide/network/host-public-server.html

@ottoli 这个参数在第一篇文档(快速组网)的第一句命令下面就介绍了。

@lmaq 这个看报错大概是在说用户名已存在吧,我倒是没打算用他们的网络管理服务。

@SenLief @2han9wen71an 能否分享一下优点? Tailscale 和 vnt 我都没用过哦。

@xiaoxiang69460 是的,只有能转发 Ethernet 帧的 L2 VPN ( ZeroTier 、n3n 、OpenVPN )才能转发任意的 IP 数据包。Tailscale 、EasyTier 这些建的都是 TUN 设备,属于 L3 VPN ,不能做 6in4 隧道。
6 天前
回复了 w568w 创建的主题 宽带症候群 EasyTier 组网是真不错
@liuzimin 底层用的是 wg ,性能应该不差,我测试都可以跑满上行。

@Tink @sarices Tailscale 我其实没实际用过,不敢乱发言了。从我读到的文档来看,用户体验( UI 、线上管理)可能稍差,但功能性上肯定是更强的。

@Int100 我的场景需要 full mesh 呀。比如上面提到的 A <-> B <-> C 下,AC 直连的问题。

@pxiphx891 文档里说是可以的,但可能享受不到其他好处( OSPF/自动 DHCP )了。
@nmap 14 年就支持了吧,.NET 早就改名 .NET Core 了
多人开发非常合理。胡乱提交,等出问题或写日志的时候,就对着 commit 里一堆「 fix 、bug 、功能、a 、1 」哭去吧。

单人开发就随意了,可能 leader 有意要树立团队协作习惯。既然你之前从没接触过协作开发(否则也不会问出这种问题),我觉得学习一下挺好的,不用抵触。
@lxdlam 是的。我举这些边界情况其实想说明的是每个人口中的「协程」可能都是不同的意思,因此最好不要随便使用这个已经被滥用的无效术语。就叫 用户线程/生成器/线程池 就好了。
9 天前
回复了 abbb 创建的主题 Linux 请求帮忙装个论坛
@abbb #4

> 看到他说得很神奇,故想尝试一下

神奇在哪?我只看到一个 7 年前的、语焉不详的简单 nginx 配置教程。
同楼上,你把类型检查器开到 strict ,写起来和静态语言差不多。

Python 是典型的渐进类型( Gradual Typing )语言。也就是说,你可以标注类型以享受类型检查的好处,也可以不标注类型来快速编码。类似的还有 Dart 的 dynamic 、TypeScript 的 any (如果没禁用的话)、PHP 等。

Python 现在的问题是泛型类型支持太差,很多时候不得不采取一些非常尴尬的写法来标注类型。
@w568w 还有个老生常谈的称呼问题:

协程 = 有栈协程/虚拟线程/用户态线程。这是在说 Go 的 goroutinue 、Java 的 Virtual Thread ;

协程 = 无栈协程/暂停之后能恢复的函数。这是在说 Python/Dart 的 Iterator 、Lua/C++20 的 Coroutines 、Rust 的 Future 状态机;

协程 = 可以指包装了一层 Dispatcher 的普通线程。这是在说 Kotlin 的 Coroutine + NewThreadDispatcher 。
> 在我看来 go 的协程实现是分割原本线程的资源,做到更轻量化和更灵活的资源调度

没什么问题。更具体地说,很重要的一个原因是 userspace thread 完全省略了操作系统调度线程和内核态切换的开销。

有一个类似的例子:为什么 C 语言里用 malloc() 分配内存,而不是直接调操作系统提供的 sbrk()?你让面试官想去吧。

> 他还有第二个问题,既然协程这套理论这么牛逼,那么 c++ 为什么没有呢

没更新过知识的愚昧认知。当今几乎所有现代语言里都有「协程」,只是具体含义和实现不同。我随便抓一把:Python 、JS/TS 、C++、Rust 、C#、Java/Kotlin 、Lua 、Dart…
@w568w 个人设备( NAS 、路由器、个人电脑)正相反,如果要用 Linux ,一定要坚决追最新内核,装 rc 、master 都很正常。

原因很简单,第一是折腾坏了也无所谓,第二是这些设备在 Linux 家族属于边缘支持,驱动更新非常缓慢,经常硬件发布了几个月,Linux 那边才堪堪进主线。这种时候还抱着老内核不升级,纯受罪不讨好(例如 https://www.v2ex.com/t/1119960 )。
1  2  3  4  5  6  7  8  9  10 ... 22  
关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1120 人在线   最高记录 6679   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 33ms · UTC 18:42 · PVG 02:42 · LAX 11:42 · JFK 14:42
Developed with CodeLauncher
♥ Do have faith in what you're doing.