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

如何做京东商城一样的网站wordpress js错误

如何做京东商城一样的网站,wordpress js错误,营业执照年报入口,工厂管理软件曾今Go语言里让我最艳羡的两个特性#xff0c;一个是Goroutine#xff0c;一个是native编译。 Java 21的虚线程实现了类似Goroutine的能力。Spring Boot 3.x开始提供了GraalVM的支持#xff0c;现在Spring Boot也能打包成native文件了。 这一篇文章的目标是用一个案例讲解如…曾今Go语言里让我最艳羡的两个特性一个是Goroutine一个是native编译。 Java 21的虚线程实现了类似Goroutine的能力。Spring Boot 3.x开始提供了GraalVM的支持现在Spring Boot也能打包成native文件了。 这一篇文章的目标是用一个案例讲解如何将Spring Boot应用打包成native文件。整个过程主要是4步: 环境准备讲解怎么安装GraalVM安装本地编译器(gcccl)测试工程创建一个极简的Spring Boot应用只有个Controller编译打包使用GraalVM、Maven将Spring Boot应用构建成可执行文件测试运行执行生成的可执行文件访问Controller看是否正常 1. 环境准备 1. 前置条件 GraalVM依赖一些本地工具才能完成工作这些工具包括: C的头文件glibc-develzlibgcclibstdc-static 不同的操作系统采用的安装方式不同在Linux下可以使用包管理工具安装比如yum、apt等 Linux yum install gcc glibc-devel zlib-devel apt-get install build-essential libz-dev zlib1g-dev Windows Windows可以通过安装Visual Studio完成依赖包安装 安装Visual Studio Build Tools安装Visual Studio 2. 安装GraalVM 从官网选择Java版本、平台来下载下载的zip包解压即安装接下来只要设置环境变量JAVA_HOME、PATH即可 设置GRAALVM_HOME为解压文件夹的根目录设置PATH为解压文件夹下的bin 3. 验证安装 通过执行native-image --help确认我们安装成功 4. 参考资料 关于GraalVM的安装过程可以参考官方的Get Started文档: Getting Started with GraalVM 2. 测试工程 1. 创建工程 使用mvn archetype:generate根据archetype maven-archetype-quickstart生成一个最简单的Java项目。 mvn archetype:generate -DarchetypeGroupIdorg.apache.maven.archetypes -DarchetypeArtifactIdmaven-archetype-quickstart -DarchetypeVersion1.4 -DgroupIdcom.keyniu.dis -DartifactIdDiveInSpring -Dversion0.1 -Dpackagecom.keyniu.dis -DinteractiveModefalse 2. 添加Spring Boot支持 修改pom.xml选择spring-boot-starter-parent作为parent添加native-maven-plugin插件 ?xml version1.0 encodingUTF-8?project xmlnshttp://maven.apache.org/POM/4.0.0 xmlns:xsihttp://www.w3.org/2001/XMLSchema-instancexsi:schemaLocationhttp://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsdmodelVersion4.0.0/modelVersiongroupIdcom.keyniu.dis/groupIdartifactIdDiveInSpring/artifactIdversion0.1/versionnameDiveInSpring/nameparentgroupIdorg.springframework.boot/groupIdartifactIdspring-boot-starter-parent/artifactIdversion3.3.0/version/parentpropertiesproject.build.sourceEncodingUTF-8/project.build.sourceEncodingmaven.compiler.source17/maven.compiler.sourcemaven.compiler.target17/maven.compiler.target/propertiesdependenciesdependencygroupIdorg.springframework.boot/groupIdartifactIdspring-boot-starter-web/artifactId/dependencydependencygroupIdjunit/groupIdartifactIdjunit/artifactIdversion4.11/versionscopetest/scope/dependency/dependenciesbuildpluginsplugingroupIdorg.graalvm.buildtools/groupIdartifactIdnative-maven-plugin/artifactId/plugin/plugins/build/project3. 添加测试类 写一个最简单启动引导类提供一个最简单的接口/hello用于后续测试。 package com.keyniu.dis;import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.RestController;SpringBootApplication RestController public class DiveInMain {GetMapping(/hello)public String hello(RequestParam(name) String name) {return hello, name;}public static void main(String[] args) {SpringApplication.run(DiveInMain.class);} }3. 编译打包 1. 命令行窗口 为了让GraalVM能引用到VisualStudio的编译工具我选择在x64 Native Tools窗口中运行接下来的命令。 在执行命令之前确保你的环境变量设置正确有添加GraalVM相关的配置 set GRAALVM_HOMED:\Programs\GraalVM set PATHD:\Programs\GraalVM\bin;%PATH% 2. 进行native编译 在工程的根目录下执行mvn -Pnative native:compile进行编译最后会生成一个exe到工程的target目录下输入如下 D:\Workspace\DiveInSpringmvn -Pnative native:compile ... Produced artifacts:D:\Workspace\DiveInSpring\target\DiveInSpring.exe (executable) 4. 测试运行 只需要在命令行里输入DiveInSpring.exe执行可以看到只需要0.063s就能完成启动这个项目如果通过java -jar启动的话大概耗时0.97s还是快了很多的。打包后的exe文件大小是80M。 通过curl命令验证接口正常提供服务 5. 使用建议 可以看到整个构建过程已经相当的顺畅从可执行文件的大小启动时间内存占用都于明显的提升应该说Spring GraalVM离成熟应用已经不远了。由于GraalVM使用了Closed World Optimization实际上这个可执行程序还是有一些限制的主要是: Class初始化有些初始化会在build期间完成可以参考GraalVM文档: Class Initialization in Native Image反射和动态代理需要的编译期间完成不支持JNI如果有本地方法调用需要根据GraalVM提供的接口定制实现执行时无法访问字节码正常的debug、监控等用JVM TI实现的功能都不再可用 在SpringBoot中 像profiles、 条件配置、 Enable*等功能会受到影响而其实这些特性正在被广泛使用这些限制在完全解决之前实际使用还是有障碍的。关于可以执行文件的DEBUG、监控在GraalVM官网都已经有对应的文档但是将它和公司内部的监控报警做集成还有一段路要走已经看到黎明的曙光了。 A. 参考资料 GraalVM构建Swing应用使用GDB Debug由GraalVM构建的程序Debug Native Executables with GDB让可执行文件支持JFRBuild and Run Native Executables with JFR手动创建Spring Boot工程
http://www.hkea.cn/news/14560229/

