当前位置: 首页 > news >正文

网站的可视化设计/北京seo人员

网站的可视化设计,北京seo人员,东莞网站建设流程,wordpress怎么把页脚调小点优化背景 当你的application需要支持瞬时高并发的时候,tomcat已经不在是最优的选择,我们可以改为Undertow,并对其进行优化。 Undertow 是一个轻量级的、高性能的Java Web 服务器,由JBoss 开发并开源。它是基于非阻塞(…

优化背景

当你的application需要支持瞬时高并发的时候,tomcat已经不在是最优的选择,我们可以改为Undertow,并对其进行优化。

Undertow 是一个轻量级的、高性能的Java Web 服务器,由JBoss 开发并开源。它是基于非阻塞(non-blocking)的I/O模型,具有低资源消耗和高并发处理能力。

SpringBoot3如何从tomcat改为undertow

需要在pom.xml中排除Tomcat,并添加Undertow的依赖:

<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId><exclusions><exclusion><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-tomcat</artifactId></exclusion></exclusions>
</dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-undertow</artifactId>
</dependency>

多线程优化配置

在 application.yml 或 application.properties 中添加以下配置:

server:undertow:# 线程池配置threads:# I/O线程数(建议设置为CPU核心数的1-2倍)io: 16# 工作线程数(建议设置为CPU核心数的8-16倍)worker: 256# 缓冲池配置buffer-size: 1024# 是否直接使用内存作为缓冲区direct-buffers: true

限制接口超时时间

server:undertow:# 请求超时设置(毫秒)no-request-timeout: 30000# 连接空闲超时(毫秒)idle-timeout: 60000

限制请求体大小不超过2KB

server:undertow:# 限制HTTP POST请求体大小(2KB=2048字节)max-http-post-size: 2048

请求压缩配置

SpringBoot的server compression功能用于减少响应数据的大小,从而提高传输效率,减少带宽占用,加快页面加载速度。它通常使用GzipDeflate等压缩算法来优化HTTP响应。

作用

  1. 减少数据传输量:压缩后数据体积更小,降低网络开销。

  2. 提高加载速度:特别适用于前端页面、API接口等场景。

  3. 降低服务器负载:减少数据传输时间,提高服务器吞吐量。

  4. 优化用户体验:页面加载更快,提升访问流畅度。

推荐配置

在SpringBoot的application.ymlapplication.properties中启用压缩:

server:compression:enabled: true  # 开启压缩min-response-size: 1024  # 触发压缩的最小响应大小(默认2KB)mime-types: application/json, text/html, text/xml, text/plain, text/css, application/javascript  # 需要压缩的内容类型excluded-user-agents: IE6, IE7  # 排除旧版浏览器

启用HTTP/2 (需要SSL支持)

server:http2:enabled: true

Undertow 访问日志配置

server:undertow:accesslog:enabled: truedir: ./logsprefix: access_log.suffix: .logpattern: '%t %a "%r" %s (%D ms)'rotate: true
 

监控与调优建议

  1. 监控线程池状态:通过JMX或Actuator监控线程池使用情况

  2. 压力测试:使用JMeter或wrk进行负载测试,观察线程池表现

  3. JVM调优:根据负载情况调整JVM堆内存和GC参数

  4. 连接池调优:如果使用数据库,确保连接池配置与服务器线程数匹配 (SpringBoot3 + Druid + DynamicDataSource + PgSQL 连接池优化方案-CSDN博客)

附录:Undertow配置属性

Spring Boot 预置了很多属性,可用于在 applicaton.properties | yaml 中对 Undertow 服务器进行个性化配置。

它们都以 server.undertow.* 开头,总结如下:

配置项说明示例
server.undertow.accesslog.dirUndertow 访问日志目录。
server.undertow.accesslog.enabled是否启用访问日志。false
server.undertow.accesslog.pattern访问日志的格式。common
server.undertow.accesslog.prefix日志文件前缀。access_log.
server.undertow.accesslog.rotate是否开启日志滚动。true
server.undertow.accesslog.suffix日志文件后缀。log
server.undertow.always-set-keep-alive是否应在所有响应中添加 Connection: keep-alive Header,即使 HTTP 规范没有要求。true
server.undertow.buffer-size每个 buffer 的大小。默认大小是根据 JVM 可用的最大内存确定的。
server.undertow.decode-slash是否应解码已编码的斜线字符(%2F)。如果前端代理不执行相同的解码,解码可能会导致安全问题。只有在传统应用程序需要时才启用。设置后,server.undertow.allow-encoded-slash 无效。
server.undertow.decode-url是否对 URL 进行解码。禁用时,URL 中的百分比编码字符将保持原样。true
server.undertow.direct-buffers是否在 Java 堆外分配 buffer。默认大小是根据 JVM 可用的最大内存确定的。
server.undertow.eager-filter-init是否应在启动时初始化 servlet Filtertrue
server.undertow.max-cookies允许的最大 cookie 数量。这一限制是为了防止基于哈希碰撞的 DOS 攻击。200
server.undertow.max-headers允许的最大 header 数量。这一限制是为了防止基于哈希碰撞的 DOS 攻击。
server.undertow.max-http-post-sizeHTTP post content 的最大大小。当值为-1(默认值)时,大小为无限。-1B
server.undertow.max-parameters允许查询或路径参数的最大数量。这一限制是为了防止基于哈希碰撞的 DOS 攻击。
server.undertow.no-request-timeout在服务器关闭连接之前,连接在不处理请求的情况下闲置的时间。
server.undertow.options.server.*在 io.undertow.UndertowOptions 中定义的服务器选项。
server.undertow.options.socket.*在 org.xnio.Options 中定义的 socket 选项。
server.undertow.preserve-path-on-forward转发请求时是否保留请求路径。false
server.undertow.threads.ioI/O 线程数。默认值为可用的处理器数量。
server.undertow.threads.workerWorker 线程数。默认为 I/O 线程数的 8 倍。
server.undertow.url-charset用于解码 URL 的字符集。UTF-8
http://www.whsansanxincailiao.cn/news/31972908.html

相关文章:

  • 网站建设的基础资料/百度浏览器下载官方免费
  • 毕设做的网站可以用模板改吗/株洲seo排名
  • 湛江网站的建设/搜索量排名
  • 包头学做网站/网站建设方案开发
  • 做网站写的代号好跟不好的区别/苏州关键词seo排名
  • wordpress限制用户进入页面纯代码/西安seo关键字优化
  • 济邦建设有限公司官方网站/免费模式营销案例
  • 慕课网网站开发背景/中国十大网站排名
  • 建设网站怎么知道真假/毕业设计网站
  • 有人拉我做彩票网站/最近新闻热点大事件
  • 怎样做公司网站banner/销售策略和营销策略
  • 下做图软件在哪个网站下载/网络营销的推广方法有哪些
  • ppt超链接至网站怎么做/世界最新新闻
  • python代码网站/百度自动点击器怎么用
  • 网店网站技术方案/企业推广软件
  • 石家庄网站建设价格低/化妆品推广软文
  • 网站设计师 网站开发工程师/魔贝课凡seo
  • 潍坊网站建设方案托管/nba最新赛程
  • 阿里云虚拟主机与网站吗/百度云盘官网登录入口
  • 制作一个动态企业网站/电脑培训班一般要学多久
  • 网站的倒计时怎么做/想找搜索引擎优化
  • 大学生做推送的网站/seo优化厂商
  • 专业网站建设市场/你就知道
  • 网站改版应该怎么做/苏州seo快速优化
  • 新手建立网站的步骤/网站分析工具
  • 一个基于php网站开发课题设计的业务流程描述/最新新闻事件今天国内大事
  • 做跨境电商一件代发的网站/互联网品牌营销公司
  • 前端做网站都要做哪些/关键词全网搜索指数
  • 做网站优化选阿里巴巴还是百度/百度上怎么打广告宣传
  • 公司做网站买服务器多少钱/今天最新的新闻头条