平日手记

平日手记

我们还应该特别关注我们所做的首次决定,它在日后能形成一长串的其他决定(关于衣服、食品等)。它从表面上看只是个一次性的决定,对未来不会有多大影响;但是事实上,首次决定的威力可能非常巨大,它的长期效应会渗透到未来我们所做的很多决定里。考虑到这一效应,首次决定至关重要,我们必须给予足够的重视。
苏格拉底说,不经审视的生活不值得过。或许现在到了清点一下我们生活中的印记和锚的时候了。即使它们在某一时间是完全合理的,但现在,它们仍然合理吗?一旦对旧的选择做了重新考虑,我们就会向新的决定、新的一天、新的机会敞开大门。这似乎是有道理的

You Can’t Have Your Cake and Eat It Too

世界上最无耻最阴险、最歹毒的赞美,就是用穷人的艰辛和苦难,当做励志故事愚弄底层人。—王朔

祝你肠道好[祝你幸福!]

达者不再兼济天下,却责怪穷者仅仅独善其身。

思量许久,内心多有不舍,终是落了笔,大抵人都是如此吧!原本也是心中所向!毕竟碎银几两,可解万事惆怅,罢了,我向来如此。—辞职专用

纤云弄巧,飞星传恨,银汉迢迢暗度。
金风玉露一相逢,便胜却人间无数。
柔情似水,佳期如梦,忍顾鹊桥归路。
两情若是久长时,又岂在朝朝暮暮

秋风清,秋月明,落叶聚还散,寒鸦栖复惊。相思相见知何日?此时此夜难为情!—— 《三五七言》唐代李白

曾经沧海难为水,除却巫山不是云。取次花丛懒回顾,半缘修道半缘君。——唐·元稹《离思》

虚荣尺寸,(vanitysizing),也叫做尺寸膨胀,指随着时代的发展,各类成衣制品在尺寸号码不变的情况下,实际尺寸增大的现象,这种虚荣尺寸的出现无疑是最好的心理安慰剂。《品牌洗脑》

曝光效应 《思考.快,与慢》

边际效用递减~第二份半价。

要把原始流转换成一般流(每个int都会装箱成一个Integer),可以使用boxed方法

当客户端的 WWW 浏览器在其地址栏里输入一个 URL 或单击 Web 页上的一个超链接时,Web 浏览器就要检查相应的协议以决定是否需要重新打开一个应用程序,同时对域名进行解析以获得相应的 IP 地址。然后,以该 IP 地址并根据相应的应用层协议所对应的 TCP 端口与服务器建立通信连接,在服务器端,HTTP 的默认 TCP 端口为 80。WWW 的连接建立之后,HTTP 服务器将根据客户端所要求的路径和文件名将相应 HTML 文档送到客户端,如果客户端没有指明相应的文件名,则由服务器返回一个默认的 HTML 页面。页面传送完毕则中止相应的会话连接。

春天不是读书天,夏日炎炎正好眠,秋多蚊子冬多雪,要想读书等明年

最深的部分

我也头痛啊。

用户态与内核态是对 CPU 来讲的,是指 CPU 运行在用户态(特权 3 级)还是内核态(特权 0 级),很多人误以为是对用户进程来讲的。用户进程陷入内核态是指:由于内部或外部中断发生,当前进程被暂时终止执行,其上下文被内核的中断程序保存起来后,开始执行一段内核的代码。是内核的代码,不是用户程序在内核的代码,用户代码怎么可能在内核中存在,所以「用户态与内核态」是对 CPU 来说的。当应用程序陷入内核后,它自己已经下 CPU 了,以后发生的事,应用程序完全不知道,它的上下文环境已经被保存到自己的 0 特权级栈中了,那时在 CPU 上运行的程序已经是内核程序了。所以要清楚,内核代码并不是成了应用程序的内核化身,操作系统是独立的部分,用户进程永远不会因为进入内核态而变身为操作系统了。

What’s your name? 没有感同身受 故事的开头总是极尽温柔

听你一言,心中喜悦,可又不想表现在脸上,该怎么办。

初始化 LinkedBlockingDeque 时,可以设置队列的大小以防止内存溢出,双向阻塞队列也常被用于工作窃取模式。

不要自欺欺人,更不要执着。
不管我们愿不愿意承认,我们对于每一个人都是可被替代的

与君相逢,如沐暖阳。

知冷知热,温柔贤淑,我见忧怜。

生气了?我吃你家大米了啊。

