V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  lmshl  ›  全部回复第 15 页 / 共 25 页
回复总数  481
1 ... 11  12  13  14  15  16  17  18  19  20 ... 25  
2022-08-15 15:12:56 +08:00
回复了 wjx0912 创建的主题 Vue.js vue 项目单步调试还是 console.log?
函数式风格的基本上 console.log 就够用了,读一遍以后脑子里就形成执行模式,然后在几个点位插入 console.log
命令式风格的得反复 debug ,盯着变量看,一不小心就被改飞了
2022-08-15 12:14:25 +08:00
回复了 maxthon 创建的主题 Node.js 多服务器实例下,怎么让不同请求的 backend 共享同一个 promise
在这个基础上再实现一个 fallback 机制,极端情况下,前一个 instance 凑巧被杀死了,后一个缓存里读不到 Promise 的时候还是需要走全流程
2022-08-15 12:12:42 +08:00
回复了 maxthon 创建的主题 Node.js 多服务器实例下,怎么让不同请求的 backend 共享同一个 promise
建议负载均衡层面根据 token 做 sticky session ,这样就能保证客户端短时间请求始终转发到同一个 instance 中去了。
内存里用 Map 简单缓存一下这个 Promise ,记得把时间也记录下来,定期清理掉过期的 Promise 防止泄漏
2022-08-15 11:58:11 +08:00
回复了 NoKey 创建的主题 程序员 请教:数据库表达类型,用字符串还是数字
懂了,结论:别用垃圾 mysql 。
起码 postgresql 的 enum 只要不改顺序,新增类型都是瞬间完成的。
2022-08-15 11:44:17 +08:00
回复了 NoKey 创建的主题 程序员 请教:数据库表达类型,用字符串还是数字
mysql / postgresql 都原生支持 enum type ,可以结贴了吧
2022-08-15 11:26:56 +08:00
回复了 qwer666df 创建的主题 Java Java 读取数据库里有 50w 条网络图片记录然后下载到本地
1. 选一个 reactive stream 库(比如 akka-stream )
2. 数据源(例如 jdbc )包装为 stream source (一般 reactive stream 已经有包装好的)
3. 在 mapAsync(parallelism = <根据你的网络与综合性能设定的并行度>) 中实现你的 http download (推荐 akka-http ) 逻辑
4. 把它润起来

优点是不需要管理线程池,全程异步,如果网速不快的话,那 CPU 会很低。如果网速足够快,CPU 也不会浪费在无意义的上下文切换
2022-08-14 16:21:18 +08:00
回复了 ershierdu 创建的主题 程序员 请教一个后端缓存一致性的问题
分布式系统的严格一致性是很难保证的,因为你不可能全局开锁,把更新操作都串行化。
唯一低成本的实现方式是超短 TTL ,比如如果业务允许的前提下,TTL 设置到 10 秒,甚至 5 秒或更短。这样依然可以大幅度减少频繁的重复请求。
2022-08-12 11:01:47 +08:00
回复了 iblessyou 创建的主题 数据库 怎么对比 postgres 数据库数据变化
write-ahead log ,按事务给你分割好了都变更了什么
2022-08-11 18:56:05 +08:00
回复了 andyJado 创建的主题 程序员 我写了一个递归函数, 能精准预防栈溢出吗?
@andyJado llvm 能把非尾递归优化成尾递归也吓到我了。
当然实际应用中更建议手动写成尾递归形式,以保证 llvm 在任何优化下都可以生成迭代指令
毕竟过于复杂的非尾递归循环,谁也不敢保证编译器是否认得出来
2022-08-11 16:08:24 +08:00
回复了 andyJado 创建的主题 程序员 我写了一个递归函数, 能精准预防栈溢出吗?
https://i.imgur.com/cEKgX24.png
从汇编结果看,对于你这个函数,O2 级别的优化足以替换成尾递归(迭代)实现了。
你可以手动改成尾递归,让它在任何优化下都能正常工作,或者甩手交给编译器去做
2022-08-11 15:58:54 +08:00
回复了 fox0001 创建的主题 Java [请教]Spring Boot 使用 Redis,缓存集合数据的疑问
我选方案 5 ,把国家列表缓存到内存中,性能起码吊打 Redis 100 条街
2022-08-07 22:11:20 +08:00
回复了 kongkongye 创建的主题 程序员 吐槽下,学会啥技术能涨工资?
@xiandao7997 上海一家小公司,写 Scala


