Moonike Blog
  • 首页
  • 归档
  • 分类
  • 关于
  • 友链

分布式事务解决方案

分布式一致性的级别 强一致性:系统写入了什么,读出来的就是什么。 弱一致性:不一定可以读取到最新写入的值,也不保证多少时间之后读取到的数据是最新的,只是会尽量保证某个时刻达到数据一致的状态。 最终一致性:弱一致性的升级版,系统会保证在一定时间内达到数据一致的状态。 CAP 一致性(Consistency) : 所有节点访问同一份最新的数据副本 可用性(Availability): 非故障的节点在
2025-04-08
分布式

JVM 的垃圾收集器

没有最好的垃圾收集器,更没有万能的垃圾收集器,我们要做的就是根据具体应用场景选择适合自己的垃圾收集器。试想一下:如果有一种四海之内、任何场景下都适用的完美收集器存在,那么我们的 HotSpot 虚拟机就不会实现那么多不同的垃圾收集器了。 JDK 默认垃圾收集器(使用 java -XX:+PrintCommandLineFlags -version 命令查看): JDK 8: Parallel S
2025-04-08
Java > JVM虚拟机

JVM 的垃圾回收算法

标记-清除算法标记-清除(Mark-and-Sweep)算法分为“标记(Mark)”和“清除(Sweep)”阶段:首先标记出所有不需要回收的对象,在标记完成后统一回收掉所有没有被标记的对象。 它是最基础的收集算法,后续的算法都是对其不足进行改进得到。这种垃圾收集算法会带来两个明显的问题: 效率问题:标记和清除两个过程效率都不高。 空间问题:标记清除后会产生大量不连续的内存碎片。 复制算法为了
2025-04-08
Java > JVM虚拟机

JVM 的对象存活判定算法

引用计数法给对象中添加一个引用计数器: 每当有一个地方引用它,计数器就加 1 当引用失效,计数器就减 1 任何时候,计数器为 0 的对象不可能再被使用 这个方法实现简单,效率高,但是目前主流的虚拟机中并没有选择这个算法来管理内存,其最主要的原因是:很难解决对象之间循环引用的问题。因为互相引用对方,导致二者的引用计数器都不为 0,于是引用计数算法无法通知 GC 回收器回收他们。 可达性分析算法这
2025-04-08
Java > JVM虚拟机

Java 线程间的通信方式

线程间通信指的是多个线程之间相互传递信息或共享资源的机制,通信是多线程编程中的重要概念,用于实现线程之间的协作和数据共享。在谈到线程间通信时,我们主要关注的是 线程间的同步和互斥。 共享变量多个线程可以通过共享变量来进行通信。共享变量可以是全局变量或类的静态变量,多个线程可以同时读取和写入这些变量,通过变量的值来进行信息传递和共享数据。共享变量一般需要搭配 volatile 关键字进行使用。 1
2025-04-07
Java > Java并发编程

TCP 传输控制协议

TCP 协议的特点:面向连接、面向字节流、可靠传输、流量控制、拥塞控制。 面向连接面向连接 是指在 TCP 通信前,通信双方必须先通过三次握手 建立连接(连接建立阶段),确保通信双方都准备好进行数据传输;在数据传输完后再通过四次挥手 关闭连接(连接释放阶段),确保双方都完成了数据的发送和接收。 TCP 连接建立后,通信双方会维护连接的状态信息,包括序列号、窗口大小等,以便进行可靠的数据传输和流量控
2025-04-03
计算机网络

谈谈 TCP 传输控制协议的特点

TCP 协议的特点:面向连接、可靠传输、基于字节流、流量控制、拥塞控制。 面向连接面向连接 是指在 TCP 通信前,通信双方必须先通过三次握手 建立连接(连接建立阶段),确保通信双方都准备好进行数据传输;在数据传输完后再通过四次挥手 关闭连接(连接释放阶段),确保双方都完成了数据的发送和接收。 TCP 连接建立后,通信双方会维护连接的状态信息,包括序列号、窗口大小等,以便进行可靠的数据传输和流量控
2025-04-03
计算机网络

MVCC 和锁是如何最大程度避免幻读的

幻读的产生举个例子,假设一个事务在 T1 时刻和 T2 时刻分别执行了下面查询语句,途中没有执行其他任何语句: 1SELECT * FROM t_test WHERE id > 100; 只要 T1 和 T2 时刻执行产生的结果集是不相同的,那就发生了幻读的问题,比如: T1 时间执行的结果是有 5 条记录,而 T2 时间执行的结果是有 6 条记录,那就发生了幻读。 T1 时间执行的结
2025-04-02
MySQL > 事务

CDN 内容分发网络

一、是什么CDN (全称 Content Delivery Network),即内容分发网络 构建在现有网络基础之上的智能虚拟网络,依靠部署在各地的边缘服务器,通过中心平台的负载均衡、内容分发、调度等功能模块,使用户就近获取所需内容,降低网络拥塞,提高用户访问响应速度和命中率。CDN 的关键技术主要有内容存储和分发技术。 简单来讲,CDN就是根据用户位置分配最近的资源。于是,用户在上网的时候不用直
2025-04-01
计算机网络

进程间的通信方式

为什么进程之间需要通信操作系统为了保证安全性和稳定性,会为每个进程分配独立的地址空间,使得一个进程无法直接访问另一个进程的内存数据。然而在实际应用中,不同的进程往往需要协作完成复杂任务,进程间通信(Inter Process Communications, IPC)就是为了解决这种隔离与协作之间的矛盾,它允许进程之间安全地传递信息、同步操作状态或共享资源。进程间通信主要有以下几个目的: 数据传输
2025-03-28
操作系统
1234567

搜索

Copyright 2025 Moonike. All rights reserved.
Powed by Hexo Fluid
载入天数... 载入时分秒...
总访问量 次 总访客数 人