V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  msg7086  ›  全部回复第 128 页 / 共 1022 页
回复总数  20422
1 ... 124  125  126  127  128  129  130  131  132  133 ... 1022  
所以你说的是数据库物理外键还是说框架里的逻辑外键?

我觉得逻辑外键要有,但是物理外键还是算了吧。
物理外键删数据的时候连 hook 都不会走,天知道会漏跑什么东西。
N+1,项目初期,或者量小的时候,可以不用优化。
但是数据量大了,开始针对热点优化的时候,还不知道去改,那是真的不应该。
当然,有些坑不亲自跳一次是不知道的,这些人可能就是经验太少,没跳过这坑,你只要不提他们就根本不知道要这么做。
@programV2 就算用 dist-upgrade 也得先改软件源啊。
dist-upgrade 和 upgrade 的区别只在于出现冲突时的处理方法而已。
然后不同版本之间的升级最好使用官方支持的方式,比如说 16 到 20 需要先升到 18 再升到 20 。
更新没问题,升级不行。

发行版里的「稳定版」,指的就是版本稳定,保证兼容。你从 7.0 一路升级到 7.9,基本可以保证所有的软件都能正常运行。但是你从 7.9 升到 8.0,那就等于是推倒重来了,你所有的软件都应该针对新版本做测试和适配。

Ubuntu 和 Debian 都可以升级。如果你不改软件源里的版本,那你就一直待在原来的版本上,这时候 upgrade 是没问题的,只会修复 Bug 和安全问题。如果你改了版本,再 upgrade,那就是升级系统版本了。
2021-09-04 13:10:35 +08:00
回复了 liuidetmks 创建的主题 git .git objects 为什么要取前两个 字母作为文件夹再添加?
才几千文件问题不大,可做可不做。如果是几十万几百万,那肯定是分开存放速度更快。

当然了,如果你用 Reiser 文件系统的话,倒是不一定要这么做,Reiser 家族处理大量文件性能挺好的。
2021-09-04 13:06:28 +08:00
回复了 Yc1992 创建的主题 C++ 请教 cmake 中如何兼容不同的编译环境
https://cmake.org/cmake/help/latest/command/find_library.html
https://cmake.org/cmake/help/latest/command/find_package.html
这两个吗?正常途径安装的应该都能找到的,不需要自己写路径。
2021-09-04 13:01:07 +08:00
回复了 rainboat 创建的主题 Linux 安装 centos7 直接黑屏
装老系统就用老电脑啊。
帮你搜了一下,你的集显需要 5.9 内核,这是去年才发布的。
你要装的 CentOS 7,2014 年发布的……

要装企业级操作系统,还是建议用人家认证过的工作站或者服务器。
你随便组一台电脑来,有兼容性问题,谁管你啊……
2021-09-03 03:06:01 +08:00
回复了 huntagain2008 创建的主题 问与答 买个移动机械硬盘对小白就这么难吗?
二手翻新盘,用两个月以后报废,数据全丢光,原来这叫不折腾啊。

又不是天天要大量读写的,SMR 又不是不能用。
你是打算在盘上跑高性能数据库还是做 4K 视频剪辑啊。
2021-09-03 03:03:16 +08:00
回复了 hutng 创建的主题 硬件 Intel 即将发布的大小核 CPU,各位怎么看
小核心不就是为了省电低功耗吗?包括现在一直在追求的新制程也是为了省电低功耗。

