V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  vvtf  ›  全部回复第 2 页 / 共 2 页
回复总数  30
1  2  
2022-08-11 10:10:40 +08:00
回复了 leiuu 创建的主题 程序员 maven 使用体验很痛苦
gradle 和 npm 的包管理是我见过最恶心的.只讨论包管理.
2022-08-05 09:10:52 +08:00
回复了 shadow1949 创建的主题 程序员 SQL 苦手来请教各位大佬了。
# 5 天, 因为去掉周末, 所以倒推 7 天, 10 天倒推 14 天
select
avg(num)
from table_name
where `date`>date_sub({someday},interval 7 day)
and `date`<={someday} and weekday(`date`)<5;

# 10 天
select
avg(num)
from table_name
where `date`>date_sub({someday},interval 14 day)
and `date`<={someday} and weekday(`date`)<5;
2022-07-19 16:21:04 +08:00
回复了 zhijiansha 创建的主题 Java 如何在 spring boot 中实现对一个数据对象的流式处理?
```java

interface Rule<T extends S> {

T run(T... args);

default boolean enabled() {
return true;
}

default boolean async() {
return false;
}

}

@Order(0)
@Component
class RuleA implements Rule<SomeA> {

T run(T... args) {
// TODO
}

boolean async() {return true;}

}

@Component
class RuleChain {
@Autowired
private List<Rule> rules;

static ExecutorService pool = xxxx;

public void run(T... args) {

rules.stream().filter(Rule::enabled).filter(Rule::async).forEach(rule -> pool.execute(rule.run()););
rules.stream().filter(Rule::enabled).filter(rule -> !rule.async()).forEach(Rule::run);

}

}

```
我一直用 eclipse,
目前的工作机器是 8c32g 的,
eclipse 一个工作空间共有项目 82 个;(单模块,多模块,web 项目,flink 等);内存占用 4.5g;
使用起来完全流畅;
2022-07-14 10:28:17 +08:00
回复了 BigMikey 创建的主题 Android Android wechat 到底想干啥?!在后台 CPU 占用到 156%
@FaneLau 我还是 7.0.21.
2022-07-14 10:23:40 +08:00
回复了 SilenceLL 创建的主题 程序员 请教一下此场景下的数据如何存储和计算
我觉得修改历史数据不能直接修改那一刻的数据, 而是根据一个算法在最后增加一个和当前逻辑一样的变更数据;
就如 git 一样;
比如以前的数据是:
时间 /对象 /操作(依赖上一条)/结果
220701/A/+1/1
220702/A/+1/2
220703/A/-3/-1

那么现在是需要把
220701/A/+1/1
这一条数据改成
220701/A/+2/2
其实可以理解成是增加了 1
可以在后面增加一个
220704/A/+1/0
因为最后的节点是
220703/A/-3/-1
所有算出来结构是+1/0

大概思路是这样, 比如要聚合的话也可以做到;
这样做的好处历史可追溯;且不可变;
坏处是需要看业务需求是否满足;
比如我在 220704 查询 220702 的数据, 是返回 2, 还是返回 3,(+1).

如上.
**后续还需要根据这 N 个字符串快速得到位置**
这句话看不懂, 找到位置有啥意义? 位置放的也是字符串....
不过你的字面需求可以用一下代码试试:

int index = 0;
map<string, int> map;
string[] arr;
for ( str : strings) {
string key = md5(str);
int val = map.putIfAbsent(key, index);
if (null != val) {
continue;
}
arr[index ++] = str;
}


// get index by string
return map.get(md5(str));
2022-07-11 15:28:28 +08:00
回复了 makeitwork 创建的主题 数据库 没想到 clickhouse 这么牛逼,比 es 强太多了,搞 quant 适合吗
1. ck 对硬件有要求;内存要求高;
2. 集群副本的话数据量太大 zk 又是一个炸弹; (推荐单节点 zk;)
3. qps 不会很高;
4. 不支持事务;不支持更新删除;(虽然有 update 和 delete 的 dml, 但是这个 ck 离线处理的;)
但是做 olap 报表分析确实不错;
2022-07-04 13:05:51 +08:00
回复了 helee9199 创建的主题 Java 请教一下大佬.我们这个情况应该如何设计
@helee9199 不需要 copy 了再调整,
调整的东西分 2 种:
1. 核心通用调整, 比如是 X 里面某个核心功能有 bug, 这时修改 X 即可, 然后 A 的依赖版本修改一下;
2. 定制化调整, 比如 A 的某个表多一个字段, 只需改 A 即可;
其实你也可以理解成上面 @tramm 所说的.
A 或者 B 其实就是一个插件, 默认是在 X 里面实现的.
A 或者 B 可以重写或者替换;
2022-07-01 17:56:36 +08:00
回复了 helee9199 创建的主题 Java 请教一下大佬.我们这个情况应该如何设计
我们是 X 是通用的; 有一个额外的组件是基于 jsr269 实现可以函数级别的定制化;
A 是基于 X 的, 也就是 dependency X 的. 所以如果 A 需要修改某个功能就修改某个函数即可; 不会修改 X; 增加功能也只需在 A 的项目里增加;
如果 X 出现 bug 了修改了 X 的代码, 再在 A 里面修改一下依赖即可;
这样每个项目的个性需求都是独立的没有影响;
1  2  
关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2914 人在线   最高记录 6679   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 19ms · UTC 03:23 · PVG 11:23 · LAX 20:23 · JFK 23:23
Developed with CodeLauncher
♥ Do have faith in what you're doing.