KL个人博客 首页>>2020-07

Quarkus的No timezone mapping entry for 'CST'异常(11)

Quarkus的No timezone mapping entry for 'CST'异常(11)

前言 quarkus应用使用Graalvm打包成native image后,运行时抛No timezone mapping entry for \'CST\'的异常,这个异常是说环境里缺少CST的时区,默认的quarkus的数据库驱动是用的mysql8的,在mysql8里如果你的连接没有配置时区参数,默认的就是CST时区。所以,如果你显示的配置了时区的名称,可能异常就是报不能映射你配置的时区了,解决这个问题只需在 配置文件中加入一个参数即可。 Quarkus技术交流QQ...

阅读全文 »

阿里巴巴的GraalVM Native-image(10)

阿里巴巴的GraalVM Native-image(10)

前言 这是阿里巴巴jvm团队供稿给graal官方的一篇博文,原文是英文,博主英文水平有限,这里直接Google机译成中文分享下。 原文地址: https://medium.com/graalvm/alibaba-at-scale-2944163c92e 背景 云计算旨在提供计算资源即服务,而云计算的核心原理是仅使用运行应用程序所需的那些资源,并在需要时进行扩展。 为了利用云计算的优势,开发人员应根据此原则设计和编写应用程序。 微服务架构将...

阅读全文 »

Quarkus经GraalVM native-image编译后启动只需0.07秒(9)

Quarkus经GraalVM native-image编译后启动只需0.07秒(9)

前言 quarkus号称超音速亚原子JAVA为Graalvm量身定制的java堆栈,是否名副其实呢?下面就来看看真实情况如何。动手前先简单介绍下 Graalvm,它是oracle出品的一个AOT编译器,可以将应用程序编译成本地映像,通俗的说可以将java编译成机器可直接执行的程序,可以参考go语言的编译输出产物。而且graalvm不仅仅支持java,对其他语言也有很好的支持。下面先看一张quarkus的java应用程序在传统的vm...

阅读全文 »

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

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

前言 dubbo是一个流行的使用广泛的服务治理型RPC框架,博主所在公司,大量服务都是使用dubbo来暴露和调用的,如果想要使用quarkus替换spring boot来做业务系统,肯定要在quarkus中解决dubbo集成的问题。好在dubbo的设计比较优良,除了提供在spring环境下的自动装备加载,还可以通过手动编程的方式集成dubbo。不过,如果去确定使用quarkus作为主要的开发框架的话,最终的目标应该是将服务直接...

阅读全文 »

Quarkus集成open api使用swagger ui(7)

Quarkus集成open api使用swagger ui(7)

前言 Quarkus中对swagger ui也有支持,但是和spring 中直接集成swagger ui功能不同,Quarkus中使用open api规范得到接口的json数据,然后使用swagger ui展示。所以在Quarkus中集成swagger ui时,会发现没有swagger ui哪些接口标记注解了,取而代之的是open api规范中的注解了。下面来捋一捋他们的关系,看看怎么在Quarkus中使用。 ...

阅读全文 »

Quarkus中的依赖注入(DI)和aop编程(6)

Quarkus中的依赖注入(DI)和aop编程(6)

quarkus...

阅读全文 »

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

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

前言 加密配置是一个很常见的需求,在spring boot生态中,已经有非常多的第三方starter实现了,博主所在公司也有这种强制要求,一些敏感配置信息必须加密,比如第三方账号,数据库密码等等。所以研究了下怎么在Quarkus中实现类似的配置加密功能。在前文 《Quarkus集成apollo配置中心 》 中,已经有介绍过Quarkus中的配置架构了,配置加密功能也是基于smallrye-config来实现。 Quarkus技术交流Q...

阅读全文 »

Quarkus中过滤器filter和跨域cors问题(4)

Quarkus中过滤器filter和跨域cors问题(4)

前言 Quarkus中的web模块是基于java标准web规范jax-rs构建的,实现则选用了jboss的resteasy。这部分只是请求路由转发部分实现。真正的请求接收则使用了eclipse开源的vert.x框架,底层也是基于netty的一个响应式开发框架。Quarkus将vert.x和resteasy集成在了一起,所以支持响应式和非响应式应用混合开发,这也是Quarkus的一大卖点。基于以上的认知,我们来看看在Quarkus中,怎么写过滤器和解决跨域的...

阅读全文 »

Quarkus集成apollo配置中心(3)

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 Co...

阅读全文 »

Quarkus入门之创建项目搭建debug环境(2)

Quarkus入门之创建项目搭建debug环境(2)

前言 在学习一个新的框架技术前,肯定要先来一套hello word,搭建基本的运行环境和调试环境。今天来创建一个Quarkus的应用 Quarkus技术交流QQ群: 871808563 搭建Quarkus项目 下面介绍三种创建Quarkus项目的方式 纯手工方式 1、创建maven工程,这个不多赘述,是个java程序员都会的 2、添加Quarkus依赖,下面贴出基本的依赖 properties quarkus-plugin.version1.6.0.Final/quarkus-plugin.version quarkus.platform.version1.6.0.F...

阅读全文 »