相关文章:

  • 网站怎么做到秒收录wordpress绝对链接转相对
  • 泉州科技云网站建设便利的聊城网站建设
  • 在浴室里做的网站网站建设东莞公司
  • 别人做的网站自己想更新全国装修公司前50强
  • 天津网站建设要多少钱wordpress ip修改
  • 站长工具seo综合查询php网站开发实训实践总结
  • 中关村能力建设网站网站备份和备案的区别
  • wordpress文章页调用分类列表网站建设优化保定
  • 东莞网站建设公司怎么做wordpress外部调用插件
  • 建设银行官方网站登录电脑版公司做网站要注意什么
  • 江苏建设部官方网站wordpress 会员发帖
  • 各大设计网站企业网站建设及维护费用
  • 网站制作维护怎么做钓鱼网站呢
  • 做大型网站需要多少钱网站建设的客户需求分析调研表
  • 网站策划做营销推广服饰网站建设技术方案
  • 高端网站建设过程做海报图片去哪个网站找 知乎
  • 全站仪建站流程阿里云建设网站的步骤
  • 发外链的网站都要企业注册单位门户网站可以做百度百科
  • 张家口百度免费做网站西安外贸网站建设公司
  • wordpress网站下载网络营销的特点有哪些?
  • 小公司网站建设费用河南网站怎么备案
  • 网站空间到期了回忆网站模板
  • 不用php做网站做网站的项目开发计划书
  • 西青网站文化建设什么网站可以做兼职 知乎
  • 兰州网站程序建设dede 网站地图模板htm
  • 微擎怎么做网站需要锦州网站建设
  • 企业管理信息系统网站wordpress分布式
  • 十大免费网站推广平台有哪些网站开发接外包
  • 织梦网站做瀑布流方便旅游网站系统的设计与实现
  • 网站建设语录外包人员