V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  kidlj  ›  全部回复第 7 页 / 共 56 页
回复总数  1107
1 ... 3  4  5  6  7  8  9  10  11  12 ... 56  
2022-10-20 10:11:28 +08:00
回复了 kidlj 创建的主题 分享创造 一种新的书签管理方式 —— 全文搜索
@masker 据我所知,notion 只能搜索文章第一段(文章预览)哦,MetWord 支持搜索全文的,而且像 V2EX 帖子,GitHub issues 评论或者 Hacker News 评论页面都可以正确索引的。
@safeall 有个别网站设置了 media-src csp ,不允许从第三方网站加载媒体,而且无法绕过。
@sankemao 好的,可以考虑,再收集下更多用户反馈。
2022-10-15 11:57:48 +08:00
回复了 tw93 创建的主题 分享创造 🤱🏻 用 Rust 打包了一个才 1.8M 的微信读书 Mac App
感谢作者,我个人很喜欢。
2022-10-08 10:06:06 +08:00
回复了 zhengchengdong 创建的主题 分享创造 做了一个 go 语言实现的简化应用开发的框架
很不错,star 了,有机会学习下源码。
不会。下次再提 PR 的时候接着用。
Zabbix
2022-09-07 17:35:15 +08:00
回复了 prodeity 创建的主题 音乐 为什么美区的 spotify 的连接速度比国区 apple music 还快?
Apple Music: 正在同步云端资料库 — forever
2022-09-06 17:46:02 +08:00
回复了 wloverine 创建的主题 macOS mac 有好用的终端管理工具吗
/etc/hosts + ~/.ssh/config
2022-08-19 21:52:40 +08:00
回复了 mitu9527 创建的主题 程序员 数据库与缓存的一致性问题的两个疑问
如果你指的“灾难性”是指 Kafka 挂掉以后缓存过期的实效性的话,可以适当缩短缓存的存活时间,让它自动快速过期。
2022-08-19 21:49:23 +08:00
回复了 mitu9527 创建的主题 程序员 数据库与缓存的一致性问题的两个疑问
@mitu9527 多立即删除这一次就像是心理安慰,没大用处。Kafka 集群挂了,未消费并 commit 的消息是持久化的,集群恢复以后消息还在,有什么好怕的。
2022-08-19 21:31:06 +08:00
回复了 mitu9527 创建的主题 程序员 数据库与缓存的一致性问题的两个疑问
@mitu9527 不需要立即删除,可以完全避免掉双写的。异步消息几乎是实时的,而且是可重试的,采用 kafka consumer group 还可以多重订阅一个消息。

当然,采用这种方案会带来架构的改变和额外的维护成本。不过我个人的实践来看,这种架构非常灵活,省去了一些传统上需要用分布式事务或者双写带来的复杂性,维护一套 Kafka + connector 还是值得的。
2022-08-19 21:09:47 +08:00
回复了 mitu9527 创建的主题 程序员 数据库与缓存的一致性问题的两个疑问
Friends don't let friends do dual writes.

更新完数据库紧接着更新缓存或者写入消息队列,这就是双写或者多写,总会有第一步成功了下一步失败的概率(比如网络抖动等原因),这时候就会造成数据不一致。

我个人的项目实践了一种事件驱动的异步架构,也就是 CDC ( change data capture )架构,选型上使用的是 Debezium + Kafka connector ,当然 Java 生态的也可以用 Canal 替换 Debezium 。简单来说 Debezium 的工作就是监听数据库的写入变更( pg 的 wal log 或 mysql 的 bin log ),为每条变更记录生成一条 Kafka message (包含变更记录的主键 id 等其他字段信息),通过 Kafka connector 自动写入到一个数据库表对应的 Kafka Topic 。采用这种架构处理缓存过期就很简单了。业务端只要更新数据库就可以,(避免了双写的问题),更新缓存的逻辑起一个线程或 goroutine 监听这个表对应的 Kafka topic ,拿到消息以后解析出主键 id ,然后 purge 掉对应记录的缓存。如果消费了这条消息以后 purge 缓存失败怎么办?有这种可能的。Kafka 的 message 有 commit 机制,purge 失败可以一直重试,当成功了以后再 commit 消息。虽然这种架构是异步的,不过得益于 Kafka 的良好吞吐性能,几乎可以做到 real-time 的使用体验。
2022-08-16 10:39:41 +08:00
回复了 ulyc 创建的主题 分享发现 分享一个代码托管平台, sourcehut
真棒!感谢分享。
先在 goroutine 里启动任务,然后 Echo 启动不成功直接 panic.
2022-08-13 21:58:10 +08:00
回复了 zhouxinhao 创建的主题 新手求助 brave browser
> 请在标题中描述内容要点。如果一件事情在标题的长度内就已经可以说清楚,那就没有必要写正文了。
2022-08-10 16:07:23 +08:00
回复了 zhouchijian 创建的主题 MacBook Pro 日经贴: 32G 和 16G
@zhouchijian vscode + Xcode 开发 app 😄

vscode 主要 remote 到 linux 笔记本不怎么吃内存( docker 也跑在 Linux 上),就是 Xcode 模拟器一开 swap 会用很多,这时候有一点儿小卡。其它时候很丝滑。
2022-08-10 15:35:41 +08:00
回复了 zhouchijian 创建的主题 MacBook Pro 日经贴: 32G 和 16G
这么说吧,过几年你出掉这个机器 16G 怕是不太好出(然而我个人用着 8G 的 M1 iMac 不亦乐乎)
好棒,支持这么多扩展不容易!占个楼,没选上也会购买。
2022-07-23 23:09:22 +08:00
回复了 winRain 创建的主题 Go 编程语言 golang 用 & 返回对象和直接返回对象有啥区别?
变量自动取地址和指针自动解引用是在方法的*调用*阶段,为了方便所以加了这样的语法糖。
而案例中 return 值到 interface 变量,是在方法的*定义*阶段,可能这时候不让具体类型变量满足指针 receiver 的 interface ,为了强调吧。当然假如不是这种设计,像 op 期待的那样,返回值是具体类型,自动取地址以满足指针 recieve 的 interface ,实现上应该也是可以的,只不过设计者没有做这种选择。我个人还是觉得就是为了在方法的*定义*阶段强调返回值的正确性吧。

Anyway ,暴露指针而不是采用引用类型,可能是 Go 的缺点之一吧。(如果采用引用类型又可能会带来什么问题,我没有了解)。
1 ... 3  4  5  6  7  8  9  10  11  12 ... 56  
关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   941 人在线   最高记录 6679   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 33ms · UTC 21:05 · PVG 05:05 · LAX 13:05 · JFK 16:05
Developed with CodeLauncher
♥ Do have faith in what you're doing.