应用开发

浅析JAVA日志中的几则性能实践与原理解释

程序记录日志的过程,就是将需要记录的内容写入到磁盘文件中的过程。与生活的物流场景类似,好比是一车货物通过一套运输体系运送至目的地的过程,然而在这套物流体系中,我们往往不需要自己完成整套打包、上车、运输、卸货等全套流程,只需要将包打好之后交由专业的物流公司即可。对于我们今天所要描述的日志场景而言,日志内容是需要运送的货物,日志框架就是物流公司,而目的地就是磁盘上的文件(或其他日志收集服务器)。在 Java 的语言体系中,针对日志处理很早有了很好的日志框架 log4j、 logback以及 jul(Java Util Logging) 等,这些框架替我们隐藏了日志记录的技术细节,程序员只需要使用 Logger这一个工具类,即可高效的完成业务日志的记录,

ITPUB社群
Java
2023-12-15 10:08

Spring事件机制详解

Spring 源码分析视频教程即将杀青,感兴趣的小伙伴戳这里:Spring源码应该怎么学?。 今天我们来聊一聊 Spring 中的事件机制,从用法到源码分析,我们挨个过一遍。

带你聊技术
Java
2023-12-14 09:38

Java中实现并行请求两种方式

在Java中实现并行请求通常涉及到多线程或者并发工具类的使用。以下是两种常见的并行请求模板:一种使用 ExecutorService 来管理线程池,另一种使用 Java 8 引入的 CompletableFuture。

码农谈IT
Java
2023-12-14 09:37

Serverless单体架构的崛起

在过去的几十年里,我们见证了应用架构以快速的速度演变。当我还是一个年轻的程序员时,开始编写一个简单的代码库,我们可以称之为单体应用。

ITPUB社群
Java
2023-12-12 09:50

Java21上手体验-分代ZGC和虚拟线程

前一阵Oracle刚刚发布了Java21,由于这是最新的LTS版本,引起了大家的关注。我也第一时间在个人项目中进行了升级体验,一探究竟,和大家分享。

带你聊技术
Java
2023-12-11 10:08

Java 21 的虚拟线程:高性能并发应用的福音

Java 21 最重要的特性之一就是虚拟线程 (JEP 444)。这些轻量级的线程降低了编写、维护和观察高吞吐量并行应用所需的努力。 在讨论新特性之前,让我们先看一下当前的状态,以便更好地理解它试图解决什么问题以及带来了哪些好处。

带你聊技术
Java
2023-12-11 09:46

Spring Boot 3.2项目中使用缓存Cache的正确姿势!!!

你是否曾想过为什么在 Spring Boot 应用中缓存是如此重要?答案在于它通过减少数据检索时间来提高性能。在本文中,我们将深入探讨缓存对微服务模式的影响,并探讨根据操作易用性、速度、可用性和可观测性等因素选择正确缓存的重要性。我们还将探讨如何最大程度地提高缓存性能和可用性。

张哥说技术
Java
2023-12-11 09:45

Native Drawing 开发指导,实现 HarmonyOS 基本图形和字体的绘制

场景介绍Native Drawing 模块提供了一系列的接口用于基本图形和字体的绘制。常见的应用场景举例:● 2D 图形绘制。● 文本绘制。接口说明详细的接口说明请参考Drawing。2D 图形绘制开发步骤以下步骤描述了如何使用 Native Drawing 模块的画布画笔绘制一个基本的 2D 图形:1.  创建 Bitmap

HarmonyOS开发者社区
IT综合
2023-12-07 14:40

分布式系统硬件资源池原理和接入实践

一、硬件资源池理念产生背景随着智能设备的发展和普及,越来越多的智能设备已经深入人们的生活,比如手机,PC,平板,各类穿戴设备等。当前单个设备的外设资源已经非常丰富,硬件能力也很强大。像我们的手机、PC、平板都有相机,音频,屏幕,键鼠等各种外设资源;但是这些硬件外设是属于各个设备自身的,如果涉及到跨设备的协同操作就会比较繁琐。比如用户正在 PC 上编辑文档,需要从平板复制一段文字,或者使用手机拍摄照

HarmonyOS开发者社区
IT综合
2023-12-06 10:08

Tomcat 配合虚拟线程,一种新的编程体验

本文我就带着大家一起深入了解一波 Tomcat 配合虚拟线程会带来怎样的效果以及虚拟线程对以后使用 Java 开发高吞吐量、高并发应用程序时所带来的改变。

带你聊技术
Java
2023-12-06 09:55

万字长文带你彻底吃透Spring循环依赖,堪称全网最全(文末福利)

本章目录如下所示: 学习指引 循环依赖概述 循环依赖类型 自我依赖 直接依赖 间接依赖 循环依赖场景 单例Bean的setter循环依赖的特殊情况 多例Bean的setter循环依赖 代理对象的setter循环依赖 构造方法的循环依赖 @DependsOn的循环依赖 单例Bean的setter循环依赖 Spring循环依赖底层解决方案分析 不支持单例Bean的setter循环依赖的特殊情况 不支持多例Bean的setter循环依赖 不支持代理对象的setter循环依赖 不支持构造方法的循环依赖 不支持@DependsOn的循环依赖 支持单例Bean的setter循环依赖 总结 思考

码农谈IT
Java
2023-12-06 09:51

万字长文带你彻底吃透Spring循环依赖,堪称全网最全(文末福利)

本章目录如下所示: 学习指引 循环依赖概述 循环依赖类型 自我依赖 直接依赖 间接依赖 循环依赖场景 单例Bean的setter循环依赖的特殊情况 多例Bean的setter循环依赖 代理对象的setter循环依赖 构造方法的循环依赖 @DependsOn的循环依赖 单例Bean的setter循环依赖 Spring循环依赖底层解决方案分析 不支持单例Bean的setter循环依赖的特殊情况 不支持多例Bean的setter循环依赖 不支持代理对象的setter循环依赖 不支持构造方法的循环依赖 不支持@DependsOn的循环依赖 支持单例Bean的setter循环依赖 总结 思考

码农谈IT
Java
2023-12-05 09:36

一个简单例子教会你C++动态库的用法

在 Linux 下使用 C++ 创建和使用动态库(通常是 .so 文件,即 Shared Object)包含几个关键步骤:创建动态库、编译、链接,以及在应用程序中使用这个库。下面是一个简要的指南:

码农谈IT
C/C++
2023-12-05 09:32

2024年,Rust和Go学哪个更好?

通过本文,我们将讨论Rust和Go之间的基本差异和相似之处。

张哥说技术
Go语言
2023-12-05 09:29

HarmonyOS 振动效果开发指导

Vibrator 开发概述振动器模块服务最大化开放硬工最新马达器件能力,通过拓展原生马达服务实现振动与交互融合设计,打造细腻精致的一体化振动体验和差异化体验,提升用户交互效率和易用性、提升用户体验、增强品牌竞争力。运作机制Vibrator 属于控制类小器件,主要包含以下四个模块:Vibrator API,Vibrator Framework,Vibrator Serv

HarmonyOS开发者社区
IT综合
2023-12-04 11:31