字节跳动面试题

字节跳动面试题

 

  1. Http协议
    1. Http协议是一个应用层的协议,由请求和响应构成,使用统一资源标识符来传递数据和建立连接 。
    2. HTTP协议是无状态的,也就是说每一次HTTP请求之间都是相互独立的,没有联系的,服务端不知道客户端具体的状态。
    3. 一次HTTP请求的基本流程一般是,在建立TCP连接后,由客户端向服务端发起一次请求 request ,而服务器在接收到以后返回给客户端一个响应 response 。所以我们看到的HTTP请求内容一般就分为请求和响应两部分。HTTP协议通常承载于TCP协议之上,有时也承载于TLS或SSL协议层之上,这个时候,就成了我们常说的HTTPS。默认HTTP的端口号为80。
    4. 每一个HTTP请求都由三部分组成,分别是:
      1. 请求行、请求行一般由请求方法、url路径、协议版本组成
      2. 请求报头、括普通报头、请求报头、响应报头、实体报头。每个报头的形式如下:
        1. host:请求资源的域名,主机号和端口号
        2. accept:可接收的数据格式
        3. cookie信息
        4. Accept-Encoding
      3. 请求正文。请求正文通常是使用POST方法进行发送的数据
    5. HTTP响应同样也是由三部分组成
      1. 状态行、由HTTP协议版本号, 状态码, 状态消息三部分组成
      2. 响应报头、
        1. allow:服务器支持哪些方法
        2. date
        3. set_cookie
      3. 报文主体。
  2. cookie session介绍一下
    1. 存储的位置,利弊
    2. 安全性
    3. 现在的搭配使用:session依赖于cookie使用:
      1. 通过cookie存储一个session_id,然后具体的数据则是保存在session中。如果用户已经登录,则服务器会在cookie中保存一个session_id,下次再次请求的时候,会把该session_id携带上来,服务器根据session_id在session库中获取用户的session数据。就能知道该用户到底是谁,以及之前保存的一些状态信息。这种专业术语叫做server side session。
      2. 将session数据加密,然后存储在cookie中
  3. session表结构怎么设计,储存在哪里
    1. 多个服务器下的session一致性:支持通过配置文件修改session的存储介质为sql server的,所有机器的会话数据都从同一个数据库读,就不会存在不一致的问题;
    2. sessionid是一个会话的key,浏览器第一次访问服务器会在服务器端生成一个session,有一个sessionid和它对应。tomcat生成的sessionid叫做jsessionid。session在访问tomcat服务器HttpServletRequest的getSession(true)的时候创建,tomcat的ManagerBase类提供创建sessionid的方法:随机数+时间+jvmid。存储在服务器的内存中,tomcat的StandardManager类将session存储在内存中,也可以持久化到file,数据库,memcache,redis等。客户端只保存sessionid到cookie中,而不会保存session,session销毁只能通过invalidate或超时,关掉浏览器并不会关闭session。
  4. 你们的session cookie在项目里运用到哪里
    1. 用户的直接登陆。
  5. 算法题目:[删除链表中重复的节点]在一个排序的链表中,存在重复的节点,请删除该链表中重复的节点,重复的节点不保留,返回链表头指针.例如,链表1-2-3-3-4-4-5处理后为1-2-5
  6. TCP/UDP的区别介绍一
  7.  TCP如何保证传输的有效性。
  8. innodb和myisam的区别
  9. 乐观锁悲观锁区别说一下
  10. 数据库四种隔离状态 分别有什么问题
  11. redis的数据结构
  12. sortset底层,原理,怎么保证有序
  13. 操作系统的虚拟内存
  14. 进程的三种状态:
  15. 进程调度的方式
  16. 进程间的通讯方式:
  17. 线程间的同步方式:
  18. 进程和线程的区别
  19. 常见的排序算法

    以上是我直接从笔记中复制了部分,格式上有很多乱码。最近有点缺积分,请从下面连接下载文件,有我整理的视频面试的原题和答案

 

          文件连接https://download.csdn.net/download/horse7/11832344

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值