赤壁市建设局网站怎么制作邀请函手机版

张小明 2026/3/2 21:35:25
赤壁市建设局网站,怎么制作邀请函手机版,百度搜索关键词排名优化,深圳50强外贸公司排名一、通用优化项 1.缓存错误 问题#xff1a; 原配置缓存了 **/target/。这是构建产物#xff0c;不仅体积大导致上传/下载慢#xff0c;而且会导致 Maven 不重新编译代码#xff0c;可能引发脏构建。 缺失#xff1a; 没有缓存 Maven 依赖库 ( .m2/repository ) 。这意味着…一、通用优化项1.缓存错误问题原配置缓存了**/target/。这是构建产物不仅体积大导致上传/下载慢而且会导致 Maven 不重新编译代码可能引发脏构建。缺失没有缓存Maven依赖库 (.m2/repository)。这意味着每次流水线运行都要从互联网重新下载几百 MB 的 jar 包这是最耗时的步骤。cache: paths: - **/target/优化建议cache: paths: - .m2/repository/ # 缓存 Maven 依赖这是提速的关键 - .sonar/cache/ # 缓存 Sonar 插件2.任务冗余与 Artifacts优化2.1任务冗余问题build和sonarqube分成了两个阶段。应该将能整合的阶段合并避免不必要的传输build阶段打包后将巨大的target目录上传到 GitLab 服务器。sonarqube阶段再下载这个巨大的target目录启动一个新的容器重新配置环境。优化SonarQube 扫描本身就需要编译类。将构建Build和扫描Sonar合并为一个任务既省去了上传/下载产物的时间也省去了启动第二个 Docker 容器的时间。# 一条命令完成清理 - 编译 - 测试 - 扫描 # -Dmaven.test.failure.ignorefalse 确保单元测试失败会中断流水线 - mvn clean compile test sonar:sonar -Dsonar.projectKeytest -Dsonar.host.urlhttp://172.168.20.10:9000/ -Dsonar.logintest --no-snapshot-updates : *common_rules第一部分命令详解可忽略clean(清理)动作删除项目根目录下的target文件夹。目的确保本次构建是“全新”的防止上一次构建留下的旧.class文件干扰本次结果避免“脏构建”。compile(编译)动作把src/main/java下的源代码编译成.class字节码文件。目的Java 代码必须编译后才能运行SonarQube 也需要分析编译后的字节码来提高准确度。test(单元测试)动作编译并运行src/test/java下的单元测试用例。目的确保新写的代码没有把旧功能改坏。关键点运行测试会生成“覆盖率报告”jacoco.execSonarQube 需要读取这个报告来告诉你“代码覆盖率”是多少。sonar:sonar(扫描)动作启动 SonarScanner 插件。目的它会读取源代码、读取第2步生成的.class文件、读取第3步生成的测试报告进行静态代码分析找 Bug、漏洞、代码异味最后把结果打包上传给 SonarQube 服务器。第二部分配置参数-D 传参-Dsonar.projectKeytest含义项目唯一标识。解释在 SonarQube 网页端每个项目都有一个唯一的 ID。你需要把它改成你项目真实的 Key否则 SonarQube 会认为这是一个新项目或者找不到项目。-Dsonar.host.urlhttp://172.168.20.10:9000/含义服务器地址。解释告诉插件把扫描结果发送给哪台服务器。请确保流水线运行的容器能访问通这个内网 IP。-Dsonar.logintest含义身份认证 Token。解释这是登录 SonarQube 的“钥匙”。安全建议直接把 Token 写在代码里硬编码是不安全的。通常建议在 GitLab CI/CD 的设置里配置一个变量$SONAR_TOKEN然后这里写成-Dsonar.login$SONAR_TOKEN。--no-snapshot-updates含义不要检查快照更新。解释如果你的项目依赖了一些公司内部开发的 SNAPSHOT 版本 jar 包比如common-utils-1.0-SNAPSHOT。不加这个参数Maven 默认每天或者每次构建都会去私服 Nexus/Artifactory 询问“在这个 jar 包有没有新版本呀”这很浪费时间。加上这个参数告诉 Maven“别问了本地有啥就用啥除非我强制更新”。这能显著加快构建速度。2.2Artifacts存储优化问题保留整个target目录非常不建议这样做除非你有特殊需求未自动清理Artifacts产物导致存储膨胀占用大量硬盘空间。优化新增expire_in: 1 week参数构建频繁的可以配置1 dayartifacts: paths: - **/target/*.jar # 只保留 jar 包 # - **/target/*.war # 如果是 war 包项目 expire_in: 1 week # 建议稍微久一点方便一周内回滚3.克隆优化问题有些项目历史版本众多且文件较大导致拉取代码非常慢除了 SonarQube 需要完整的 git 历史外其他步骤不需要。优化定义全局变量默认浅克隆加快拉取速度workflow: rules: - if: $CI_PIPELINE_SOURCE merge_request_event # 定义全局变量和锚点 variables: # 默认浅克隆加快拉取速度Sonar 任务中会覆盖此设置 GIT_DEPTH: 1二、特殊优化项1.缓存策略优化缓存策略三种写法写法 A全局共享最推荐用于 Maven 依赖cache: key: maven-global-cache # 共享缓存池的名称 paths: - .m2/repository/优点速度最快。dev分支刚下载的包master分支立马能用。节省磁盘空间。缺点如果有两个流水线同时运行并试图写入缓存可能会冲突但在 Maven 下载依赖场景下通常不是大问题。写法 B按分支隔离最推荐用于 node_modules 或构建产物基于分支cache: key: $CI_COMMIT_REF_SLUG # 这是一个变量代表当前分支名如 master, dev paths: - node_modules/含义master分支有自己名为master的箱子。dev分支有自己名为dev的箱子。优点绝对安全分支之间互不干扰。缺点很慢。当你新建一个feature-login分支时因为它是全新的 key它没有任何缓存必须从头下载所有依赖。写法 C基于分支文件智能缓存cache: key: files: - pom.xml # 只有当 pom.xml 文件内容变了才生成新的 key paths: - .m2/repository/含义只要pom.xml没变大家就一直用同一个缓存。一旦你修改了依赖系统会自动生成一个新的干净缓存。总结与建议针对Java/Maven 项目1.推荐保持的配置写法 Akey: maven-sonar-cache理由Java 的 jar 包是跨分支通用的。spring-boot-starter-web在 dev 分支和 master 分支是一模一样的东西。没必要隔离大家共用一个库下载一次全员加速。2.特性功能如果你使用的是 写法 B基于分支GitLab 确实有一个高级特性叫fallback_keys可以实现“如果 feature 分支没缓存就去借用 master 的”。3.前端构建扫描优化核心区别对比差异点后端 (Java)前端 (Vue/React)基础镜像maven:3.6-jdk-11node:16 (或 14/18)构建工具mvn (Maven)npm 或 yarn依赖缓存.m2/repositorynode_modules编译命令mvn compilenpm run build产物形式.jar 包dist/ 文件夹 (HTML/CSS/JS)扫描工具Maven 的 Sonar 插件sonar-scanner (需要独立安装)部分示例# --- 前端核心任务 --- frontend-job: stage: build-and-scan #注意请根据你项目的实际 node 版本修改推荐 node:14 或 node:16 image: node:16 tags: - edfs - api - prod cache: key: frontend-node-modules # 全局共享缓存 paths: - node_modules/ # 缓存依赖包 (提速核心) - .npm/ # 缓存 npm 缓存数据 - .sonar/cache/ # 缓存 sonar 插件 script: - node -v - npm -v # 1. 设置淘宝/腾讯镜像源 (极大提升 npm install 速度) - npm config set registry https://registry.npmmirror.com # 2. 安装依赖 (如果缓存里有这一步会飞快) - npm install # 3. 编译打包 - npm run build # 4. 安装 Sonar 扫描器并执行扫描 # 前端不像 Maven 自带插件需要临时安装一个扫描器工具 - npm install -g sonarqube-scanner - sonar-scanner -Dsonar.projectKey前端项目的Key_注意修改 -Dsonar.host.urlhttp://172.16.100.90:9000/ -Dsonar.loginsqp_fda99b2a2149ed3665069ca5d739b5c9755c9930 -Dsonar.sourcessrc -Dsonar.exclusions**/node_modules/**,**/dist/** : *common_rules artifacts: paths: - dist/ # 前端通常保留 dist 目录用于部署 Nginx expire_in: 1 day前端扫描必须加这个参数-Dsonar.exclusions/node_modules/,/dist/如果不加SonarQube 会去扫描node_modules里成千上万个第三方库的文件导致扫描时间无限拉长可能跑 1 个小时。报告里出现几万个不属于你的 Bug。服务器卡死。
版权声明:本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!

