首页
学习
活动
专区
工具
TVP
发布

IT当时语_青山师_JAVA技术栈

专栏成员
333
文章
230775
阅读量
24
订阅数
Docker极速入门一文通
Copyright ©github:Byron4j | CSDN: https://blog.csdn.net/zixiao217. All Rights Reserved
青山师
2024-10-11
1240
简易入门:使用Docke 部署一个tomcat服务
此时浏览器访问8080端口,显示404,其实服务已经部署好了。只是官方镜像一般是精简版的,所以webapps目录下没有内容。但是webapps.dist是有默认内容的,我们可以进行以下操作,将其全部替换到webapps目录中去,再重新访问:
青山师
2024-10-10
990
ubuntu 开放 8080 端口快捷命令
sudo ufw enable Firewall is active and enabled on system startup
青山师
2024-10-10
860
腾讯云上传pushdocker镜像到镜像仓库
青山师
2024-10-09
1560
微服务服务间调用组件Feign使用介绍、原理、优化技巧
Feign是一个声明式的Web Service客户端。它让微服务之间的调用变得更简单。Feign具有可插拔式的注解支持,包括Feign 注解和JAX-RS注解。Feign还支持可插拔的编码器和解码器。Spring Cloud增加了对Spring MVC注解的支持,并且也支持Spring WebFlux。
青山师
2023-10-17
8.3K0
微服务负载均衡器Ribbon介绍、使用以及原理和源码理解
Ribbon是Netflix开源的客户端负载均衡器,它可以很好的控制HTTP和TCP客户端的行为。Ribbon支持配置客户端添加重试和超时等功能,旨在使客户端更加强健。Ribbon在分布式系统中提供一系列完整的服务,如:
青山师
2023-10-17
9920
JVM问题排查和垃圾回收机制
GC Roots是垃圾回收器的起点,直接或间接地与GC Roots相关的对象就不会被回收。主要的GC Roots有:
青山师
2023-10-17
2310
80个JAVA8函数式编程中关于集合的操作实例(持续更新增加实例)
map - 将集合中的每个元素映射为另一个元素 示例:将数字集合中的每个元素平方并返回平方后的集合。
青山师
2023-05-05
9820
线程池的介绍、原理、监控运维、框架使用场景案例
线程池是一种线程复用的技术,它可以有效地控制线程的数量,处理过程中将任务添加到队列,然后在线程创建后启动这些任务。主要作用有:
青山师
2023-05-05
2640
synchronized的偏向、轻量、重量级锁
Synchronized实现同步的方式有三种:偏向锁、轻量级锁、重量级锁。本文会从理论和代码实践两方面阐述三种锁的实现细节和原理。
青山师
2023-05-05
2340
JAVA并发万字长文从ReentrantLock到juc框架
ReentrantLock 是 Java 中的可重入锁,它实现了 Lock 接口,与 synchronized 相比,ReentrantLock提供了更强大和灵活的锁机制。
青山师
2023-05-05
1960
volatile关键字原理的使用介绍和底层原理解析和使用实例
volatile 关键字常用在 DCL(Double Check Lock)单例模式中:
青山师
2023-05-05
2500
ThreadLocal的使用介绍和底层原理解析和开源框架的使用实例
ThreadLocal是一个线程内部的数据存储类,它可以为每个线程提供独立的变量副本,不同线程间的变量无法相互访问和修改。这避免了每个线程都要维护一套独立变量的麻烦,并且也减少了线程之间不必要的数据争用。ThreadLocal适用于这样的场景:每个线程需要有自己单独的实例,而不是共享实例。例如,在 web 应用中,每个请求被一个新的线程处理,每个线程需要有自己的变量实例。
青山师
2023-05-05
4790
ConcurrentHashMap的使用介绍和底层原理解析和开源框架的使用实例
ConcurrentHashMap是JDK1.5提供的线程安全的HashMap,它允许多个线程并发访问哈希表,并发修改map中的数据而不会产生死锁。ConcurrentHashMap适用于高并发的环境下,可以替代synchronized实现的同步HashMap。ConcurrentHashMap的并发度很高,吞吐量也很高。
青山师
2023-05-05
1340
【面试长文】HashMap的数据结构和底层原理以及在JDK1.6、1.7和JDK8中的演变差异
HashMap的数据结构采用“链表散列”结构,即一个链表和一个数组,数组称为hash table,链表成为链表数组。HashMap通过key的hashCode来计算index,然后将key-value对存放在hash table的对应位置。如果出现hash冲突,就将数据存放在链表中。HashMap主要由Node[] table、size和loadFactor三个字段组成。
青山师
2023-05-05
2120
CopyOnWriteArrayList 的底层原理与多线程注意事项
CopyOnWriteArrayList 是一个线程安全的 List 集合,它采用了读写分离的思想,即在写操作时,先复制当前数组,然后在新数组上进行写操作,最后通过指向新数组的方式完成对象的引用。由于读操作无需加锁,因此读写操作并不冲突。
青山师
2023-05-05
1990
Java集合框架与ArrayList、LinkedList的区别
在Java中,集合框架是非常重要的一部分。集合框架提供了各种数据结构和算法,可以方便地存储和操作数据。在集合框架中,ArrayList和LinkedList是两个最基本的数据结构。本篇博客将会介绍Java集合框架和ArrayList、LinkedList的区别,以及如何在Java中使用这些类型。
青山师
2023-05-05
2620
Java中的String、StringBuffer和StringBuilder
在 Java 中,字符串是最常用的数据类型之一。 Java 中有三种处理字符串的方式:String、StringBuffer 和 StringBuilder。它们都被设计为处理字符串操作,但是它们之间有所不同。本篇博客将会介绍 String、StringBuffer 和 StringBuilder 的区别以及如何在 Java 中使用这些类型。
青山师
2023-05-05
1330
消息队列如何保证消息可靠性传输
随着互联网的发展,消息队列已经成为了系统设计中不可或缺的一部分。它可以实现系统之间的异步通信和解耦,提高整体系统的可靠性和性能。但是,由于网络的不可靠性和系统崩溃等原因,消息在传输过程中可能会出现丢失和重复等问题。为了解决这些问题,消息队列需要采用一系列机制来保证消息的可靠性传输。
青山师
2023-05-05
4250
RocketMQ 底层实现原理
RocketMQ 是一款高性能、可扩展的分布式消息中间件,目前已经成为各大互联网公司的主流解决方案之一。本文将介绍 RocketMQ 的底层实现原理,以及如何使用 JAVA 语言对其进行操作和实践。
青山师
2023-05-05
5580
点击加载更多
社区活动
【纪录片】中国数据库前世今生
穿越半个世纪,探寻中国数据库50年的发展历程
Python精品学习库
代码在线跑,知识轻松学
博客搬家 | 分享价值百万资源包
自行/邀约他人一键搬运博客,速成社区影响力并领取好礼
技术创作特训营·精选知识专栏
往期视频·千货材料·成员作品 最新动态
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档