6.4 计算机网络面试题

HTTP到底是不是无状态的?

无状态即每个请求都是独立的,服务器不会在多个请求间保存关于客户端状态的信息。

HTTP虽然是无状态的,但是可以通过一些机制保存状态,如使用cookies session跟踪用户状态。

携带Cookie的HTTP请求是有状态还是无状态的?Cookie是HTTP协议簇的一部分,那为什么还说HTTP是无状态的?

携带Cookie的HTTP请求实际上是可以在一定程度上实现状态保持的,因为Cookie是用来在客户端存储会话信息和状态信息的一种机制。

虽然Cookie是HTTP协议簇的一部分,但是HTTP协议在设计初衷上仍然保持无状态特性,即每个请求都是相互独立的。使用Cookie只是在无状态协议下的一种补充机制,即每个请求都是相互独立的。使用Cookie只是在无状态协议下的一种补充机制,用于在客户端存储状态信息以实现状态保持。

cookie和session有什么区别?

token,session,cookie的区别?

如果我把数据存储到 localStorage,和Cookie有什么区别?

JWT 令牌和传统方式有什么区别?

跨站请求伪造:假设用户在银行网站(网站 A)上有一个账户余额,并且已经登录。攻击者创建一个恶意网站(网站 B),当用户访问该网站时,网站 B 发送一个转账请求到银行网站(依赖自动发送cookies)

JWT 令牌都有哪些字段?

JWT令牌由三个部分组成:头部(Header)、载荷(Payload)和签名(Signature)。其中,头部和载荷均为JSON格式,使用Base64编码进行序列化,而签名部分是对头部、载荷和密钥进行签名后的结果。

JWT 令牌为什么能解决集群部署,什么是集群部署?


jwt的缺点是什么?

JWT 令牌如果泄露了,怎么解决,JWT是怎么做的?

及时失效令牌,使用黑名单等

前端是如何存储JWT的?

为什么有HTTP协议了?还要用RPC?

B/S(Browser/Server)和 C/S(Client/Server)架构是两种常见的计算机网络架构。它们分别适用于不同的应用场景。以下是对这两种架构的详细解释:

C/S 架构(Client/Server)

定义

C/S 架构是指客户端和服务器端之间的通信模式,客户端通常是一个安装在用户计算机上的应用程序,而服务器则提供数据和服务。

特点
  • 客户端应用:客户端需要安装特定的软件,用户通过这个软件与服务器交互。
  • 直接通信:客户端与服务器直接通信,通常使用 TCP/IP 协议。
  • 高性能:客户端可以执行一些处理任务,减轻服务器负担。
  • 复杂性:客户端需要定期更新,维护成本较高。
示例
  • 桌面应用程序,如 Microsoft Outlook、数据库客户端等。

B/S 架构(Browser/Server)

定义

B/S 架构是指通过浏览器访问服务器的模式,用户通过浏览器与服务器交互,而不需要安装特定的客户端软件。

特点
  • 无需安装:用户只需安装浏览器,无需额外的软件。
  • 易于访问:支持跨平台,用户可以在任何设备上访问,只要有浏览器和网络。
  • 集中管理:更新和维护集中在服务器端,客户端始终使用最新版本。
  • 灵活性:便于实现动态内容和交互,通常使用 HTML、CSS 和 JavaScript 技术。
示例
  • 现代 Web 应用程序,如 Gmail、在线银行系统等。

总结

  • C/S 架构:适合需要高性能、复杂交互和大量数据处理的场景,但维护和更新成本较高。
  • B/S 架构:适合需要广泛访问、易于维护的应用,用户体验良好,更新简单。

HTTP长连接与WebSocket有什么区别?

Nignx

  • 轮询
  • 加权轮询
  • 最少连接数
  • IP哈希
  • URL哈希
    负载均衡位于应用层
相关推荐
轻语呢喃35 分钟前
JavaScript :字符串模板——优雅编程的基石
前端·javascript·后端
MikeWe40 分钟前
Paddle张量操作全解析:从基础创建到高级应用
后端
岫珩1 小时前
Ubuntu系统关闭防火墙的正确方式
后端
心之语歌1 小时前
Java高效压缩技巧:ZipOutputStream详解
java·后端
不死的精灵2 小时前
【Java21】在spring boot中使用ScopedValue
java·spring boot·后端
M1A12 小时前
TCP/IP协议精解:IP协议——互联网世界的邮政编码系统
后端·网络协议·tcp/ip
逸风尊者2 小时前
开发易掌握的知识:GeoHash查找附近空闲车辆
java·后端
程序猿阿越4 小时前
Kafka源码(一)Controller选举与创建Topic
java·后端·源码
程序员爱钓鱼4 小时前
Go语言项目工程化 — 常见开发工具与 CI/CD 支持
开发语言·后端·golang·gin
Jiude4 小时前
MinIO 社区版被故意阉割,Web管理功能全面移除。我来试试国产RustFS
后端·docker·架构