工具与资源github.com
Tile38:实时地理围栏与地理空间索引
Show HN: Tile38 – Realtime geofencing and geospatial index
2016 — 2019,它一次次回到首页
黑点是上首页(≥ 50 分)的那次投稿,空心点是没冲上去的投稿,点越大分数越高。
导读
Tile38 是一个开源的实时地理围栏与地理空间索引服务器,由 tidwall 用 Go 编写,采用 Redis 协议通信。它擅长处理动态数据集,支持快速点在多边形内查询和流式地理围栏通知,适用于网约车、公交路线、附近社交等场景。
为什么经久不衰:它填补了实时地理围栏通知这一细分需求,轻量易用且经过多年生产环境检验,多次登上 HN 首页说明其持续价值。
HN 评论精选
作者澄清 Tile38 的定位:不是 PostGIS 替代品,而是面向动态数据的实时围栏通知工具
对不明白 Tile38 是什么的人说:它不是 PostGIS 的替代品,也不是基于 Redis 构建的。PostGIS 是空间数据管理的瑞士军刀,尤其适合大数据集和复杂查询,我也常用。Tile38 使用 Redis 协议做网络传输,有些命令类似 Redis 的 SET/GET,但本质上是完全不同的项目。它擅长的是动态数据集场景,需要快速的点在多边形内查询和流式地理围栏通知,比如网约车、公交路线、附近社交应用等。
tidwall查看英文原文
To anyone coming here wondering WTF is Tile38? First I'll tell you what it's not. It's not a replacement for PostGIS, and it's not built on top of Redis. In my opinion PostGIS is the Swiss Army Knife of spatial data management. It's awesome! Especially for large datasets and complex queries. I use it all the time. Tile38 uses the Redis protocol for network transport. There're some commands that loosely resemble Redis like SET and GET, but it's otherwise a completely different project. I originally forked Redis and built the functionality on top of the C codebase. https://github.com/tidwall/redis-gis, but scrapped that project. What Tile38 is good for is very dynamic datasets where the application needs fast and simple point-in-polygon queries and streaming geofence notifications. Like vehicle pickup services, bus route services, proximity social apps, etc.
建议作者在文档中说明与 PostGIS 的差异和适用场景
这难免会被拿来和 PostGIS 比较,建议在 README 里加一段说明两者的对比,以及在什么场景下 Tile38 更适合。我得承认我想不出自己的需求里有这样的场景。
ldng查看英文原文
Inevitably this will be compared to PostGIS so maybe you could put a paragraph in the README on how it compares to it what is the usecase where Tile38 would serve you better. I must admit I don't see one for my own needs.
有用户证实 Tile38 已在生产环境中大规模使用
这是一款非常出色的软件,感谢作者。我们在生产环境中大量使用 Tile38 来满足所有地理空间需求。
rshetty查看英文原文
This is an amazing piece of software and thanks for creating this. We heavily use Tile38 for all our Geospatial needs in production.
用户询问是否支持三维高度,认为可用于游戏服务器等场景
这绝对是个很酷的产品。我一直想做一个类似的东西用作游戏服务器后端。你计划支持高度维度吗?我相信一些专业领域的客户会想知道'你在建筑物的哪个房间/楼层'。
gravypod查看英文原文
This is definitely a cool product. I've been thinking of building something like this for use in a game server backend. Do you plan on adding height-support? I'm sure some clients in the professional space would like to know "what room/floor in this building are you in?"
历次讨论
同类还值得读
直接在浏览器中启动 Linux 内核
Boot a linux kernel right inside your browser.
Fabrice Bellard 的 JSLinux 页面,用 JavaScript 在浏览器里启动一个 Linux 内核,并提供一个可交互的终端环境。
工具与资源上首页 5 次 · 2011–2025bellard.orgHacker News 未公开功能与行为清单(2018)
A List of Hacker News's Undocumented Features and Behaviors (2018)
数据科学家 Max Woolf 整理的 Hacker News 未公开功能与行为清单,涵盖投票机制、排名算法、账号惩罚等社区运作细节。
工具与资源上首页 5 次 · 2019–2025github.comMapSCII:在终端中用盲文和 ASCII 渲染地图
MapSCII – Braille and ASCII map renderer for the console
MapSCII 是一个在命令行终端里渲染地图的开源工具,用盲文字符和 ASCII 字符把地理数据画成可交互浏览的字符地图。
工具与资源上首页 5 次 · 2017–2025github.com顶尖大学的免费在线课程
Free Online Courses from Top Universities
Open Culture 整理的一份免费在线课程合集,汇集了全球顶尖大学(如 MIT、斯坦福、耶鲁等)向公众开放的网络课程资源,涵盖音频、视频等多种形式。
工具与资源上首页 5 次 · 2010–2022openculture.com淘气字符串:容易引发用户输入问题的字符串清单
Naughty Strings: A list of strings likely to cause issues as user-input data
一个 GitHub 仓库,收录了大量容易让程序出问题的用户输入字符串,如特殊字符、emoji、SQL 注入片段、系统命令等,供开发者用于测试输入处理逻辑。
工具与资源上首页 4 次 · 2015–2020github.com