随笔分类 - 福大大架构师每日一题
摘要:福哥答案2020-10-30:1.双重遍历法。2.一次遍历法。golang代码如下: package main import "fmt" const INT_MAX = int(^uint(0) >> 1) func main() { s := []int{7, 1, 5, 3, 6, 4} fmt
阅读全文
摘要:福哥答案2020-10-29: 简单回答:固定窗口:string。key存ip,value存次数。滑动窗口:list。key存ip,value=list,存每次访问的时间。 中级回答:固定窗口:用redis的string进行存储,IP为key,value用自增的方法进行设置值,每次设置完了返回值就是
阅读全文
摘要:福哥答案2020-10-28: 1.运行时恐慌,当panic被抛出异常后,如果我们没有在程序中添加任何保护措施的话,程序就会打印出panic的详细情况之后,终止运行。2.有panic的子协程里的defer能执行,主协程和其他子协程里的defer不执行或者只能执行一半,这打破了【defer函数一定执行
阅读全文
摘要:福哥答案2020-10-27: ***[2020-10-27:go中select的执行流程是什么?](https://bbs.csdn.net/topics/398044569)
阅读全文
摘要:福哥答案2020-10-26: 简单回答:CPU密集型:【cpu核心数】【cpu核心数+1】【cpu核心数-1】。IO密集型:【cpu核心数*2】。混合型:【cpu核心数 / (1 - 阻塞系数)】,阻塞系数=阻塞时间/(阻塞时间+计算时间)。求并发:【并发数=线程数/单个任务时间】。 中级回答:首
阅读全文
摘要:福哥答案2020-10-25:
阅读全文
摘要:福哥答案2020-10-24: ***[评论](https://user.qzone.qq.com/3182319461/blog/1603496305)
阅读全文
摘要:福哥答案2020-10-23:1.元素大小是否小于2的16次方,否则throw。2.对齐检查,否则throw。3.元素大小和容量的乘积不能超出范围,否则panic。4.生成*hchan,设置buf。4.1.队列和元素大小为0。竞速检测器,buf存*hchan中的buf所在地址。4.2.非指针。hch
阅读全文
摘要:福哥答案2020-10-22: 简单回答:相同点:都是多个单元操作。不同点:LongAdder相加,LongAccumulator自定义计算规则。 中级回答:相同点: LongAddr与LongAccumulator类都是使用非阻塞算法CAS实现的,这相比于使用锁实现原子性操作在性能上有很大的提高。
阅读全文
摘要:福哥答案2020-10-21: ***[评论](https://user.qzone.qq.com/3182319461/blog/1603234689)
阅读全文
摘要:福哥答案2020-10-20: [答案来自此连接](https://bbs.csdn.net/topics/397976466?page=1#post-412998901) 线程池当未调用 shutdown 方法时,是通过队列的 take 方法阻塞核心线程(Worker)的 run 方法从而保证核心
阅读全文
摘要:福哥答案2020-10-19: 后面定义的函数可能会依赖前面的资源,所以要先执行。如果前面先执行,释放掉这个依赖,那后面的函数就不能找到它的依赖了。***[评论](https://user.qzone.qq.com/3182319461/blog/1603061996)
阅读全文
摘要:福哥答案2020-10-18:#福大大架构师每日一题# 简单回答:AtomicLong是CAS操作。LongAdder是多个单元操作。 中级回答:AtomicLong 是基于 CAS 方式自旋更新的;LongAdder 是把 value 分成若干cell,并发量低的时候,直接 CAS 更新值,成功即
阅读全文
摘要:福哥答案2020-10-17:#福大大架构师每日一题# [答案来自此链接](https://www.jianshu.com/p/fb319d7674ff) 一个通用领域驱动设计的架构性解决方案包含4 个概念层: ***[评论](https://user.qzone.qq.com/3182319461
阅读全文
摘要:福哥答案2020-10-16:#福大大架构师每日一题# 简单回答:cmpxchg原子指令。aba,循环开销大,一个共享变量。 [知乎](https://www.zhihu.com/question/425863643/answer/1527001400)[CSDN](https://blog.csd
阅读全文
摘要:福哥答案2020-10-15:#福大大架构师每日一题# [答案来自知乎:](https://www.zhihu.com/question/425704691) 其实就是innodb_flush_log_at_trx_commit和sync_binlog两个参数设置,都设置为1就是双1设置。MySQL
阅读全文
摘要:福哥答案2020-10-14:#福大大架构师每日一题# [知乎:](https://www.zhihu.com/question/425541402) 如果线程1的锁被自动释放了,临界区的逻辑还没执行完,这个时候线程2重新持有了这把锁,就会导致临界区的代码不能严格的串行执行。 解决方案:对于没有设置
阅读全文
摘要:福哥答案2020-10-13: [答案来自知乎:](https://www.zhihu.com/question/425378511/answer/1522000015) 这里我从数据库索引的层面回答下这个问题。 由于Hash 索引结构的特殊性,所以其检索效率非常高,索引的检索可以一次定位,而B-T
阅读全文
摘要:福哥答案2020-10-12:#福大大架构师每日一题# 1.并发性。加锁解决。2.缺乏全局时钟。3.通信异常。引起数据丢失或者接收数据延迟的问题。4.网络分区,也叫脑裂。5.三态。成功和失败以外的第三种状态,叫超时态。6.节点故障。节点越多,发生故障的几率越大。7.cap不能同时满足。8.一致性问题
阅读全文
摘要:福哥答案2020-10-11:#福大大架构师每日一题# 简单回答:执行计划调优、语句调优、索引调优、设计调优、业务调优。 中级回答:时间有限,回答得不全面。1.执行计划调优熟读执行计划,十大参数。 2.语句调优尽量全值匹配。范围条件放最后。Null/Not 有影响。 3.索引调优最佳左前缀法则。不在
阅读全文

浙公网安备 33010602011771号