首页
学习
活动
专区
圈层
工具
发布
    • 综合排序
    • 最热优先
    • 最新优先
    时间不限
  • 来自专栏软件

    Quarkus初体验

    什么是Quarkus? Quarkus是为GraalVM和HotSpot量身定制的Kubernetes Native Java框架,由最佳的Java库和标准精心打造而成。 创建新的Quarkus项目的最简单方法是打开一个终端并运行以下命令: 对于Linux和MacOS用户 mvn io.quarkus:quarkus-maven-plugin:1.10.5.Final: 您将找到Quarkus BOM的导入,从而可以忽略不同Quarkus依赖项上的版本。此外,您可以看到quarkus-maven-plugin负责应用程序打包的人员,还提供了开发模式。 :quarkus-resteasy-mutiny存在对RESTEasy扩展名()的Mutiny支持,需要添加io.quarkus:quarkus-resteasy-mutiny依赖,官方提供了两种添加依赖的方式 方式一: mvn io.quarkus:quarkus-maven-plugin:1.10.5.Final:add-extensions \ -Dextensions="io.quarkus:

    1.9K20发布于 2021-08-09
  • 来自专栏Java工程师成长之路

    Quarkus实战》总结

    一、优势 占用内容小,启动速度快,只要几分之一秒,可以在k8s部署尽可能多的实例,快速运行 开发热部署,边改代码直接生效 二、搭建脚手架 命令方式创建 mvn io.quarkus:quarkus-maven-plugin quarkus.http.cors=true quarkus.http.cors.origins=http://example.com quarkus.http.cors.methods=GET,PUT 举例: 3)修改日志配置 只需修改quarkus.log.level设置 quarkus.log.level=DEBUG 限制类的日志级别 五、编程模型 1)校验输入值和输出值 使用Bean Validation io.quarkus.runtime.StartupEvent和io.quarkus.runtime.ShutdownEvent事件:在应用程序启动时,Quarkus会产生StartupEvent事件; :add-extension -Dextensions="quarkus-elytron-security-jdbc,quarkus-jdbc-mysql" 配置 quarkus: security

    3K10编辑于 2022-12-29
  • 来自专栏软件

    Quarkus操作PostgreSQL

    使用反应性API Quarkus使用Mutiny模型提供了许多反应API。在本节中,我们将了解如何使用反应式PostgreSQL驱动程序以非阻塞和反应式的方式与数据库交互。 ,下载地址:https://www.enterprisedb.com/downloads/postgres-postgresql-downloads 那就直接开始操作,创建一个新的项目 mvn io.quarkus >io.quarkus</groupId> <artifactId>quarkus-reactive-pg-client</artifactId> </dependency> <dependency > <groupId>io.quarkus</groupId> <artifactId>quarkus-resteasy-mutiny</artifactId> </dependency =postgresql #账号 quarkus.datasource.username=postgres #密码 quarkus.datasource.password=123456 #连接地址 quarkus.datasource.reactive.url

    1.7K50发布于 2021-08-09
  • 来自专栏冷冷

    Spring Boot 快速迁移至 Quarkus

    Quarkus 是一个目前非常火的 Java 应用开发框架,定位是轻量级的微服务框架。 quarkus-bom 管理了全部 quarkus 插件 maven 依赖的版本信息,引入后所有依赖不需要再定义版本。 > <dependency> <groupId>io.quarkus</groupId> <artifactId>quarkus-spring-web</artifactId> </dependency quarkus.datasource.username=root quarkus.datasource.password=root quarkus.datasource.jdbc.url=jdbc:mysql ] (Quarkus Main Thread) Quarkus 1.10.5.Final on JVM started in 4.613s.

    2K20发布于 2021-01-21
  • 来自专栏kl的专栏

    Quarkus集成apollo配置中心(3)

    前言 Quarkus默认的配置文件和spring boot 一样,默认读取application.properties文件。apollo是一个配置集中管理的开源项目,已被广泛应用。 下面我们就分析下Quarkus的配置加载结构,将apollo集成进来。 Quarkus技术交流QQ群:871808563 Eclipse MicroProfile Config:https://github.com/eclipse/microprofile-config/ smallrye-config:https://github.com/smallrye/smallrye-config Quarkus的config构成 Quarkus的配置功能是基于Eclipse MicroProfile Config配置规范而来的,MicroProfile Config本身不提供配置功能的实现,只提供了基础的配置api抽象,smallrye-config是这个api的其中一个实现,Quarkus里用的就是

    57930编辑于 2023-11-18
  • 来自专栏实战docker

    quarkus实战之六:配置

    欢迎访问我的GitHub 这里分类和汇总了欣宸的全部原创(含配套源码):https://github.com/zq2599/blog_demos 本篇概览 本文是《quarkus实战》系列的第六篇,咱们来掌握一个常用知识点 :配置 如同SpringBoot中的application.properties文件,对一个quarkus应用来说,配置是其重要的组成部分,web端口、数据库这些重要信息都放在配置中,咱们在编码时也会将一些业务参数做成配置 :quarkus-maven-plugin:create" \ -DprojectGroupId="com.bolingcavalry" \ -DprojectArtifactId="hello-quarkus quarkus提供了一个生成UUID的方式,可以低成本解决上述问题,如下所示,应用启动时,${quarkus.uuid}会生成一个UUID,此时的greeting.message的值也是唯一的 greeting.message =hello, ${quarkus.uuid} 运行应用试试,如下图,UUID成功生成了 多刷几次浏览器,UUID始终不变,看来此UUID在整个进程存活期间都不会改变 重启应用,再用浏览器访问,如下图

    1.5K20编辑于 2022-04-13
  • 来自专栏实战docker

    quarkus实战之八:profile

    ,也就是说服务端口是8081,另外两个配置%production.quarkus.http.port和quarkus.http.port都无效 启动应用验证,我这是用mvn quarkus:dev命令启动的 =dev # 指定parent的名字 quarkus.config.profile.parent=common %common.quarkus.http.port=9090 %dev.quarkus.http.ssl-port 对于配置项quarkus.http.port,由于没找到%dev.quarkus.http.port,就去找parent profile的配置,于是找到了%common.quarkus.http.port ,所以值为9090 对于配置项quarkus.http.ssl-port,由于找到了%dev.quarkus.http.ssl-port,所以值为9443 对于配置项quarkus.http.port, 如果%dev.quarkus.http.port和%common.quarkus.http.port都不存在,会用quarkus.http.port,值为8080 修改默认profile 前面曾说到,启动的时候如果不指定

    1K20编辑于 2022-04-13
  • 来自专栏实战docker

    quarkus实战之一:准备工作

    欢迎访问我的GitHub 这里分类和汇总了欣宸的全部原创(含配套源码):https://github.com/zq2599/blog_demo 关于《quarkus实战》系列 《quarkus实战》系列是欣宸在 被以上问题困扰了很久,直到遇见 quarkus,当然了,它还没强大到解决上述所有问题,但它给了我方向和希望:java领域也有面向云原生的完整方案 关于quarkus quarkus是为GraalVM 和 官网:https://quarkus.io quarkus的github仓库:https://github.com/quarkusio/quarkus 来看看quarkus的特点,官网用了超大字体描述, 内容简洁:超音速、亚原子的JAVA 五大特点分别如下: 容器优先 命令式和响应式 社区和标准的支持 kubernetes原生 对开发者友好 来看看官网给出的对比数据,如下图,如果使用的是quarkus 框架和GraalVM虚拟机,在内存方面对比传统框架有一个数量级的优势,而响应时间差距已不止一个数量级: 容器化的路上,选择quarkus是个不错的选择 本篇概览 作为《quarkus实战》系列的开篇,

    95430编辑于 2022-04-13
  • 来自专栏实战docker

    quarkus实战之七:使用配置

    :quarkus-maven-plugin:create" \ -DprojectGroupId="com.bolingcavalry" \ -DprojectArtifactId="hello-quarkus quarkus内置的配置项了,您可以参考这份官方提供的配置项列表,里面有详细说明:https://quarkus.io/guides/all-config 上述文档中,有很多配置项带有加锁的图标,如下图红框所示 其实还是有办法的,官方文档指明,如果业务的情况特殊,一定要变,就走热部署的途径,您可以参考《quarkus实战之四:远程热部署》 官方对开发者的建议:在开发quarkus应用的时候,不要使用quarkus 作为配置项的前缀,因为目前quarkus框架及其插件们的配置项的前缀都是quarkus,应用开发应该避免和框架使用相同的配置项前缀,以免冲突 至此,咱们已经学习了如何在quarkus应用中使用配置项, 接下来还会一起实践更多的quarkus基础知识,锁定《quarkus实战》专辑,欣宸不会辜负您的期待

    1.6K30编辑于 2022-04-13
  • 来自专栏IT大咖说

    Quarkus是Java的未来吗?

    介绍 Quarkus是Java世界的最新成员。由Redhat发起的这种开源框架已经讨论了一段时间。它缩短了启动时间,降低了执行成本,提高了生产率。 这就是为什么有人已经将Quarkus视为Java的未来。 它旨在允许开发所谓的云原生Java应用程序或" Kubernetes本机"以使用其术语。 本机编译 通过使用GraalVM提供的本机编译(从Quarkus.io上的可用数据计算得出的百分比),Quarkus将引导时间减少了约99%,将传统Java应用程序的内存占用减少了约86%。 为了实现这些改进,Quarkus利用GraalVM和容器来构建本机Java可执行文件。然后优化可执行文件以在定义的环境中运行。 (本文翻译自Sofiene Ben Khemis的文章《Is Quarkus the future of Java?》

    4.3K20发布于 2020-05-19
  • 来自专栏阿杰

    Quarkus学习四 - 项目开发到部署

    Provisional headers are shown后端报错: io.vertx.core.impl.NoStackTraceThrowable可能使用姿势不当,但是照着官网写的代码出现这样子多多少少也有quarkus MAVEN_HOME}/bingitsudo apt-get install git作为服务器,能拉代码就成,因此采用https协议使用git命令进行项目的clone项目启动cd到项目的目录下mvn quarkus

    1K00编辑于 2022-07-04
  • 来自专栏实战docker

    quarkus实战之五:细说maven插件

    在依赖quarkus的BOM,以及quarkus插件时,都要指定GAV,这是G platformArtifactId quarkus-bom 在依赖quarkus的BOM,以及quarkus插件时,都要指定 - io.quarkus:quarkus-jdbc-h2 - io.quarkus:quarkus-jdbc-mariadb - io.quarkus:quarkus-jdbc-mssql io.quarkus.platform:quarkus-bom: [INFO] io.quarkus:quarkus-jackson [INFO] io.quarkus:quarkus-config-yaml [INFO] io.quarkus:quarkus-arc [INFO] io.quarkus:quarkus-jdbc-mysql [INFO] io.quarkus:quarkus-resteasy io.quarkus:quarkus-arc [INFO] io.quarkus:quarkus-resteasy [INFO] io.quarkus:quarkus-agroal [INFO]

    2K20编辑于 2022-04-13
  • 来自专栏实战docker

    quarkus实战之四:远程热部署

    欢迎访问我的GitHub 这里分类和汇总了欣宸的全部原创(含配套源码):https://github.com/zq2599/blog_demos 本篇概览 本文是《quarkus实战》系列的第四篇,如标题所示 答案是可以,接下来咱们一起实战如何远程调试quarkus应用 牢记来自官方的警告 如下图红框所示,来自官方的警告咱们一定要牢记在心,远程热部署功能有巨大安全隐患,不要用在生产环境: 在服务器上的运行方式 的maven工程 mvn "io.quarkus:quarkus-maven-plugin:create" \ -DprojectGroupId="com.bolingcavalry" \ -DprojectArtifactId ="hello-quarkus" \ -DprojectVersion="1.0-SNAPSHOT" \ -DclassName="HobbyResource" \ -Dpath="actions [io.qua.ver.htt.dep.dev.HttpRemoteDevClient] (Remote dev client thread) Sending lib/deployment/.io.quarkus.quarkus-resteasy-common-spi

    81820编辑于 2022-04-13
  • 来自专栏阿杰

    Quarkus学习一 - getting-started

    为什么学习Quarkus本地环境学习流程通过终端创建项目Bean的注入总结为什么学习Quarkus从效果上来看SpringBoot3.0和Quarkus要做的事情是相同的,但是SpringBoot3.0 毕竟会有很多历史包袱,很多标准规范在Spring中是通过适配的方式来实现的,GraalVM - 云原生时代的 Java 笔记 博客中在对GraalVM诞生背景中提到 Quarkus是在GraalVM上另起炉灶开发新的 Java应用;Quarkus相对比较新,社区也够活跃,想来目前很多标准规范也是严格执行的,基于此,学习下Quarkus参考网址没有特别多的Quarkus的文档,因此主要以官方文档为主进行学习https: //quarkus.io/guides/getting-started本地环境JDK<官网要求最低11>$ java -versionjava version "18.0.1.1" 2022-04-22Java , vertx]2022-06-13 15:38:08,166 INFO [io.quarkus] (main) getting-started stopped in 0.034s5.

    1.3K40编辑于 2022-06-14
  • 来自专栏实战docker

    quarkus依赖注入之一:创建bean

    框架的依赖注入 关于《quarkus依赖注入》系列 《quarkus依赖注入》共六篇文章,整体规划上隶属于《quarkus实战》系列,但专注于依赖注入的知识点和实战 如果您熟悉spring的依赖注入 ,那么阅读本系列时会发现quarkus与spring之间有太多相似之处,很多地方一看就懂 本篇概览 作为《quarkus依赖注入》的开篇,本文先介绍CDI,再学习如何创建bean实例,全文内容如下 image.png ,编译器名为Substrate VM,操作私有变量需要用到反射,而GraalVM使用反射的限制,导致静态编译的文件体积增大 Quarkus is designed with Substrate VM in 文件夹下,如下图红框 quarkus-tutorials是个父工程,里面有多个module,本篇实战的module是basic-di,如下图红框 创建demo工程 您可以参考《quarkus实战之二 没有任何关系 下面的代码演示了用注解修饰方法,使得quarkus调用此方法,将返回值作为bean实例注册到容器中,Produces通知quarkus做实例化,ApplicationScoped表明了bean

    1.6K50编辑于 2022-04-13
  • 来自专栏kl的专栏

    Quarkus云原生java框架简介(1)

    前言 Quarkus 是小红帽开源的专门针对云容器环境优化的云原生java框架,目前已迭代到1.6.0版本,已完成了大部分的框架库的集成扩展,为了让你低成本迁移到Quarkus来,它兼容主流的框架开发模式 Quarkus交流QQ群:871808563 github项目地址:https://github.com/quarkusio/quarkus 官网地址:https://quarkus.io/ 下面是小红帽官方对 Quarkus的介绍: 什么是quarkus? 为什么用quarkus? 专为开发人员而设计 1、Quarkus 的设计从一开始就立足于简单易用,其功能几乎不需要配置即可正常使用。 Quarkus 开发模型可以适应您正在开发的任何应用。

    1.2K40编辑于 2023-11-18
  • 来自专栏深度学习与python

    Quarkus 开发基于 LangChain4j 的扩展,方便将 LLM 集成到 Quarkus 应用程序中

    这将允许开发人员将大语言模型(LLM)集成到他们的 Quarkus 应用程序中。Quarkus LangChain4J 第一个公开版本,即 0.1 版本,在 2023 年 11 月中旬发布。 与传统代码不同,quarkus-langchain扩展保留了与 LLM 交互的方式,允许开发人员通过自然语言定义范围和任务。 Quarkus 提供了一个 Ingestor 来简化信息的摄入。 Quarkus 在这里使用的是 Retriever。 Quarkus 紧跟 Spring Framework 的脚步,加入了嵌入 AI 能力的行列。

    1.8K10编辑于 2024-01-11
  • 来自专栏kl的专栏

    Quarkus集成Dubbo Rpc远程通讯框架(8)

    前言 dubbo是一个流行的使用广泛的服务治理型RPC框架,博主所在公司,大量服务都是使用dubbo来暴露和调用的,如果想要使用quarkus替换spring boot来做业务系统,肯定要在quarkus 不过,如果确定使用quarkus作为主要的开发框架的话,最终的目标应该是将服务直接注册到k8s的service中,就不需要dubbo或者grpc这种远程通讯框架了。 定义好后,可以在配置文件中新增如下配置: quarkus.dubbo.name = kl quarkus.dubbo.registr-address = nacos://nacos-xxx.com:80 quarkus.dubbo.protocol.name = dubbo quarkus.dubbo.protocol.port = 20330 应用启动时,创建DubboProperties实例,并将配置文件中的相关配置设置到对应的属性中 相信随着对Quarkus和CDI的深入了解,这块也会有突破,那个时候就可以像spring中那么使用dubbo了

    66330编辑于 2023-11-18
  • 来自专栏kl的专栏

    Quarkus改造Pmml模型项目异常记录(16)

    前言 这个项目是一个PMML模型跑分系统,在使用quarkus架构对其改造的过程中,在加载PMML模型时,抛了一个异常,在网上找了很多资料都没有解决,pmml项目的issue中也没有找到相关的内容,故在此记录下 ,给遇到问题的你做个参考 Quarkus技术交流QQ群:871808563 jpmml-evaluator:https://github.com/jpmml/jpmml-evaluator 异常如下: constraint violation: when resolving field "DATETIME" of type javax.xml.namespace.QName, the class loader io.quarkus.bootstrap.classloading.QuarkusClassLoader @58fd1214 (instance of io.quarkus.bootstrap.classloading.QuarkusClassLoader, child of 'platform' jdk.internal.loader.ClassLoaders

    31320编辑于 2023-11-18
  • 来自专栏kl的专栏

    Quarkus的ConfigSourceInterceptor实现加密配置(5)

    所以研究了下怎么在Quarkus中实现类似的配置加密功能。 在前文《Quarkus集成apollo配置中心》中,已经有介绍过Quarkus中的配置架构了,配置加密功能也是基于smallrye-config来实现。 前文《Quarkus集成apollo配置中心》中,我们已了解Quarkus的配置基于Eclipse MicroProfile Config的规范和smallrye-config的实现,但是ConfigSourceInterceptor ,然后做解密处理 结语 总的来说,Quarkus中使用的一些api设计是非常优秀的的,通过预留的这种扩展机制,可以非常轻松的实现扩展功能。 到目前为止,博主体验Quarkus越来越有劲,有小伙伴一起玩的记得加群哦

    63320编辑于 2023-11-18
领券