CRVV 最近的时间轴更新
CRVV

CRVV

V2EX 第 79825 号会员,加入于 2014-11-02 20:41:57 +08:00
今日活跃度排名 4882
卖两个青轴机械键盘, Cherry G80-3000, Filco Minila 67
二手交易  •  CRVV  •  2017-02-06 20:07:05 PM  •  最后回复来自 CRVV
4
卖台 PS3, 送 6 个游戏, 一共 700
二手交易  •  CRVV  •  2017-02-05 20:09:34 PM  •  最后回复来自 YORYOR
8
测试 135
沙盒  •  CRVV  •  2016-11-06 20:22:09 PM
CRVV 最近回复了
shell 里面 0 是真,其它是假。
没用过 CircleCI,也许是这个问题吧
1. 楼主可以自己试一下
CREATE TABLE test (id, int, x int);
INSERT INTO test SELECT 1, 100000;
然后在多个线程上执行 UPDATE test SET x = x - 1 WHERE id = 1;
自己统计一下执行的次数和最后 x 的值。
这个才是所谓的超卖问题,和有没有减到 0 无关。

2. 可以通过修改事务的 isolation level 来解决这个问题,即使在多个线程上执行 x--,最后的结果也是对的。
这才是通过数据库来解决这个问题的方法。

3. 当然了,没有面试官会期望得到 2 里说的这个回答。
4 天前
回复了 sherlock1122 创建的主题 Linux 测试了一下 btrfs 和 zfs
btrfs 的 online dedup 从来都没有合并过,换句话说就没这个功能。
压缩率是由算法决定的,和文件系统没关系。你测出来没压缩率那显然是没配置对。

btrfs 可以把文件系统建好了再加硬盘上去,更改 raid 之类的,这些操作都不影响正常使用文件系统。zfs 不支持这个。
这是我用 btrfs 的最主要原因。
7 天前
回复了 HeapOverflow 创建的主题 职场话题 滴滴面试完被秒拒
@cctrv

1. 进程不是进城

2. 进程和线程有什么区别,这的确不是一个好问题。
这个问题差在这两个东西不应该拿来并列比较,比如你可以问牛奶和豆浆有什么差别,但进程和线程不属于这种可并列的关系。
就好像问整列的火车和单个的车厢有什么区别,这个问题本身就很奇怪。但是,如果一个人答不上来这个问题,估计他从来没见过火车。
回到线程的问题上,如果答不上线程和进程的区别,我会觉得这个人不应该拿计算机专业的本科毕业证,因为他完全没学过操作系统这门课。
> 所以 event-driven 、nonblocking I/O 只是实现了收银员的非阻塞而已吗?
对的。
直接看这个名词,non-blocking I/O,是说 I/O 的,假设你在挖矿,出一个块需要 1 个小时,I/O 的时间可以忽略,要怎么做 I/O 根本就是无关紧要的事情。
I/O 只是收钱和送餐这种事情,后面的计算任务相当于厨师。

> 想要更快地为顾客提供咖啡,最后还是需要请很多很多的厨师?
对的。
但是在计算机里面,不存在“请很多厨师”这个操作。因为 CPU 是通用的,相当于你一共有 100 个员工,安排更多人去收银的话,厨师就少了,所以提高了收银的效率,做饭也会更快。
假设你在挖矿,当然是分配 99.99 个人去做饭,做好了让那 0.01 个人去送餐就行。

> 那么对于 HAProxy 或 Nginx 来说,它们的处理方式也是类似这样吗?
对,也是这样。
这个东西是个代理,它不做计算任务,它的主业就是 I/O 。
相当于外卖平台,它的工作仅限于收钱和送餐。
只要考虑用最少的资源送好餐就行,请多少厨师和它没关系。
36 天前
回复了 iseki 创建的主题 NoSQL 为什么你们要把 sql 当 nosql 用?
原因之一是关系型数据库本身更可靠或者性能更好。

比如性能比较。当然这公司是搞 PostgreSQL 的,结果可能有偏差。
https://www.enterprisedb.com/blog/comparison-mongodb-vs-postgresql

PostgreSQL 更可靠应该没什么悬念。
36 天前
回复了 5bb864e1fc775087 创建的主题 美酒与美食 纯小白怎么入门烹饪
1. 认不清各种蔬菜

去超市买,都写着的

2. 摘菜不知道怎么摘

有些明显看着不好的当然直接扔掉。
其它的你可以直接都留下来,如果是本来应该扔掉的东西应该可以尝出来(可能会咬不动,比如用手掰不断的蒜苔通常也咬不动)。

3. 洗菜各种乱洗,洗干净没有自己也不清楚

饭店几乎不洗的,你随便洗洗把虫冲掉,已经比饭店干净了(包括不少大饭店)。
另外洗碗机也可以用来洗菜。

4. 切食材勉勉强强,切的有长有短有粗有细,不至于影响口感所以无所谓

这个无所谓,天天做饭,做个几年就能切好了。

5. 试过煎鸡蛋,煎肉排,不清楚加多少油,不清楚要开多大火,不清楚何时能翻面,不清楚肉熟没熟能不能起锅了。

蛋和肉排本来就有不同的熟度,生一点熟一点都没错,合自己口味就行,如果不合下次就延长 /缩短时间。
肉只要不带血色就可以算是熟的,但也有人觉得这样太生要炒老一点。比如白切鸡应该是骨头里带血的,但很多人吃到白切鸡说这玩意不熟。我要表达的意思是,如果你已经把肉炒焦了一次,那下次可以时间稍微短一点,估计就不会焦了。至于到底炒到什么程度算刚好,只有你自己知道。

至于要加多少油,如果用不粘锅就可以少一点,如果是普通的铁锅就需要的多一点。只要不把东西粘到锅上就算可以吧,但这个也看技术的,用普通的铁锅,放很少的油,在恰好的温度放料,也可以做到不粘,如果做不到就稍微多放一点油。如果你想做那种一碗菜半碗油风格的,油直接使劲放就好了。
45 天前
回复了 AceCandy 创建的主题 程序员 问一个关于无锁编程的问题
lock-free 的算法需要用到 cas,但不是说用到了 cas 就是 lock-free
比如用 cas 来实现 counter 就是 lock-free,但用 cas 实现的自旋锁就不是 lock-free

具体的定义在 wiki 里面有写 https://en.wikipedia.org/wiki/Non-blocking_algorithm
A non-blocking algorithm is lock-free if there is guaranteed system-wide progress, and wait-free if there is also guaranteed per-thread progress.

比如一共有 10 个线程,有一个线程在拿着锁的情况下被停了下来,其它的线程也拿不到这个锁,整个系统就停了。
避免这种情况出现的算法叫 lock-free
1. 发 HTTP 请求不需要用多进程
2. 如果在乎性能,请用 requests.session
3. 如果单线程顺序发请求不够快,可以用 ThreadPoolExecutor 或者 aiohttp
关于   ·   帮助文档   ·   FAQ   ·   API   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   2191 人在线   最高记录 5497   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 13ms · UTC 02:48 · PVG 10:48 · LAX 19:48 · JFK 22:48
♥ Do have faith in what you're doing.