- 博客(14)
- 收藏
- 关注
原创 分布式事务
分布式事务与分布式锁的区别:分布式锁解决的是分布式资源抢占的问题;分布式事务和本地事务是解决流程化提交问题。图解:名词解释 事务:事务是由一组操作构成的可靠的独立的工作单元,事务具备ACID的特性,即原子性、一致性、隔离性和持久性。本地事务:当事务由资源管理器本地管理时被称作本地事务。本地事务的优点就是支持严格的ACID特性,高效,可靠,状态可以只在资源管理器中维护,而且应用编程模型简单。但是本地事务不具备分布式事务的处理能力,隔离的最小单位受限于资源管理器。
2023-09-27 21:37:29 96 1
原创 认识多线程
多线程是一种在计算机编程中常用的并发编程技术,它允许一个程序同时执行多个独立的线程(线程是一个轻量级的执行单元),从而实现更高效的任务处理和资源利用。简单说,多线程允许一个程序在同一时间内执行多个任务,这些任务可以并行运行,从而提高了程序的响应速度和性能.线程(Thread)和进程(Process)是操作系统中用于管理和执行程序的两个基本概念,它们之间有一些重要的区别:定义:进程:进程是一个独立的执行环境,包含了程序代码、数据和系统资源的拷贝,它是操作系统分配资源和执行任务的基本单位。线程:线程是进程内的一
2023-09-26 08:20:11 84 1
原创 Arthas
Arthas(阿尔萨斯)是一个开源的Java诊断工具,由阿里巴巴集团开发和维护。它为开发人员提供了强大而灵活的功能,安装在系统所在服务器。可以帮助开发人员或者运维人员查找问题,分析性能,bug追踪。用于分析和排查Java应用程序的问题。
2023-09-17 21:05:26 200 1
原创 Elasticsearch
什么是elasticsearch?一个开源的分布式搜索引擎,可以用来实现搜索、日志统计、分析、系统监控等功能什么是elastic stack(ELK)?是以elasticsearch为核心的技术栈,包括beats、Logstash、kibana、elasticsearch什么是Lucene?是Apache的开源搜索引擎类库,提供了搜索引擎的核心API。
2023-09-15 21:12:58 72
原创 RabbitMQ的几个关键问题
消费者确认模式(手动应答):在消费者处理消息后,通过显式发送确认(acknowledgement)给RabbitMQ,确认消息已经被成功处理。消费者在处理消息前,先检查该标识符是否已经处理过相同的消息,如有则进行去重操作。如果消费者未能及时处理消息,超过超时时间后消息会被重新投递给其他消费者,避免了消息长时间占据队列而无法被处理的问题。对于非幂等性操作,多次消费消息,会造成数据一致性的问题,所以要保证重复消费消息的问题。对于幂等性操作,多次消费消息,除开性能的影响 ,其他没有什么大问题,可以不管它。
2023-09-14 17:50:49 129 1
原创 Linux
Linux是一个开源的操作系统内核,最初由芬兰的计算机科学家Linus Torvalds在1991年开发而成。与传统商业操作系统相比,Linux的最大特点是其开放、自由和可定制性。它被广泛用于服务器领域,也逐渐扩展到桌面和嵌入式设备。
2023-09-04 11:21:56 55 1
原创 网络编程-
网络编程有什么用呢?这个就不言而喻了,比如我们经常用的微信收发消息就需要用到网络通信的技术、在比如我们打开浏览器可以浏览各种网络、视频等也需要用到网络编程的技术。网络通信的基本架构通信的基本架构主要有两种形式:一种是CS架构(Client 客户端/Server服务端)、一种是BS架构(Brower 浏览器/Server服务端)。CS架构需要用户在自己的电脑或者手机上安装客户端软件,然后由客户端软件通过网络连接服务器程序,由服务器把数据发给客户端,客户端就可以在页面上看到各种数据了。
2023-08-29 20:27:42 56 1
原创 HTML快速入门
HTML 文件常以.htm或.html为扩展名HTML 结构标签注释与XML中语法一致,使用-- -->HTML标签不区分大小写,建议小写。如上案例中的img写成IMG也是一样可以展示出对应的效果的。HTML标签属性值 单双引皆可如上案例中的src属性值使用双引号也是可以的。HTML语法松散比如h1标签不加结束标签也是可以展示出效果的。但是建议严格按照要求去写。
2023-08-28 21:36:16 50
原创 线程池的基本概念三
线程是一个动态执行的过程,它也有一个从产生到死亡的过程。下图显示了一个线程完整的生命周期。使用关键字和类或其子类建立一个线程对象后,该线程对象就处于新建状态。它保持这个状态直到程序这个线程。当线程对象调用了start()方法之后,该线程就进入就绪状态。就绪状态的线程处于就绪队列中,要等待JVM里线程调度器的调度。如果就绪状态的线程获取 CPU 资源,就可以执行,此时线程便处于运行状态。处于运行状态的线程最为复杂,它可以变为阻塞状态、就绪状态和死亡状态。
2023-08-24 22:38:56 40 1
原创 多线程,线程池
不能直接去调用run方法,如果直接调用run方法就不认为是一条线程启动了,而是把Thread当做一个普通对象,此时run方法中的执行的代码会成为主线程的一部分。此时执行结果是这样的。
2023-08-19 21:53:30 53
原创 【ThreadLocal】
ThreadLocal 是 Java 中的。它提供了一种在多线程环境下保持变量值的机制,确保每个线程能够独立地访问自己的变量副本,避免了线程间的数据共享和竞争条件。在这个示意图中,ThreadLocal 维护了每个线程的变量副本。每个线程(Thread A、Thread B、Thread C)都有自己的变量(Variable A、Variable B、Variable C),并且可以独立地读写它们。每个变量都关联了一个特定的值(Value A、Value B、Value C)。
2023-08-18 18:11:55 71 1
原创 JVM五问
CMS(Concurrent Mark and Sweep)收集器是一种并发垃圾回收器,它在应用程序运行的同时进行垃圾回收,以减少停顿时间。下面是对CMS收集器的详细介绍:并发标记(Concurrent Marking):CMS收集器的第一个阶段是并发标记。它通过在应用程序运行的同时标记所有活动对象,建立起一个根集合,并标记其他对象的可达性。这个过程不会暂停应用程序的执行,因此对于大型堆内存来说,标记阶段可以在短时间内完成。
2023-08-16 21:04:09 502 1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人