见贤思齐,从善如流

如果你想改变人们的既有观点,最好的做法不是给他们看对手和敌人的信念,而是给他们看那些与他们的立场相近的人的观点。一个压制谣言的好方法就是去证明那些本该相信谣言的人实际上并不相信那些谣言。

OOD 中的典型办法,DIP(依赖反转)。底层定义接口,上层实现,而不是底层直接调用上层。

限流是服务端,根据其能力上限设置一个过载保护;而熔断是调用端对自己做的一个保护。

集体观察是错误率最高的,它往往只是某个人的幻觉,通过传染,暗示给别人。

数据库【推】写时聚合,【拉】读时聚合,解决读高并发,写高并发。对于读的一端,一个用户的关注的人当中,有的人是推给他的(粉丝数少于 5000),有的人是需要他去拉的(粉丝数大于 5000),需要把两者聚合起来,再按时间排序,然后分页显示,这就是「推拉结合」。

因为三次握手恰好可以保证客户端和服务器对自己的发送、接收能力做了一次确认。第一次,客户端给服务器发了 seq= x ,无法得到对方是否收到;第二次,对方回复了 seq= y ,ACK= x +1。这时客户端知道自己的发送和接收能力没有问题,但服务器只知道自己的接收能力没问题;第三次,客户端发送了 ACK= y +1,服务器收到后知道自己第二次发的 ACK 对方收到了,发送能力也没问题。

Disruptor,其核心就是「一写多读,完全无锁」。

(1)阻塞和非阻塞是从函数调用角度来说的,而同步和异步是从「读写是谁完成的」角度来说的。阻塞:如果读写没有就绪或者读写没有完成,则该函数一直等待。非阻塞:函数立即返回,然后让应用程序轮询。同步:读写由应用程序完成。异步:读写由操作系统完成,完成之后,回调或者事件通知应用程序。(2)按照这个定义可以知道,异步 I/O 一定是非阻塞 I/O,不存在既是异步 I/O,又是阻塞的;同步 I/O 可能是阻塞的,也可能是非阻塞的。归类后共有三种:同步阻塞 I/O、同步非阻塞 I/O、异步 I/O。(3)I/O 多路复用(select、poll、epoll)都是同步 I/O,因为 read 和 write 函数操作都是应用程序完成的,同时也是阻塞 I/O,因为 select、read、write 的调用都是阻塞的。
除了上面的四种 I/O 模型,还经常会听到「事件驱动」一词。这个词在不同的语境中有不同的意思。比如 Nginx 中所讲的「事件驱动」,其实是 Nginx 封装的一个逻辑概念,在操作系统层面是基于 epoll 或者 select 来实现的。所以,当讲网络 I/O 模型的时候,一定要注意讲的是操作系统层面的 I/O 模型,还是上层的网络框架封装出来的 I/O 模型(比如 asio,又比如 Java 的 NIO,在 Linux 平台上,底层也是基于 epoll)。另外,对于「异步 I/O」一词,在操作系统的语境和在上层应用的语境中,往往指代不一样。在操作系统的语境里,异步 I/O 是指 IOCP 或者 aio 这种真正的异步,epoll 不被认为是异步 I/O;但在上层应用的语境里,异步 I/O 往往指的是 JavaJDK 或网络框架(Netty)封装出来的概念,底层实现可能是 epoll,也可能是真正的异步 I/O。

我们看到虽然叫零拷贝,实际是 2 次数据拷贝,1 次是从磁盘到内核缓冲区,1 次是从内核缓冲区到网络。之所以叫零拷贝,是从内存的角度来看的,数据在内存中没有发生过数据拷贝,只在内存和 I/O 之间传输。

在人类的任何群体,暗示都具有传染性,这也说明感情为什么会朝着某个既定的方向迅速转变。

几百万人清醒得足以从事体力劳动;一百万人中只有一个人清醒得足以有效地服役于智慧;一亿人中只有一个人,生活得诗意而神圣。

人们相信消极信息多于积极信息的倾向——使然。消极偏见在我们的脑海中根深蒂固:我们的大脑神经对负面信息比对正面信息更敏感活跃。 [4] 在经济学中有着消极偏见的一个推论,它讲到人们往往更愿意避免损失而不是积累收入,即 损失规避 ( loss aversion )。

© 版权声明
THE END
喜欢就支持一下吧
点赞0 分享
评论 抢沙发
头像
欢迎您留下宝贵的见解!
提交
头像

昵称

取消
昵称表情代码图片