}// 文件FiletargetFile=getTargetFile(requestInfoBo, nginxConfig);// 是否存在if(targetFile.exists()) {// 设置文件context.setFile(targetFile);// 如果是文件夹if(targetFile.isDirectory()) {returnNginxRequestDispatches.fileDir(); }longfileSize=targetFile.length();if(fileSize <= NginxConst.BIG_...
从零手写实现 nginx-06-文件夹自动索引 从零手写实现 nginx-07-大文件下载 从零手写实现 nginx-08-范围查询 从零手写实现 nginx-09-文件压缩 从零手写实现 nginx-10-sendfile 零拷贝 从零手写实现 nginx-11-file+range 合并 从零手写实现 nginx-12-keep-alive 连接复用 从零手写实现 nginx-13-nginx.conf 配...
网络编程技能:手写Nginx可以提高网络编程的能力,学习如何处理TCP/IP连接、数据传输等。 并发和多线程编程:实现一个高性能的服务器需要处理并发连接,这将加深对多线程和并发编程的理解。 系统设计能力:设计一个类似Nginx的服务器可以锻炼系统设计的能力,包括架构设计、模块划分等。 性能优化技巧:为了实现高性能,需要学习...
publicvoidstart(){try{// 服务器监听的端口号intport=nginxConfig.getHttpServerListen();ServerSocketserverSocket=newServerSocket(port);log.info("[Nginx4j] listen on port={}",port);while(true){Socketsocket=serverSocket.accept();log.info("[Nginx4j] Accepted connection from address={}",socket.get...
手写nginx 系列 如果你对 nginx 原理感兴趣,可以阅读: 从零手写实现 nginx-01-为什么不能有 java 版本的 nginx? 从零手写实现 nginx-02-nginx 的核心能力 从零手写实现 nginx-03-nginx 基于 Netty 实现 从零手写实现 nginx-04-基于 netty http 出入参优化处理 ...
从零手写实现 nginx-16-nginx 支持配置多个 server 什么是 http 压缩 HTTP压缩是一种网络优化技术,用于减少在客户端和服务器之间传输的数据量。 通过压缩响应内容(如HTML、CSS、JavaScript、图片等),可以加快加载速度,减少带宽消耗,提升用户体验。 HTTP压缩通常在服务器端进行,客户端接收到压缩后的数据后进行解压缩。
从零手写实现 nginx-16-nginx 支持配置多个 server 什么是 http 范围查询? HTTP范围请求(Range Requests)是一种让客户端可以请求资源(如文件)的一部分而不是全部的机制。 这在处理大文件时特别有用,例如,视频点播服务或大文件下载,用户可以请求文件的特定部分进行播放或下载。
我们为 java 开发者实现了 java 版本的 nginx https://github.com/houbb/nginx4j 如果你想知道 servlet 如何处理的,可以参考我的另一个项目: 手写从零实现简易版 tomcat minicat 手写nginx 系列 如果你对 nginx 原理感兴趣,可以阅读: 从零手写实现 nginx-01-为什么不能有 java 版本的 nginx? 从零手写实现 ngi...
手写nginx 系列 如果你对 nginx 原理感兴趣,可以阅读: 从零手写实现 nginx-01-为什么不能有 java 版本的 nginx? 从零手写实现 nginx-02-nginx 的核心能力 从零手写实现 nginx-03-nginx 基于 Netty 实现 从零手写实现 nginx-04-基于 netty http 出入参优化处理 ...
手写nginx 系列 如果你对 nginx 原理感兴趣,可以阅读: 从零手写实现 nginx-01-为什么不能有 java 版本的 nginx? 从零手写实现 nginx-02-nginx 的核心能力 从零手写实现 nginx-03-nginx 基于 Netty 实现 从零手写实现 nginx-04-基于 netty http 出入参优化处理 从零手写实现 nginx-05-MIME类型(Multipurpose ...