- 博客(7)
- 收藏
- 关注
原创 Understanding the JVM
The relation of JDK/JRE/JVMJDK official website:Home: Java Platform, Standard Edition (Java SE) 8 Release 8Reference -> Developer Guides ->https://docs.oracle.com/javase/8/docs/index.htmlJDK 8 is a superset of JRE 8, and contains everything th
2024-12-07 11:00:17
924
原创 并发编程原理解析
JDK1.5之后,并发包中新增 了Lock接口(以及相关实现类)用来实现锁功能,它提供了与synchronized关键字类似的同步功能,只是在使用时需要显式地获取和释放锁。虽然它缺少了(通过synchronized块或者方法所提供的)隐式获取释放锁的便捷性,但是却拥有了锁获取与释放的可操作性、可中断的获取锁以及超时获取锁等多种synchronized关键字所不具备的同步特性。阻塞队列(BlockingQueue)是一个支持两个附加操作的队列。这两个附加的操作支持阻塞的插入和移除方法。
2024-10-21 00:32:10
836
1
原创 七大软件设计原则
接口隔离原则(Interface Segregation Principle, ISP)是指用多个专门的接口,而不使用单一的总接口,客户端不应该依赖它不需要的接口。这个原则指导我们在设计接口时应当注意一下几点:1、一个类对一类的依赖应该建立在最小的接口之上。2、建立单一接口,不要建立庞大臃肿的接口。3、尽量细化接口,接口中的方法尽量少(不是越少越好,一定要适度)。接口隔离原则符合我们常说的高内聚、低耦合的设计思想,从而使得类具有很好的可读性、可扩展性和可维护性。
2024-09-11 14:18:01
786
原创 【项目管理工具】Gradle
在某种程度上,Groovy 可以被视为Java 的一种脚本化改良版,Groovy 也是运行在 JVM 上,它可以很好地与 Java 代码及其相关库进行交互操作。它是一种成熟的面向对象编程语言,既可以面向对象编程,又可以用作纯粹的脚本语言。大多数有效的 Java 代码也可以转换为有效的 Groovy 代码,Groovy 和 Java 语言的主要区别是:完成同样的任务所需的Groovy 代码比 Java 代码更少。
2024-07-19 22:47:09
2632
原创 Redis 知识体系
因为数据最终是以数据库为准的(这是我们的原则),如果Redis没有数据,就不存在这个问题。当Redis和数据库都有同一条记录,而这条记录发生变化的时候,就可能出现一致性的问题。—旦被缓存的数据发生变化(比如修改、删除)的时候,我们既要操作数据库的数据,也要操作Redis的数据,才能让Redis和数据库保持一致。所以问题来了。先操作Redis的数据再操作数据库的数据先操作数据库的数据再操作Redis的数据首先需要明确的是,不管选择哪一种方案,我们肯定是希望两个操作要么都成功, 要么都一个都不成功。
2024-05-24 23:55:48
399
原创 MQ(消息中间件专题)
Kafka 概述Kakfa是一个分布式的基于发布/订阅模式的消息队列(message queue),主要应用于大数据的实时处理领域。具有以下特性1、高吞吐量、低延迟2、持久性、可靠性3、高并发4、容错性5、可扩展性6、消息顺序性Kafka应用场景1.消息队列2.日志收集3.网站活性跟踪4.运营指标监控5.流式处理KafKa 资源英文文档:https://kafka.apache.org/documentation/
2024-05-18 00:08:51
989
原创 MySQL 知识体系
Mysql是一个关系型数据库,由表结构来存储数据与数据之间的关系,同时用sql(Structured query language)翻译过来叫做 结构化查询语句来进行数据操作。sql语句进行操作又分为几个重要的操作类型:DQL:Data Query Language 数据检索语句 whereDML:Data Manipulation Language 添加 、删除、修改语句DDL:Data definition language 数据库结构操作,create alter等等。
2024-05-01 00:41:35
502
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人