|
533 | 533 |
|
534 | 534 | <br> |
535 | 535 |
|
| 536 | +<h3 id="6">头条篇</h3> |
| 537 | + |
| 538 | +--- |
| 539 | + |
| 540 | +##### 6.1.0 5个人去一个海岛寻宝,最后一共找到了100枚金币。他们约定了一个分配方案。 |
| 541 | + |
| 542 | +##### 6.1.1 给你一个有序整数数组,数组中的数可以是正数、负数、零,请实现一个函数,这个函数返回一个整数:返回这个数组所有数的平方值中有多少种不同的取值。 |
| 543 | + |
| 544 | +##### 6.1.2 一个环有10个节点,编号0-9。从0点出发,走N步又能回到0点,共有多少种走法? |
| 545 | + |
| 546 | +##### 6.1.3 一个乱序数组,求第K大的数。排序方式使用字典序。 |
| 547 | + |
| 548 | +##### 6.1.4 一棵二叉树,求最大通路长度。(即最大左右子树高度之和) |
| 549 | + |
| 550 | +##### 6.1.5 进程和线程的区别,使用线程真的能节省时间? |
| 551 | + |
| 552 | +##### 6.1.6 go协程的调度方式,使用协程真的能节省时间? |
| 553 | + |
| 554 | +##### 6.1.7 水平触发边沿触发的区别?在边沿触发下,一个socket有500的数据,已读取200然后不再处理,是不是剩下的300就永远无法读取? |
| 555 | + |
| 556 | +##### 6.1.8 有函数如下,输入1,返回什么? |
| 557 | + |
| 558 | +##### 6.1.9 设计http协议,A端发送 AAAA,至少让B端知道AAAA已发送完成。 |
| 559 | + |
| 560 | +##### 6.2.0 流量总入口为api_gateway,api_gateway挂了会导致全部挂挂,用什么机制增大可用性? |
| 561 | + |
| 562 | +##### 6.2.1 mysql为什么要用b+树,不用平衡二叉树做索引结构? |
| 563 | + |
| 564 | +##### 6.2.2 创建数据库索引应该怎么考虑? |
| 565 | + |
| 566 | +##### 6.2.3 使用int 做primary key和使用string 有什么优劣? |
| 567 | + |
| 568 | +##### 6.2.4 数据库分表的方法? |
| 569 | + |
| 570 | +##### 6.2.5 表结构,订单纪录如下,写一个语句,求卖的最好的 top 10 product_id。 |
| 571 | + |
| 572 | +##### 6.2.6 微服务,A服务请求B服务B1接口,B1接口又请求A服务A2接口。会不会有问题? |
| 573 | + |
| 574 | +##### 6.2.7 不使用高级工具,只使用Linux自带的工具,你会如何debug? |
| 575 | + |
| 576 | +##### 6.2.8 如何预估一个mysql语句的性能? |
| 577 | + |
| 578 | +##### 6.2.9 go函数中,返回值未命名,发生了panic,但是在函数内recover了。函数返回什么值? |
| 579 | + |
| 580 | +##### 6.3.0 socket中,在tcp协议层面,数据分为10个报文发放。1-7次很顺利,第8次丢失。这次通信一定失败吗?如果第8次数据会重发,那在接收端是不是:先读取到1-7次的数据,然后读取到8-10次的数据?还是9-10次的数据会先到达? |
| 581 | + |
| 582 | +##### 6.3.1 free -h,buffers 和cached有什么不同 |
| 583 | + |
| 584 | +##### 6.3.2 后台进程有什么特点,如果要你设计一个进程是后台进程,你会考虑什么 |
| 585 | + |
| 586 | +##### 6.3.3 僵尸进程是什么,如果产生一个僵尸进程,如何查找僵尸进程 |
| 587 | + |
| 588 | +##### 6.3.4 孤儿进程是什么 |
| 589 | + |
| 590 | +##### 6.3.5 一个进程有20个线程,在某个线程中调用fork,新的进程会有20个线程吗? |
| 591 | + |
| 592 | +##### 6.3.6 tcp/ip 流量控制和拥塞控制 |
| 593 | + |
| 594 | +##### 6.3.7 301/302有什么区别?应用上有什么异同。 |
| 595 | + |
| 596 | +##### 6.3.8 50X相关错误码的内涵是什么? |
| 597 | + |
| 598 | +##### 6.3.9 close wait和time wait是什么?如何排查?有什么意义? |
| 599 | + |
| 600 | +##### 6.4.0 http req和resp的中数据有哪些 |
| 601 | + |
| 602 | +##### 6.4.1 什么是连接的半打开,半关闭状态 |
| 603 | + |
| 604 | +##### 6.4.2 假如一个业务依赖单点redis,此redis故障将导致业务不可用,如何改进 |
| 605 | + |
| 606 | +##### 6.4.3 redis sharding有哪些做法 |
| 607 | + |
| 608 | +##### 6.4.4 当大量数据要求用redis保存,单机单点难以满足需要,设计(换寻找)一个负载均衡的方案 |
| 609 | +##### 6.4.5 当redis 采用hash做sharding,现在有8个节点,负载方案是 pos = hash(key) % 8,然后保存在pos节点上。这样做有什么好处坏处?当8个节点要扩充到10个节点,应该怎么办?有什么更方便扩充的方案吗?(一致性hash, presharding) |
| 610 | + |
| 611 | +##### 6.4.6 如何保证redis和数据库数据的一致性。比如用户名既保存在数据库,又保存在redis做缓存。有如下操作 update_db(username); update_redis(username)。但是执行update_db后故障,update_redis没有执行。有什么简单办法解决这个问题。 |
| 612 | + |
| 613 | + |
| 614 | + |
536 | 615 | <h3 id="9">mysql篇</h3> |
537 | 616 |
|
538 | 617 | --- |
|
0 commit comments