V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  LeegoYih  ›  全部回复第 41 页 / 共 41 页
回复总数  815
1 ... 32  33  34  35  36  37  38  39  40  41  
2022-04-28 17:40:35 +08:00
回复了 season8 创建的主题 程序员 学习 Vert.x 的一些疑惑
vert.x 和 Kotlin 一起用还挺香的,写过一个用户积分同步的服务,但是真的不适合复杂业务开发。
2022-04-28 17:15:54 +08:00
回复了 1000copy 创建的主题 程序员 大家工作用 2 个显示器的多吗?
后端开发,2 个显示器,一个主屏幕,另一个竖屏。
2022-04-28 17:13:26 +08:00
回复了 lipaa 创建的主题 MySQL 一段 sql 比较
如果一定要写成一个 SQL 的话,可以用 union all ,不会影响性能。

select * from t
where any = ?
and data_his_id in (
select 0
union all
select id from xx where business_type = 1 and states = 2 and audit_status = 2);
2022-04-28 17:06:59 +08:00
回复了 xiaoluoboding 创建的主题 分享创造 bookmark.style: 你的链接有了新的样式
👍🏻
2022-04-28 17:03:59 +08:00
回复了 lipaa 创建的主题 MySQL 一段 sql 比较
如果条件允许的话,我建议是拆成 2 个 SQL:
1:select id from xx where business_type = 1 and states = 2 and audit_status = 2;
2:select * from t where any = ? and data_his_id in (ids);

第 1 个 SQL 执行完后,通过代码往结果里塞一个'0',然后再执行第二个 SQL 。


不确定这个是最高效的,建议在仿真环境看看每个 SQL 的执行计划:

```sql
set optimizer_trace="enabled=on";
select * from xxx where xx = ?;
select * from information_schema.optimizer_trace;
set optimizer_trace="enabled=off";
```
DataGrip ,如果你用企业版 idea 、GoLand 、PyCharm 的可以直接用内置集成的
2022-04-24 15:47:52 +08:00
回复了 vevlins 创建的主题 程序员 你可以写在简介中的终身成就吗?
资深 Bug 专家
帮助公司从全球 500 走向白手弃家
2022-04-13 11:22:44 +08:00
回复了 Rrrrrr 创建的主题 奇思妙想 能实现一种可以联系到任何人的应用吗?
双十一淘宝活动
2022-04-12 23:41:07 +08:00
回复了 rv54ntjwfm3ug8 创建的主题 程序员 编程语言会给它的发明者带来哪些利益?
35 岁之后不会被裁员
支持
2022-04-09 19:10:01 +08:00
回复了 lsk569937453 创建的主题 程序员 如何快速向文件中写入 1 亿个 ip?
用 bitmap ,ip 转 int 当索引,存在设置为 1 ,不存在就是 0 ,然后序列化就行。
2022-04-08 09:50:24 +08:00
回复了 Stefango 创建的主题 JavaScript .map(window.open) 和 .map((one)=>window.open(one)) 的区别是啥?
map 的参数是方法的引用,简单的说就是 map 需要传入一个方法。
map((one)=>window.open(one)),实际上是传了个匿名函数,匿名函数也称 lambda 表达式。

第一种方法等价于 map((a,b,c)=>window.open(a,b,c)),TS 编译不通过因为 map 需要函数的出入参类型与 window.open 提供的不匹配,实际上静态语言都如此。JS 中这 2 种都能用是因为它不校验出入参类型和参数数量。

PS:这里应该用 forEach ,map 不太合适
适合非结构化的数据库,MongoDB 之类的
2022-04-06 14:32:01 +08:00
回复了 Ds97 创建的主题 程序员 验证短信码被盗刷怎么办
滑动验证码很容易被破解的,结合图形验证码可解决。

用 redis 的 zset 滑动窗口。
1. 每成功发送一条验证码,用 zadd 加一条时间戳。
2. 获取验证码前,判断缓存中是否存在图形验证码的标识,如果是,则返回图形验证码。
3. 发送短信前,用 zcount 统计 x 分钟内发送次数,如果超过 ${interval_threshold} 阈值,redis 中新增 global_captcha_type=graphic ,设置超时时间 y 小时,y 小时后自动切换回滑动验证码。

至于换 ip 也可以解决,使用 redis 的 bitmap 实现一个黑名单,发现一个让运维手动加进去,他总会用完的。
2022-04-06 10:03:16 +08:00
回复了 Ds97 创建的主题 程序员 验证短信码被盗刷怎么办
监控到异常情况时,把滑块验证切换到图形验证码,弄个复杂一点的验证码,基本上可以解决
1 ... 32  33  34  35  36  37  38  39  40  41  
关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1120 人在线   最高记录 6679   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 121ms · UTC 23:36 · PVG 07:36 · LAX 15:36 · JFK 18:36
Developed with CodeLauncher
♥ Do have faith in what you're doing.