现在同样的 CPU 用 45nm 也能做呢,给你整个 16 核的,待机 300W,玩游戏 1000W,散热也只需要几台制冷机就能压在 120 度以内,这 CPU 你用吗?反正是 220V 市电呢(笑
2021-09-03 02:21:11 +08:00
回复了 yuann72 创建的主题 git 你们在用 git 合并时但不担心自己操作失误把代码弄丢?
@yuann72 #12


就算不用 Git 也会出 bug 呢,这管 Git 啥事。
一个人改了文件 A,另一个人改了文件 B,你怎么知道这两个文件分别改完以后程序能正常运行?

至于这个帖子里的问题:
如果你提交记录里 A2 和 B 有冲突的话,那么 A2 和 B 是不能随便交换位置的。
换句话说,交换 A2 和 B 是需要手动处理的。
所以如果这个操作我来做的话,会是

1. 在 A1 上新建一个分支 tmp 。
2. 把 A2 cherry pick 到 tmp 上,然后解决冲突。
3. 把 A1 和 A2 squash 成 A 。
4. 把 B cherry pick 到 tmp 上,然后解决冲突。
5. 把 C cherry pick 到 tmp 上。
6. 把原来的分支指向 C 。
这样得到一个 A-B-C 。这么操作应该是最稳妥的方案了。

然后关于在还没有提交的时候去 Rebase 的问题:

不!要!这!么!做!

Rebase 是在提交链上的操作。处理提交链的时候本地文件夹是要清空的。
(其实不需要完全清空,无冲突 untracked 文件可以保留,但是很多 Git 软件为了安全,是要完全清空的。)
当你点击 Rebase 按钮的时候,其实就是在告诉 Git,

清空我本地的文件夹,以便修改提交,做 Rebase 。

所以你修改的文件当然会消失掉,因为他们被自动 Stash 了。
然后如果 Rebase 出现了任何问题,Stash 就不会被自动 pop 。
另外 Stash pop 的时候也可能出现问题。
这些时候都要手动 Stash apply 并修复潜在的问题。

但是这种操作是很容易出错的,如果没有特殊需求,还是建议先 commit 成提交,永久写入 Git 数据库,然后再做 Rebase 之类的操作。然后可以像解决问题 1 里我提到的方法一样,建一个 tmp 分支来操作,操作完以后再把分支切过去。
临时 commit 在操作完以后还可以 undo 回 staged (相当于 reset soft HEAD~1 ),所以这个操作是没有副作用的。
2021-09-02 00:27:36 +08:00
回复了 dcsuibian 创建的主题 硬件 Shield TV 还是攒钱上 HTPC?
> 这么简简单单的需求,这几年变得越来越难。

越来越难不至于,撑死也就和十五年前差不多吧。B 站还没建站的时候大家不都这么看片。一个 HTPC 配一个 BT 下载的机器就足够了。
2021-09-02 00:18:03 +08:00
回复了 TimeLover 创建的主题 硬件 怎么用满 64G 内存?
系统本来就会给你用满,什么都不用做。
我 128G 内存大概有 100G 被系统用来做硬盘缓存,读写文件都是走内存。
2021-08-30 04:30:55 +08:00
回复了 KomiSans 创建的主题 程序员 关于 fish shell 的一个误操作坑
这个是真的不应该,ssh 的时候直接调用 bash 就行了,又不是非得启动默认 Shell 。
别的钱包助记词不清楚,只看过 Chia 钱包的助记词。
助记词本质上只是二进制的映射,所以猜助记词就等于猜二进制。
猜二进制一般不需要限制失败尝试,反正空间足够大,给你一百年看看你能不能猜出一个来。
2021-08-28 05:24:30 +08:00
回复了 tu8ge 创建的主题 程序员 请问如何做到每个用户一个独立的 raid1?
0. RAID1 不是备份而是高可用。
1. 你这种需求的话,买的其实是机房地产。每个硬盘口是要折算到房租和电价的。这和实现方法没什么太大关系。
2. 光看实现方法的话,按照 SSD 来算,2U 一般最多也就 48 盘( SuperStorage 2028R-E1CR48L ),可以做 24 个 RAID1,一般的专业阵列卡应该都能做,比如 LSI SAS 9341-8i 就支持 64 盘组成 32 个阵列。
3. 硬件 RAID 实在不行的话也可以用便宜的 HBA 来接盘,然后做 Linux MD 软 RAID1,性能也不差的。
2021-08-28 05:01:50 +08:00
回复了 James369 创建的主题 程序员 一个新的 CPU 架构会对上层产生多大的影响?
如果都是用比较高级的语言写的,重新编译下倒也不是大问题。

很多用汇编写的软件就跑不起来了,要重写指令集。最典型的就是很多运算密集型软件,比如 ffmpeg 全家桶,你只能放弃掉汇编的部分,纯靠编译器来优化,速度天差地别。
1 ... 124  125  126  127  128  129  130  131  132  133 ... 1022  
关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1423 人在线   最高记录 6679   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 87ms · UTC 17:30 · PVG 01:30 · LAX 09:30 · JFK 12:30
Developed with CodeLauncher
♥ Do have faith in what you're doing.