做的比较好看的网站重庆网站制作有哪些

数据中台在大数据领域的行业应用对比关键词:数据中台、大数据、行业应用、数据治理、数据资产、数字化转型、跨行业对比摘要:本文系统分析数据中台在零售、金融、制造、医疗、物流等核心行业的应用差异与共性,通过技术架构解析、典型案例对比…

张小明 2026/1/10 16:13:18 网站建设

天津市建设教育培训中心网站求做网站

🔥 为什么程序员必须懂大模型? 2025年,大模型已从"概念热"全面转向"落地潮",AI Agent、轻量化部署、多模态融合成为技术风口。无论是用Llama 3做行业微调,还是用LangChain搭智能工作流&#xff0c…

张小明 2026/1/11 0:39:34 网站建设

杭州电商网站建设百姓网

模板字符串的真正威力:不只是语法糖,而是现代 JavaScript 的基石你有没有试过这样写代码?var message Hello, my name is name and I am age years old.;一行还没写完,引号、加号、变量来回切换,眼睛都快花了…

张小明 2026/1/10 5:26:16 网站建设

推广网站报价外贸网站建设收款通道

如何快速掌握机械振动信号分析:完整实战指南 【免费下载链接】机械故障诊断与振动信号数据集 本仓库提供了一个振动信号数据集,旨在帮助工程师和科学家对机械设备的振动信号进行分析和处理。该数据集包含了多个振动信号示例,适用于故障检测、…

张小明 2026/1/10 2:52:03 网站建设

按城市亭湖建设局网站苏州做网站多少钱

QuickLook远程预览:如何实现FTP/SFTP文件的无缝预览体验 【免费下载链接】QuickLook 项目地址: https://gitcode.com/gh_mirrors/qui/QuickLook 作为Windows平台上备受推崇的快速文件预览工具,QuickLook的远程文件预览功能彻底改变了传统文件访问…

张小明 2026/1/11 16:25:44 网站建设

如何搭建企业网站网页截图快捷键可拉动

Markdown浏览器插件:重塑你的文档阅读体验 【免费下载链接】markdown-viewer Markdown Viewer / Browser Extension 项目地址: https://gitcode.com/gh_mirrors/ma/markdown-viewer 还在为单调的技术文档阅读而烦恼吗?每天面对GitHub、技术博客和…

张小明 2026/1/12 9:54:43 网站建设