• 2024-08-28java增加注解实现异步执行任务
    1.首先启动类增加注解@EnableAsync2.增加configpackagecom.xxx.config;importorg.springframework.aop.interceptor.AsyncUncaughtExceptionHandler;importorg.springframework.context.annotation.Configuration;importorg.springframework.scheduling.annotation.A
  • 2024-08-24spring如何实现高可用高性能高并发
    在SpringBoot和SpringCloud中,可以通过以下方式实现高并发、高可用和高性能: 一、高并发 1. 异步处理-使用Spring的异步方法执行(@Async注解),将耗时的操作异步执行,不阻塞主线程,从而提高系统的并发处理能力。例如,对于一些数据处理、文件上传等操作,可以在后台异步进
  • 2024-08-22python——concurrent.futures
    concurrent.futures是Python标准库中用于并行编程的高级模块,它提供了一种高级别的接口来管理线程和进程。通过这个模块,你可以轻松地利用多线程和多进程来并行执行任务,进而提高程序的执行效率。1.concurrent.futures概述concurrent.futures提供了两种执行器类型:Thre
  • 2024-08-22JUC-Executor
    1,Executor框架相关内容Executor框架主要包括三部分内容任务相关的:包含被执行的任务要实现的接口:Runnable接口或Callable接口任务的执行相关的:包含任务执行机制的核心接口Executor,以及继承自Executor的ExecutorService接口。Executor框架中有两个关键的类实现了ExecutorS
  • 2024-08-21Spring Mybatis拦截器配合logback打印完整sql语句
    在项目开发与维护过程中,常常需要对程序执行的sql语句,进行观察和分析。但是项目通常默认会使用org.apache.ibatis.logging.stdout.StdOutImpl日志配置,该配置是用System.out.println打印的日志,导致只能将执行语句打印到控制台,却没办法打印到日志文件中。如果放开logback日志等
  • 2024-08-21异步编程CompletableFuture的一些使用demo
      publicstaticThreadPoolExecutorexecutor=newThreadPoolExecutor(5,5,5L,TimeUnit.SECONDS,newLinkedBlockingQueue<>(1000),newThreadPoolExecutor.CallerRunsPolicy());publicstaticvoidmain(String[]args)throwsException{Complet
  • 2024-08-19@Async使用ThreadPoolTaskExecutor 多线程
    SpringBoot中的线程池ThreadPoolTaskExecutor,@Async的使用线程池@Configuration@EnableAsyncpublicclassExcutorConfig{@Bean(name="ThreadPoolTaskExecutor")publicThreadPoolTaskExecutorThreadPoolTaskExecutor(){ThreadPoolTaskExecutorex
  • 2024-08-15你要了解的2种AI思维链
    我们使用的AI助手,一般是经过了预训练和微调这2个步骤,尽管训练出的模型能回答许多通用类问题,但是在遇到复杂问题时还是束手无策。直到有人提出了思维链方式,才解决了模型在面对复杂问题时的推理能力。1、什么是思维链思维链(ChainofThought,CoT)是用于提高AI模型推理能力的方式
  • 2024-08-14SpringBoot 整合线程池
    分为三步启动类加@EnableAsync注解在方法上加@Async注解创建线程池配置类1.启动类加@EnableAsync注解@SpringBootApplication@EnableAsyncpublicclassFacadeH5Application{publicstaticvoidmain(String[]args){SpringApplication.run(Fac
  • 2024-08-13Java线程池学习
    Java线程池学习一、线程池基础1定义2优点3基本组件二、Java线程池实现1Executor接口2ExecutorService接口3ThreadPoolExecutor类3.1创建线程池实例三、执行策略1直接提交策略(DirectSubmissionExecutor)2固定线程数策略(FixedThreadPool)3缓存线程池策略
  • 2024-08-12Java线程池和执行流程
    在Java中,常见的四种线程池包括:1.newFixedThreadPool(固定大小线程池)应用场景:适用于需要限制线程数量,并且任务执行时间比较均匀的场景,例如服务器端的连接处理。优点:线程数量固定,能够有效地控制并发线程数,避免过多的线程竞争资源。缺点:如果线程在执行任务过程中出现异常
  • 2024-08-08Docker && Microros && PlatformIO 配置经验留存
    1.背景:无意中看到了小鱼(鱼香ROS)的文章硬件环境:Ubuntu22.04 &&ESP32-WROOM-32想在ESP32WROOM32上实现microros的功能:实现上位机(跑ROS2)通过topic直接控制CAN报文的功能;目前进度:实现了环境的配置(PlatformIO&&docker&&Microros);初步跑通了Microros的订阅与发送(24
  • 2024-08-02Mybatis-Plus源码-自增主键填充到实体
     #mybatis-3.5.10+mybatisPlus-3.5.2#mybatis-plus自增id策略下何时填充id到实体com.baomidou.mybatisplus.extension.service.impl.ServiceImpl#saveOrUpdatecom.baomidou.mybatisplus.extension.service.IService#savecom.baomidou.mybatisplus.core.override.M
  • 2024-07-31结合拦截器描述mybatis启动流程
    简介mybatis的启动入口一般有两个,在结合spring框架后由spring整合包下的SqlSessionFactoryBean启动如果没有整合spring,则有XMLConfigBuilder启动这两个启动入口都会初始化Configuration对象,该对象是mybatis配置文件的对象形式,我们实现的mybatis拦截器在此时被装载到configurati
  • 2024-07-29@Schedule定时任务和异步注解@Async时推荐自定义线程池
    1.原因@Schedule定时任务和异步注解@Async使用的默认线程池时, 池中允许的最大线程数和最大任务等待队列都是Integer.MAX_VALUE. 2.解决2.1、可以手动异步编排,交给某个线程池来执行。首先我们先向Spring中注入一个我们自己编写的线程池,参数自己设置即可,我这里比较随意。@C
  • 2024-07-25基于CDH 6.3.0 搭建 Hive on Spark 及相关配置和调优
    基于CDH6.3.0搭建HiveonSpark及相关配置和调优Hive默认使用的计算框架是MapReduce,在我们使用Hive的时候通过写SQL语句,Hive会自动将SQL语句转化成MapReduce作业去执行,但是MapReduce的执行速度远差于Spark。通过搭建一个HiveOnSpark可以修改Hive底层的计算引擎,将Map
  • 2024-07-24【lamda表达式】在多线程开发中的lamda表达书简化参数
    创建线程后传Runnable参数并实现run方法,可以采用下面两种方式,效果是一样的Threadt1=newThread(newRunnable(){@Overridepublicvoidrun(){//这里是线程应该执行的代码System.out.println("Hello,World!");
  • 2024-07-22Java中的虚拟线程与并发编程优化
    Java中的虚拟线程与并发编程优化大家好,我是微赚淘客系统3.0的小编,是个冬天不穿秋裤,天冷也要风度的程序猿!今天我们将深入探讨Java中的虚拟线程及其对并发编程的优化。虚拟线程是Java21引入的一个新特性,它可以显著提高应用的并发性能,并简化线程的管理。我们将介绍虚拟线程的基本概
  • 2024-07-15Java中的线程池详解
    Java中的线程池详解大家好,我是微赚淘客系统3.0的小编,是个冬天不穿秋裤,天冷也要风度的程序猿!今天我们来深入探讨Java中的线程池。线程池是一种重要的多线程处理方式,能够有效管理和复用线程资源,提升系统的性能和稳定性。本文将详细介绍线程池的原理、使用方法以及在实际开发中的最
  • 2024-07-12spark-submit提交任务时执行流程(简单版)
    yarncluster模式提交spark任务(1)执行脚本提交任务,实际是启动一个SparkSubmit的JVM进程。(2)SparkSubmit类中的main方法反射调用YarnClusterApplication的main方法。(3)YarnClusterApplication创建Yarn客户端,然后向yarn服务器发送执行指令:bin/javaApplicationMaster。(4)Yarn(Resour
  • 2024-07-1101_spark入门
    SparkSpark作为分布式计算框架,基于MapReduce框架开发,但是也有以下区别:Spark基于Scala语言开发,MR基于Java语言开发;Scala是函数式编程语言,对于函数间相互调用效率更高;而Java是面向对象语言,函数间调用必须依赖于对象,效率低。MapReduce核心是一次性计算,不适合迭代计
  • 2024-07-10Java中的线程池详解
    Java中的线程池详解大家好,我是微赚淘客系统3.0的小编,是个冬天不穿秋裤,天冷也要风度的程序猿!1.理解线程池的概念在Java中,线程池是一种管理和复用线程的机制,它能够有效地控制并发线程数量,提高系统性能和资源利用率。使用线程池可以避免反复创建和销毁线程的开销,同时能够管理大量
  • 2024-07-03springboot线程池简单配置
    @ConfigurationpublicclassThirdPartyOilSmallTaskConfig{@Bean("thirdPartyOilSmallTaskExecutor")publicThreadPoolTaskExecutoruniteOilThreadPoolTaskExecutor(){ThreadPoolTaskExecutorexecutor=newThreadPoolTaskExecutor();
  • 2024-07-02springboot实现异步调用demo
    springboot实现异步调用异步调用特点异步调用在开发程序中被广泛应用,在异步任务中,主线程不需要阻塞等待异步任务的完成,而是可以继续处理其他请求。异步调用的特点如下:非阻塞:主线程在调用异步方法后不会等待其完成,而是立即返回。后台处理:耗时操作在后台独立的线程中执行,不会
  • 2024-07-01spring 定时任务 使用线程池
    spring线程池定义packagecom.minex.icp.tool.conf;importlombok.extern.slf4j.Slf4j;importorg.springframework.context.annotation.Bean;importorg.springframework.context.annotation.Configuration;importorg.springframework.scheduling.annotation.AsyncConfi