ReZero's Utopia.

ReZero's Utopia.

Everything is permitted.

Think More
Think Morehttps://time.geekbang.org/column/intro/48 错误码的处理常见设计 C 的 errno 是记录系统的最后一次错误代码 错误具有歧义性,比如 0 不能区分是不是真的出错还是的确返回值就是 0 错误不够显式,常常忘记检查 Win 的 HRESULT 错误变成了出参,导致接口变得不够纯净 仍然错误不够显式 Go 的处理:函数的返回值附带一个 error 作为异常返回,当出现异常时其不为 nil 是接口类型,只包含了一个字符串做描述,因此可以自己做实现 Go 的设计者觉得 try/catch 机制的使用太泛滥了,而且从底层...
Thread pool
https://tech.meituan.com/2020/04/02/java-pooling-pratice-in-meituan.html 基本利益 统一管理IT资源,包括服务器、存储、和网络资源等等。通过共享资源,使用户在低投入中获益。 内存池(Memory Pooling):预先申请内存,提升申请内存速度,减少内存碎片。 连接池(Connection Pooling):预先申请数据库连接,提升申请连接的速度,降低系统的开销。 实例池(Object Pooling):循环使用对象,减少资源在初始化和释放时的昂贵损耗。 核心实现总体设计 生命周期管理 任务调度 ...
K8s
Deployment一个Deployment拥有多个Replica Set,而一个Replica Set拥有一个或多个Pod。 一个Deployment控制多个rs主要是为了支持回滚机制,每当Deployment操作时,Kubernetes会重新生成一个Replica Set并保留,以后有需要的话就可以回滚至之前的状态。 1234567891011121314151617181920212223242526272829303132333435363738394041apiVersion: apps/v1kind: Deploymentmetadata: name: nginx-dep...
Thread
线程生命周期happens-before 程序顺序规则:一个线程中的每一个操作,happens-before于该线程中的任意后续操作。 监视器锁规则:对一个锁的解锁,happens-before于随后对这个锁的加锁。 volatile变量规则:对一个volatile域的写,happens-before于任意后续对这个volatile域的读。 传递性:如果A happens-before B,且B happens-before C,那么A happens-before C。 start规则:如果线程A执行操作ThreadB.start()启动线程B,那么A线程的ThreadB.start(...
Go exception handle
原文链接:https://blog.golang.org/error-handling-and-go 1234567func Open(name string) (file *File, err error)f, err := os.Open("filename.ext")if err != nil { log.Fatal(err)}// do something with the open *File f 函数的返回值附带一个 error 作为异常返回,当出现异常时其不为 nil error 是接口类型,只包含了一个字符串做描述,因此...
AQS
AQSCLH1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495package com.hand.hcf.app.base.bigdata;import java.util.concurrent.atomic.AtomicReference;/** * @version: 1.0 *...
Leet-Code
1234567891011121314151617181920212223242526272829303132333435363738//Given a 2D binary matrix filled with 0's and 1's, find the largest square cont//aining only 1's and return its area. //// Example: //// //Input: ////1 0 1 0 0//1 0 1 1 1//1 1 1 1 1//1 0 0 1 0////Output: 4// Relate...
Algo tips
Binary Search123456789101112131415int binarySearch(int[] nums, int target) { int left = 0; int right = nums.length - 1; // 注意 while(left <= right) { int mid = left + (right - left) / 2; if(nums[mid] == target) return mid; else if (num...
TCP
TCP/IP网络连接 注意网络状态的变化 12syn_sent -> established -> fin_wait1 -> fin_wait2 -> time_wait > closedlisten -> syn_rcvd -> established -> closed_wait -> last_ack =======> closed 三次握手 SYN 失败 RTO变化:2**(cat /proc/sys/net/ipv4/tcp_syn_retries[即重传次数上限]) SYN-ACK 失败...
avatar
ReZero
大屁水饺的理想国.