2024年10月10日

Semaphore源码简单解读

摘要: Semaphore源码解读 注意,阅读本文需要了解AQS,AQS采用了模板设计模式。后续本人会完善这篇文章 Semaphore的方法 acquire() 阻塞获得一个许可,会阻塞,直到得到一个可用许可或被中断 重载版本 acquire(n) :尝试获取n个许可 acquireUninterrupti 阅读全文

posted @ 2024-10-10 10:07 Nammonco 阅读(7) 评论(0) 推荐(0) 编辑

Linux网络(二)——socket、BIO、epoll原理

摘要: 二、内核如何与用户进程协作 //创建Socket的c语言程序 ... int main(){ int sk = socket(PF_INET, SOCK_STREAM, 0); //忽略bind和accept ... } 2.1 读取视角:Linux socket 结构 2.1.1 socket源码 阅读全文

posted @ 2024-10-10 10:07 Nammonco 阅读(20) 评论(0) 推荐(0) 编辑

2024年4月11日

秒杀项目的重要问题

摘要: 核心问题 每秒上万次请求 数据一致性(超买超买复购) 响应速度(用户反馈) 每秒上万次请求的后果 短时间内,上万个数据库连接同时达到,数据库崩溃。数据库处理大量请求,如果一个IO耗时100ms,大量的请求冲进数据库,响应速度将十分缓慢。 限流策略 通常秒杀商品数量远远小于参与用户,而且用户在秒杀时, 阅读全文

posted @ 2024-04-11 16:45 Nammonco 阅读(10) 评论(0) 推荐(0) 编辑

导航