@closedevice 1Point3Acres ,俗称一亩三分地,听别人说过,但我没注册过,据说是海外高华凡尔赛的地方。
2022-08-07 18:41:56 +08:00
回复了 kongkongye 创建的主题 程序员 吐槽下,学会啥技术能涨工资?
@cwaken 2012 年大专毕业,2015 年一个月到手 x ,修炼完这两本书后 2016 年跳槽就有 4*x offer 了,去年已经到手 10*x ,一年 14 薪。

和风口浪尖上的大厂人没法比,可能应届批发价都比我工作十年还高。但能十倍增长,这两本书对我助力不小。
2022-08-07 11:15:02 +08:00
回复了 kongkongye 创建的主题 程序员 吐槽下,学会啥技术能涨工资?
初级开发可以看《 SICP 》+《组合数学》这两本书,技术栈走函数式编程,曾助我薪资翻 10 倍。

但考虑到时代背景,今天入门不一定能给我这个大专一口饭吃。所以建议眼光多看看海外机会,学好英语 + 函数式编程,这是一条非常宽松的赛道,国内卷王们瞧不上,收入也很高。
2022-08-03 15:38:00 +08:00
回复了 cpalead 创建的主题 Java Java switch 为什么比 for 循环快?
不考虑 JIT 介入的前提下:

# for of
1. 循环 Array 会带来检查数组边界的开销,每次访问元素都要 check condition
2. getCameraType 是函数,函数需要跳转过去,再跳转回来
3. 发生了额外的三次内存访问,a) 堆获取枚举静态数组, b) 根据数组下标访问枚举对象引用, c) 根据对象引用访问堆内存地址取属性

# switch
而 switch 只有简简单单的 compare 和 jump ,高下立判

不是很懂 jvm ,仅根据操作系统印象胡诌几句
2022-08-02 18:58:22 +08:00
回复了 coderstory 创建的主题 Java Java 8 的 stream 常规操作导致线程卡死
还能接着缩,逻辑依然等价
https://i.imgur.com/sRL3VA6.png
2022-08-02 18:49:20 +08:00
回复了 coderstory 创建的主题 Java Java 8 的 stream 常规操作导致线程卡死
梳理了一遍依赖以后发现中间没必要 groupingBy ,代码可以再缩减到这程度。如果想再精简的话就得结合业务功能分析了,我估计结合业务还能砍掉 3-5 行,如果换成 Scala 大概 5-10 行就写完了。
https://i.imgur.com/0J5Xt7j.png
2022-08-02 17:53:10 +08:00
回复了 coderstory 创建的主题 Java Java 8 的 stream 常规操作导致线程卡死
@pocketz Idea New UI ,配色是 New Dark ,字体是 Fire Code
2022-08-02 11:36:18 +08:00
回复了 coderstory 创建的主题 Java Java 8 的 stream 常规操作导致线程卡死
2022-08-02 11:32:05 +08:00
回复了 coderstory 创建的主题 Java Java 8 的 stream 常规操作导致线程卡死
先帮你等价替换一版,Stream API 其实写起来很漂亮的,只要改换一下思路就好了。
https://i.imgur.com/YqUnElB.png
1 ... 11  12  13  14  15  16  17  18  19  20 ... 25  
关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   5617 人在线   最高记录 6679   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 25ms · UTC 03:38 · PVG 11:38 · LAX 19:38 · JFK 22:38
Developed with CodeLauncher
♥ Do have faith in what you're doing.