Java面试准备-网络

简介: Java面试准备-网络

说说 TCP 与 UDP 的区别,以及各自的优缺点


TCP是面向连接的,发消息之前要建立连接,UDP是无连接的,发送数据之前不需要建立连接。

TCP提供可靠的消息发送,无差错,不会丢失,且按顺序到达,确认消息可靠,有重发机制。UDP尽最大努力交付,不能完全确保消息可靠。

UDP具有较好的实时性,工作效率比TCP高。

每一条TCP信息都是1对1的;UDP支持1对1、1对多、多对多的通信。

TCP对资源要求比较多,UDP对资源要求比较少。


说一下 HTTP 和 HTTPS 的区别


端口不同:HTTP是80端口、HTTPS是443端口

资源消耗不同:HTTPS需要对消息进行加解密处理,需要消耗CPU或者内存资源

开销:HTTPS需要单独购买证书。


TCP三次握手


TCP三次握手,其实就是简历TCP连接的一个过程,客户端和服务端交互需要3个数据包,握手的主要作用是确认双方的接收和发送能力正常。

第一次握手:客户端发送报文,进入等待状态,等待服务器确认

第二次握手:服务器收到报文,需要给客户端发送确认报文,同时服务器也向客户端发送一个报文。

客户端收到报文,向服务端发送确认包。


TCP 如何保证可靠性


序列号和确认机制:发送端发送数据包会有序列号

超时重发机制:发送端发送数据包后有一个定时器,如果一段时间后没有收到返回信息,这个时候进行消息重发

对乱序包进行排序:

丢弃重复数据

流量控制:可变的滑动窗口协议。


OSI 的七层模型都有哪些?


应用层

表示层

会话层

传输层

网络层

物理层

相关文章
|
6天前
|
负载均衡 NoSQL 算法
一天五道Java面试题----第十天(简述Redis事务实现--------->负载均衡算法、类型)
这篇文章是关于Java面试中Redis相关问题的笔记,包括Redis事务实现、集群方案、主从复制原理、CAP和BASE理论以及负载均衡算法和类型。
一天五道Java面试题----第十天(简述Redis事务实现--------->负载均衡算法、类型)
|
4天前
|
存储 缓存 网络协议
复盘女朋友面试4个月的Java基础题
这篇文章是关于Java基础面试题的复盘,涵盖了HashMap原理、对象序列化作用等高频面试问题,并强调了Java基础知识的重要性。
复盘女朋友面试4个月的Java基础题
|
5天前
|
Java
java网络编程 UDP通信协议实现局域网内文件的发送和接收
java网络编程 UDP通信协议实现局域网内文件的发送和接收
java网络编程 UDP通信协议实现局域网内文件的发送和接收
|
6天前
|
存储 NoSQL Java
一天五道Java面试题----第十一天(分布式架构下,Session共享有什么方案--------->分布式事务解决方案)
这篇文章是关于Java面试中的分布式架构问题的笔记,包括分布式架构下的Session共享方案、RPC和RMI的理解、分布式ID生成方案、分布式锁解决方案以及分布式事务解决方案。
一天五道Java面试题----第十一天(分布式架构下,Session共享有什么方案--------->分布式事务解决方案)
|
6天前
|
SQL Java 数据库连接
一天五道Java面试题----第六天(1)
这篇文章是关于Java面试中常见的五个问题,包括MyBatis和Hibernate的对比、MyBatis中#{}和${}的区别、MyBatis插件的运行原理及开发流程、索引的基本原理以及MySQL聚簇索引和非聚簇索引的区别。
|
6天前
|
缓存 NoSQL Redis
一天五道Java面试题----第九天(简述MySQL中索引类型对数据库的性能的影响--------->缓存雪崩、缓存穿透、缓存击穿)
这篇文章是关于Java面试中可能会遇到的五个问题,包括MySQL索引类型及其对数据库性能的影响、Redis的RDB和AOF持久化机制、Redis的过期键删除策略、Redis的单线程模型为何高效,以及缓存雪崩、缓存穿透和缓存击穿的概念及其解决方案。
|
6天前
|
存储 关系型数据库 MySQL
一天五道Java面试题----第八天(怎么处理慢查询--------->简述Myisam和innodb的区别)
这篇文章是关于Java面试中关于数据库性能优化和MySQL特性的五个问题,包括处理慢查询、ACID特性保证、MVCC概念、MySQL主从同步原理以及MyISAM和InnoDB存储引擎的区别。
|
6天前
|
算法 关系型数据库 MySQL
一天五道Java面试题----第七天(mysql索引结构,各自的优劣--------->事务的基本特性和隔离级别)
这篇文章是关于MySQL的面试题总结,包括索引结构的优劣、索引设计原则、MySQL锁的类型、执行计划的解读以及事务的基本特性和隔离级别。
|
4天前
|
NoSQL Java 数据库
2022年整理最详细的java面试题、掌握这一套八股文、面试基础不成问题[吐血整理、纯手撸]
这篇文章是一份详尽的Java面试题总结,涵盖了从面向对象基础到分布式系统设计的多个知识点,适合用来准备Java技术面试。
|
5天前
|
算法 关系型数据库 MySQL
一天五道Java面试题----第七天(mysql索引结构,各自的优劣--------->事务的基本特性和隔离级别)
这篇文章是关于MySQL的面试题总结,包括索引结构的优劣、索引设计原则、MySQL锁的类型、执行计划的解读以及事务的基本特性和隔离级别。