- 博客(6)
- 资源 (7)
- 收藏
- 关注
转载 C10K问题
C10K问题的本质C10K问题的本质上是操作系统的问题。对于Web 1.0/2.0时代的操作系统,传统的同步阻塞I/O模型处理方式都是requests per second。当创建的进程或线程多了,数据拷贝频繁(缓存I/O、内核将数据拷贝到用户进程空间、阻塞,进程/线程上下文切换消耗大, 导致操作系统崩溃,这就是C10K问题的本质。可见, 解决C10K问题的关键就是尽可能减少这些CPU资源...
2019-09-17 10:44:23 313
转载 mybatis 底层原理
框架架构讲解:(1)加载配置:配置来源于两个地方,一处是配置文件,一处是Java代码的注解,将SQL的配置信息加载成为一个个MappedStatement对象(包括了传入参数映射配置、执行的SQL语句、结果映射配置),存储在内存中。(2)SQL解析:当API接口层接收到调用请求时,会接收到传入SQL的ID和传入对象(可以是Map、JavaBean或者基本数据类型),Mybatis会根据SQ...
2019-09-17 10:12:32 718
转载 分布式ID方案有哪些以及各自的优劣势,我们当如何选择
1. UUIDUUID经由一定的算法机器生成,为了保证UUID的唯一性,规范定义了包括网卡MAC地址、时间戳、名字空间(Namespace)、随机或伪随机数、时序等元素,以及从这些元素生成UUID的算法。优点:本地生成ID,不需要进行远程调用,时延低,性能高。缺点:UUID过长,16字节128位,通常以36长度的字符串表示,很多场景不适用,比如用UUID做数据库索引字段。 没有...
2019-09-15 07:36:38 219
转载 limit 20000 加载很慢怎么解决
当一个数据库表过于庞大,LIMIT offset, length中的offset值过大,则SQL查询语句会非常缓慢,你需增加order by,并且order by字段需要建立索引。 如果使用子查询去优化LIMIT的话,则子查询必须是连续的,某种意义来讲,子查询不应该有where条件,where会过滤数据,使数据失去连续性如果你查询的记录比较大,并且数据传输量比较大,比如包含了text类...
2019-09-15 06:46:17 953
转载 MySQ L 遇到的死锁问题、 如何排查与解决
首先,通过 pstack 工具获取当前问题实例的堆栈信息以便后面具体线程的查找 & 问题线程的定位其次:使用 pt-pmp 工具统计 hang.info 中的进程信息
2019-09-15 06:29:54 377
原创 美团面经
1.concurrenthashmap. put的过程2.spring 的代理模式的实现3.redis 内存模型保持一致4.mybatis 两级缓存5.http 过程发生了那些事6.排序算法。7.springioc理解8.springaop9.springmvc 整个过程10.java内存模型11.maven 打包命令12linux 查看内存命令13.三次握手发送的消息内容...
2019-08-12 16:17:14 164
wcf技术剖析
2016-08-12
redis存储List集合
2015-06-16
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人