-
- Java中synchronized 和 volatile 的区别是什么?
- synchronized保证原子性、可见性和有序性,适用于代码块或方法加锁,基于监视器实现,性能开销较大;volatile仅保证可见性和有序性,用于变量修饰,依赖内存屏障,不阻塞线程但不保证原子性;两者互补,按需选用。
- Java面试题 . Java 608 2025-11-09 08:42:03
-
- java 中Collection 和 Collections 有什么区别?
- Collection是集合根接口,定义添加、删除等基本操作;2.Collections是工具类,提供排序、同步等静态方法;3.List继承Collection,通过Collections.sort()等方法实现功能增强,二者包名相同但用途不同。
- Java面试题 . Java 449 2025-11-08 17:38:02
-
- java 中多线程锁的升级原理是什么?
- 锁升级指synchronized在JVM中从无锁→偏向锁→轻量级锁→重量级锁的自动演变过程。无锁时无竞争;偏向锁让首个线程独占,记录线程ID避免重复加锁;当有竞争时升级为轻量级锁,通过CAS和自旋尝试获取;若自旋失败或竞争加剧,则膨胀为重量级锁,依赖操作系统Mutex实现阻塞同步。该机制由JVM自动控制,旨在平衡性能与开销,理解其原理有助于优化同步代码,如减小锁范围、避免长时持锁,使锁尽可能停留在低开销状态。
- Java面试题 . Java 497 2025-11-08 12:52:03
-
- kafka 同时设置了7天和 10G 清除数据,到第五天的时候消息达到了 10G,这个时候 kafka 将如何处理?
- 当Kafka分区数据量达到10GB上限时,即使未满7天,也会立即触发日志清理,因基于时间与大小的策略为“或”关系,满足任一条件即启动清理。
- Java面试题 . Java 947 2025-11-07 06:25:22
-
- 什么是 XSS 攻击,如何避免?
- XSS攻击通过注入恶意脚本窃取信息或篡改页面,主要类型有反射型、存储型和DOM型;防御需坚持输入验证、输出编码、使用安全API、设置CSP和HttpOnlyCookie等措施。
- Java面试题 . Java 443 2025-11-06 08:59:34
-
- spring boot 配置文件有哪几种类型?它们有什么区别?
- SpringBoot配置文件支持properties和YAML格式,YAML因可读性强更受欢迎;配置文件默认放在src/main/resources目录下,支持多环境配置如application-dev.yml;加载优先级从高到低为命令行参数、环境变量、外部配置文件、内部配置文件等;YAML可通过缩进配置List和Map,结合@ConfigurationProperties绑定对象;可通过spring.profiles.active激活指定环境,也可使用@PropertySource或Sprin
- Java面试题 . Java 517 2025-11-06 08:03:09
-
- MySql如何获取当前数据库版本?
- 使用SELECTVERSION()函数可直接获取MySQL版本号;2.查询@@version系统变量同样能查看版本信息;3.通过@@version_comment、@@version_compile_os和@@version_compile_machine可获取更详细的版本与环境信息;4.命令行登录时显示的欢迎信息中也包含服务器版本。常用方式为执行SELECTVERSION();,结果简洁明了。
- Java面试题 . Java 519 2025-11-06 06:59:15
-
- java 中ArrayList 和 Vector 的区别是什么?
- ArrayList非线程安全但性能高,Vector线程安全但性能低;2.Vector扩容2倍,ArrayList扩容1.5倍;3.Vector为早期类,ArrayList更现代推荐使用。
- Java面试题 . Java 688 2025-11-05 05:19:21
-
- mybatis 逻辑分页和物理分页的区别是什么?
- 核心区别在于数据处理位置:逻辑分页在应用层加载所有数据后截取,适用于小数据量;物理分页通过数据库SQL限制返回指定范围数据,性能高,适合大数据量场景。
- Java面试题 . Java 958 2025-11-05 04:45:07
-
- 使用 kafka 集群需要注意什么?
- 答案:部署Kafka集群需重视硬件选型、Topic设计、客户端调优与监控运维。应选用SSD磁盘并独立部署ZooKeeper,合理规划分区数与副本因子,生产者配置acks=all和幂等性,消费者控制拉取量并监控Lag,结合Prometheus等工具持续监控关键指标,确保系统稳定高效。
- Java面试题 . Java 176 2025-11-05 03:03:33
-
- 说一下 zookeeper 的通知机制?
- Zookeeper的通知机制基于Watch实现,客户端可监听节点数据或子节点变化,服务端在事件发生时异步通知客户端,具备一次性触发、顺序性、轻量级等特点,适用于配置管理、服务发现、分布式锁和Leader选举等场景。
- Java面试题 . Java 673 2025-11-04 09:11:22
-
- zookeeper 是什么?
- ZooKeeper是分布式协调服务,用于配置管理、命名服务、分布式锁、服务发现与集群高可用;其树形ZNode结构支持临时和顺序节点,结合Watcher实现变更通知;广泛应用于Hadoop、HBase、Kafka及微服务架构中,提供强一致性和高可用的协调能力。
- Java面试题 . Java 508 2025-11-04 08:53:02
-
- java 中抽象类能使用 final 修饰吗?
- 抽象类不能用final修饰,因为abstract要求必须被继承,而final禁止继承,二者语义冲突,编译器会报错。
- Java面试题 . Java 890 2025-11-04 04:55:14
-
- final 在 java 中有什么作用?
- final关键字用于限制类、方法和变量的修改。①final类不可被继承,如工具类防止篡改;②final方法不可被重写,确保核心逻辑稳定;③final变量一旦赋值不可更改,基本类型值不变,引用类型地址不变但对象状态可变;④常用于定义常量和匿名内部类访问外部变量,增强程序安全性和可靠性。
- Java面试题 . Java 819 2025-11-03 09:20:14
-
- 简述 tcp 和 udp的区别?
- TCP是面向连接的协议,需三次握手建立连接,四次挥手断开;UDP无连接,直接发送数据。2.TCP通过确认、重传、排序等机制提供可靠传输;UDP不保证可靠性,可能丢包或乱序。3.TCP传输开销大、速度较慢,适合高准确性场景;UDP高效低延迟,适合实时性要求高的应用。4.TCP用于HTTP/HTTPS、FTP、SMTP等;UDP用于视频直播、在线游戏、VoIP、DNS查询等。5.根据需求选择协议至关重要,TCP稳重可靠,UDP快速高效。
- Java面试题 . Java 253 2025-11-03 06:29:09
PHP讨论组
组员:3305人话题:1500
PHP一种被广泛应用的开放源代码的多用途脚本语言,和其他技术相比,php本身开源免费; 可以将程序嵌入于HTML中去执行, 执行效率比完全生成htmL标记的CGI要高许多,它运行在服务器端,消耗的系统资源相当少,具有跨平台强、效率高的特性,而且php支持几乎所有流行的数据库以及操作系统,最重要的是

