2作者: miloschwartz大约 1 个月前原帖
Pangolin(<a href="https://github.com/fosrl/pangolin" rel="nofollow">https://github.com/fosrl/pangolin</a>)是一款开源工具,旨在基于身份的远程访问内部资源,是Cloudflare ZTNA、Zscaler和Twingate的替代方案。 它与现有的方法有所不同:网状VPN(如Tailscale、ZeroTier等)创建了扁平的覆盖网络,在大规模应用时,访问控制列表(ACL)和IP地址管理变得复杂,并且每个设备都可以与其他设备通信。而企业级的ZTNA解决方案(如Zscaler、Cato、Netskope等)是闭源的,并通过强制流量经过中央服务器来增加延迟。 Pangolin采取了以资源为中心的方法。您可以部署轻量级的连接器,连接到特定资源(私有网页应用、SSH、数据库、CIDR范围)。管理员可以将资源访问权限委托给特定用户和角色。它使用WireGuard和NAT打孔技术实现点对点连接,流量直接在用户和连接器之间传输,而不是通过中央服务器。它支持原生客户端(Mac、Windows、Linux、iOS、Android),并且在不需要客户端的情况下,支持基于身份的浏览器访问。 Pangolin提供云服务,并可选择自托管。社区版采用AGPLv3许可证。企业版也在商业许可证下开源,允许个人和小型企业免费使用。
4作者: kafked大约 1 个月前原帖
这个想法很简单:在地图上的任何地方点击,提出一个名称,其他人投票,或者在大约5分钟内自动接受。对于新地点或名称对决,不需要账户——只需在挑战已经更名的地点或投票以防止滥用时需要账户。到目前为止已经有4万次更名,令人惊讶的是人们大多数时候表现良好。有些名称确实很有创意,我通过观看地图不断学习随机的地理知识(你知道吗,有人把台湾高雄动物园的每一种动物都标注在OpenStreetMap上了吗?) 这是一个非商业项目,只是一个副项目。技术栈包括SvelteKit、MapLibre,以及在Cloudflare R2上自托管的40GB矢量地图。 请不要将此用于导航。
1作者: skatiyar大约 1 个月前原帖
我构建了一个Go实用库,灵感来源于JavaScript的async库,使用Go 1.18+的泛型进行符合习惯的实现。尽可能避免使用反射和interface{}。 该库提供了大约70个函数,分布在四个包中: - 同步与异步:包括对切片和映射的map、filter、detect、reduce、every、some、reject、groupBy等操作。每个异步函数都在goroutine中运行迭代器,并具备恐慌恢复机制。 - 并发限制:所有异步函数都有一个Limit变体,通过信号量限制goroutine的数量。 - 工作池:一个通用的工作队列,具有可配置的缓冲区、并发性、超时和优雅的关闭机制。 - 控制流:采用瀑布式的顺序执行,支持类型安全的上下文传递。 免责声明:部分代码是使用Claude Code生成的。我这个项目的目标之一是实验最新的模型,看看它们在真实代码库中的能力——从实现到测试再到文档的编写。 使用以下命令获取库:`go get github.com/skatiyar/goutils@v1.0.0` 欢迎对API设计提出反馈,以及函数命名是否符合Go的习惯。