windows下nginx的安装及使用
1 | 打开cmd命令窗口,切换到nginx解压目录下 |
1 | 打开cmd命令窗口,切换到nginx解压目录下 |
1 | WebClient.create().get() |
nginx上下游针对请求处理的超时时间配置不合理,导致报connection reset by peer问题,即低频502,如图:
此类问题主要原因为,客户端在对上游长连接fd读写时,正好此fd被上游服务器关闭了,此时会报connection reset by peer,所以需要尽量避免上游服务器主动断开连接;
keepalive是在TCP中一个可以检测死连接的机制,可以保持tcp长连接不被断开,属于tcp层功能。http1.1协议默认开启keepa-live保持长连接,主要作用是提高对tcp连接的复用率,减少创建连接过程给系统带来的性能损耗。
1 | try (CloseableHttpClient httpClient = HttpClients.custom().disableAutomaticRetries().build()) { |
Java提供InetAddress类,可以对域名-IP进行正向、逆向解析。
InetAddress解析的时候一般是调用系统自带的DNS程序。
linux 默认的DNS方式是读取/etc/resolv.conf进行DNS解析。
mac 默认的方式是向网关请求获取DNS服务器,然后直接请求DNS服务器进行解析,没有读取/etc/resolv.conf。
DNSNameService 根据sun.net.spi.nameservice.nameservers指定的name server或/etc/resolv.conf文件中配置的name server进行DNS解析
Thymeleaf是一种流行的服务器端模板引擎,适用于 Web 和独立 Java 应用程序。
1 | ./configure *** --with-http_v2_module |
1 | listen 443 ssl http2; |