10 2024 档案
摘要:此处记录使用callable创建线程,使用线程池执行,看下是否有进行线程复用并且FutureTask返回结果 线程创建 public class MyCallableBakeUser implements Callable<String> { private int a ; public MyCal
阅读全文
摘要:此处记录一个使用ThreadPoolExecutor线程池的demo 线程池的作用:复用线程的技术 线程代码,此处使用Runnable创建线程 public class ExcutorRunnable implements Runnable{ @Override public void run()
阅读全文
摘要:线程的实现方式有三种: 1、extends Thread ,简单方便,但只能单继承,能做的事情少 2、implements Runnable ,很方便,但无法获取返回值 3、implements Callable ,可以获得返回值,返回值可自行定义 本章节介绍下callable使用 1、创建一个类,
阅读全文
摘要:Runnable的几种写法: 创建个类 public class MyRunnable implements Runnable { @Override public void run() { for (int i = 0; i < 5; i++) { System.out.println("Runn
阅读全文
摘要:日常中,如果定时任务比较多,可以采用xxl-job这样第三方工具,当然,如果只有一两个,可以使用spring的schedule,方便好用,接下去就让我们去了解下 一、使用; 二、关于注解中一些属性的使用; 实现本质是基于 java 中的 ScheduledExecutorService 类的 sch
阅读全文
摘要:public static void main(String[] args) { PackSaveTimeReq packSaveTimeReq = new PackSaveTimeReq(); packSaveTimeReq.setType(ThirdPartyOperationTypeEnum.
阅读全文
摘要:rocketMQ中有关事务的发送消息方式,写的一个demo 1、在MyProducer类中的方法,即先定义调用 @Component public class MyProducer { @Autowired private RocketMQTemplate template; public void
阅读全文
摘要:在发送之前,需要先搭建好rocketMQ 之后便是创建两个springboot工程,一个是生产中producer生产者、另外一个是consumer消费者 一、生产者创建步骤: 1、通过idea创建一个springboot工程,在创建工程的时候,添加spring-boot-starter-web依赖即
阅读全文
摘要:本地安装的jdk版本是11,有个项目想打包成jdk1.8的版本,试了好多方法还是不得行,本来是以为修改Project Structure 里面修改SDK的jdk版本就可以,试了不行 最后面发现,这个的打包方式是采用maven的setting.xml里面制定的JDK版本有关 最后修改了,maven制定
阅读全文
摘要:主要包括几个步骤:1、上传zip包到Linux;2、在环境变量中配置rocketMQ信息;3、修改mq相关配置;4、启动服务 一、下载zip包并且上传到Linux 因为rocketMQ运行是需要java环境的,所以也需要下载jdk,总共需要两个文件,一个是jdk1.8,一个是rocketMQ4.7,
阅读全文
摘要:SkyWalking组件通过添加相关配置就可以获取到接口的相关信息,更加方便的追踪和处理问题 接下去讲下步骤: 1、在service层添加两个注解; @Trace @Tags({@Tag(key = "getDataByCode",value = "returnedObj"), @Tag(key =
阅读全文
摘要:在微服务多个服务调用过程中,随着服务数量增多,互相调用的变多,就会出现一些问题: 1、调用链路,如何快速定位问题 2、如果缕清微服务之间的依赖关系 3、各个微服务接口性能分析 4、整个业务流程的调用处理顺序 skywalking可以很好的处理这些问题,在springcloud微服务中如何整合skyw
阅读全文