聊聊如何运用JAVA注解处理器(APT)

2023-04-12
阅读 5 分钟
643
什么是APTAPT(Annotation Processing Tool)它是Java编译期注解处理器,它可以让开发人员在编译期对注解进行处理,通过APT可以获取到注解和被注解对象的相关信息,并根据这些信息在编译期按我们的需求生成java代码模板或者配置文件(比如SPI文件或者spring.fatories)等。APT获取注解及生成代码都是在代码编译时候完成...

IO:阻塞和非阻塞、同步和异步

2023-02-27
阅读 4 分钟
451
阻塞:当数据还没准备好时,调用了阻塞的方法,则线程会被挂起,会让出CPU时间片,此时是无法处理过来的请求,需要等待其他线程来进行唤醒,该线程才能进行后续操作或者处理其他请求。非阻塞:意味着,当数据还没准备好的时候,即便我调用了阻塞方法,该线程也不会被挂起,后续的请求也能够被处理。同步

你知道微服务架构中的“发件箱模式”吗

2023-01-09
阅读 3 分钟
574
前言微服务架构如今非常的流行,这个架构下可能经常会遇到“双写”的场景。双写是指您的应用程序需要在两个不同的系统中更改数据的情况,比如它需要将数据存储在数据库中并向消息队列发送事件。您需要保证这两个操作都会成功。如果两个操作之一失败,您的系统可能会变得不一致。那针对这样的情况有什么好的方法或者设计保...

Apache ShardingSphere在转转亿级交易系统落地实践

2023-01-03
阅读 3 分钟
698
大促期间DB压力大,单库查询qps上万占用大量数据库资源,写性能大大降低;数据与日剧增,单库中包含非常多数据量过数亿的大表,占用空间接近服务器的容量上限;数据量太大,数据备份和恢复需要耗费很长时间,极端情况下丢失数据的风险越高。