V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  Orlion  ›  全部回复第 1 页 / 共 2 页
回复总数  24
1  2  
https://blog.fanscore.cn/ 更新的不多,但追求高质量
https://blog.fanscore.cn/a/51/ 看下我这这篇文章吧,不知道对你有没有帮助,大概思路是取出一个坐标点附近九宫格所有坐标点,然后在程序中计算每个点距离该坐标点的距离,过滤掉不符合距离条件的点。

虽然文章中使用的是 redis ,但换成 mysql 应该是通用的吧。
1. 依靠索引列缩小扫描行数后再进行复杂查询
2. 查备库
136 天前
回复了 GuardX 创建的主题 数据库 关于存储选型问题
doris 好像也有过期
205 天前
回复了 gzk329 创建的主题 Java 接口返回错误码和 msg 的优劣势?
code: 方便排查问题,根据用户返回的 code 找到问题发生地
msg: 出现了问题,告知用户发生了什么以及如何解决
不仅通过闷头学和造轮子提升了技术、丰富了简历,还得了毕业礼包,这老哥头脑很清晰啊(手动狗头)
2022-11-01 14:12:31 +08:00
回复了 xiaoyaoking 创建的主题 Python Python 连接到 redis 时,cpu 占用 Unix 比 tcp 高出很多
unix 响应时间比 tcp 快,因此 python 脚本 cpu 利用率更高?
2022-09-08 10:10:04 +08:00
回复了 7911364440 创建的主题 Java 请教一个 Redis 过期时间的问题
提个醒 exists 命令在 4.0.11 以下版本的 redis 主从架构中是有 bug 的,详情请看: https://www.cnblogs.com/mysql-dba/p/15870868.html
2022-08-31 19:05:38 +08:00
回复了 yezheyu 创建的主题 程序员 请教一个高级语言中函数调用栈相关的问题
闭包其实挺好理解的,比如你有一个函数,会返回一个回调函数,这个回调函数中会持有一些自己的局部变量
function bar() {
return function() {
int tmp = 1;
print(tmp);
}
}
callback = bar();
callback();

你当然也可以不返回回调函数,而是返回一个 class,就像下面这样:
class C {
private int tmp;

public C(int tmp) {
this.tmp = tmp;
}

public callback() {
print(tmp);
}
}

function foo() C {
c = new C(1);
return C;
}
foo().callback();

达成的效果其实是一样的,返回的闭包函数其实就等价于一个带有私有属性和一个 method 的 class 。
2021-12-13 16:52:17 +08:00
回复了 kingofzihua 创建的主题 Linux 问一个协程方面的问题
1. 协程解决的问题
java 实现一个支持并发的 http server,最简单的方案可能就是拿到一个连接就创建一个线程来执行,即一个多线程的 server 。这个 server 连接数高了性能就会非常差,因为线程数会很高,线程切换开销比较大。

现在有个协程,因为协程开销比较小,你仍然可以用这个简单的思路去实现,即拿到一个连接就创建一个协程来执行。go 标准库中 http server 就是这么实现的,简单粗暴。在 go 中实际是封装了 epoll(linux 平台),由 runtime 调度协程跑在很少数量的线程上,实际上压根就不是原始的多线程方案了,应该是 epoll 方案,所以对于用户来说能以很简单的方式就能实现高性能并发,这就是协程解决的问题之一。
2021-09-17 18:45:29 +08:00
回复了 paranoiddemon 创建的主题 程序员 编译原理大家是怎么学习的?
网易云课堂有个视频: https://study.163.com/course/introduction/1002830012.htm ,可以跟着敲一遍代码应该就懂了,再回头看各种编译原理的理论就好懂了。by the way,前端学完了感觉就那么回事,无非就是一些算法,真正的星辰大海还是后端😄。
2021-09-09 18:39:13 +08:00
回复了 teliang 创建的主题 Java 记录一个诡异的线上宕机事故,大佬们帮忙排查一下问题呀
Navicat 和微服务查询同一条 SQL 时间差这么多 可能是有慢查询导致连接池满了,请求线程都在等连接。

还是上监控吧😄
2021-09-07 18:51:00 +08:00
回复了 flycloud 创建的主题 Go 编程语言 golang 内存回收的疑问
进到 swap 了?
2021-04-06 18:34:07 +08:00
回复了 zkdfbb 创建的主题 Go 编程语言 map 的一个神奇的问题
init 函数中 accessLog = Counter{data: make(map[string]int)}这句代码不是原子的吧,换成
accessLog.Lock()
accessLog.data = make(map[string]int)
accessLog.RUnlock()

试试呢?
2021-03-26 21:13:37 +08:00
回复了 RedBlackTree 创建的主题 程序员 请教大家关于多核并发编程中, cache 一致性的问题
4 楼正解。正好前段时间我也深入研究了这个问题,并且整理成了一篇博客: https://blog.fanscore.cn/p/34/ 楼主可以参考下,或许对你有帮助😄
2021-03-20 18:25:44 +08:00
回复了 xuletter2021 创建的主题 Go 编程语言 golang 协程读写上下文变量 一直为 0
@xuletter2021 确实结果一样,不过关闭优化前后打印汇编结果还是有区别的,虽然关闭优化后的 go 出来的函数中还是没有 x++对应的汇编代码(不太能理解的...)。

下面是我的猜测:

在 1.14 之前协程调度是出让式而非抢占式的,如果这段代码在单核机器上运行,就有可能陷入到 for {...}的死循环中而主协程中的代码得不到调度执行,而你 for 循环中加入了 fmt.Pxxx 类的代码就能够使子协程出让执行权。

另外这段代码还有可见性问题,子协程对全局变量的修改,主协程可能是看不到的。

基于上面两个问题的考虑,编译器做出了“错误”优化,导致了你所看到的结果。
2021-03-20 16:21:17 +08:00
回复了 xuletter2021 创建的主题 Go 编程语言 golang 协程读写上下文变量 一直为 0
你关闭优化跑一遍看看是不是出来了?😂
2021-03-08 23:04:20 +08:00
回复了 BinYang 创建的主题 Java 咨询一个 redis 穿透的问题,看看大佬有什么解决方案没有
7 楼回复应该是个很常见的设计,我司 redis 就分为缓存(不需要持久化,所有 key 都有过期时间)与持久化数据两种实例,楼主可以做个参考。如果麻烦的话,可以考虑该场景能否使用 bitmap 来做过滤
2021-01-14 18:51:15 +08:00
回复了 Orlion 创建的主题 汇编 Lock 指令到底有什么用?
@yzbythesea 感谢提醒,突然意识到了
2021-01-14 13:37:58 +08:00
回复了 Orlion 创建的主题 汇编 Lock 指令到底有什么用?
@yzbythesea CPU 操作 L3 cache 上同一个 cacheline 同一位置数据,不加 Lock 就不是原子的,这样理解吗?如果不加 Lock 也是原子的,那 CPU 没必要锁吧
1  2  
关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   2776 人在线   最高记录 6543   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 37ms · UTC 12:50 · PVG 20:50 · LAX 05:50 · JFK 08:50
Developed with CodeLauncher
♥ Do have faith in what you're doing.