neohope
2022-03-17
产品经理如果提了个需求:在某 GPS 点,拉黑半径五公里的用户。这个需求是画圆,需要进行计算了,不能无脑判定经纬度了。如何让性能提升呢? 找近似解: 1、一个大圆,可以近似为多个平行的矩形,两级判断效率没问题,内存浪费也不多 2、根据位置,枚举基站,根据基站,限制IP。当然,如果条件允许,也可以根据历史数据,直接枚举IP。 3、再懒一些呢,只做乘法加法计算,不做开方运算,数据量小也能凑合 当然,其实优先要问的是,产品为啥要定义这种规则,究竟要解决的根本问题是啥,产品给出的技术方案很多时候有较大的优化空间。
作者回复: 没错,搞清楚产品原始需求也许更重要。