- 博客(72)
- 资源 (2)
- 收藏
- 关注
原创 行业案例:携程异地多活-MySQL实时双向(多向)复制实践
DRC(Data Replicate Center)是携程框架架构研发部推出的一款用于数据双向或多向复制的数据库中间件。它服务于异地多活项目,帮助携程在全球化的部署背景下,提供高可用的业务支持,赋能业务全球化能力。Replicator Container 负责管理Replicator实例。一个Replicator实例表示对一个 MySQL 集群的复制单元。该实例将自己伪装为 MySQL 的从库,执行 Binlog 的拉取并进行本地存储。本次分享围绕DRC。
2025-03-30 15:05:57
340
原创 100Wtps超高并发、大流量生产案例: # 字节钱包 架构与落地方案
在字节的春节活动中,用户可以通过任意端口参与,并获得相应奖励。用户登录抖音参与活动进入活动钱包页点击提现按钮进入提现页面进行提现操作查看提现结果同时,用户也可以直接从钱包页进入活动钱包页,查看自己参与活动所获得的奖励。最近无意间获得一份阿里大佬写的刷题笔记,一下子打通了我的任督二脉,进大厂原来没那么难。这是大佬写的7701页的BAT大佬写的刷题笔记,让我offer拿到手软最近无意间获得一份阿里大佬写的刷题笔记,一下子打通了我的任督二脉,进大厂原来没那么难。这是大佬写的。
2025-03-30 14:45:57
463
原创 假设10W人同时访问,如何保证系统不崩?
扩容和限流可以有效应对接入层的流量压力;Redis 扩容和本地缓存是应对 Redis 集群瓶颈的有效手段,尤其是针对流量集中在单一 key 的场景。通过合理的架构设计,系统能够高效应对突发的流量高峰。当某个Key接收到的访问次数显著高于其他Key时,我们将其称为HotKey。Redis 实例的访问量集中在某个 Key 上:例如,一个 Redis 实例每秒的总访问量为 10000,而其中一个 Key 每秒的访问量达到了 7000。数据库中的热数据:例如,频繁访问的商品信息(如 SKU、店铺 ID 等)
2025-03-30 14:41:44
486
原创 行业案例:10Wtps超高并发“某节跳动”钱包架构与落地方案
在字节的春节活动中,用户可以通过任意端口参与,并获得相应奖励。用户登录抖音参与活动进入活动钱包页点击提现按钮进入提现页面进行提现操作查看提现结果同时,用户也可以直接从钱包页进入活动钱包页,查看自己参与活动所获得的奖励
2025-03-09 19:46:05
1175
原创 面试必备!HR面常问的20个问题及高分回答秘诀
最近无意间获得一份阿里大佬写的刷题笔记,一下子打通了我的任督二脉,进大厂原来没那么难。这是大佬写的7701页的BAT大佬写的刷题笔记,让我offer拿到手软cxykk.com。
2025-02-13 22:48:27
1152
原创 程序员到架构师定会遇到的问题(3):系统要不要自研,什么时候该自研?
核心业务是你的“市场竞争力”,即产品的关键差异化。例如:外卖平台的配送算法。视频平台的推荐系统。电商平台的商品搜索和排序。非核心业务是“支持业务”,例如支付系统、日志系统、运维工具,这些可以通过第三方服务实现。“要不要自研”,关键在于权衡业务需求和成本投入1、核心业务尽量自研,非核心业务优先用第三方。2、当现有系统无法满足需求、成本过高、或安全性要求很高时,再考虑自研。3、创业公司早期用第三方服务快速上线,业务稳定后逐步替换成自研系统。一句话忠告。
2025-01-08 11:06:28
657
原创 程序员到架构师定会遇到的问题(2):百万QPS容量设计,该如何规划?
**作为一名架构师,容量设计是你无法逃避的基本功。**想象一下,你接到一个项目需求,老板拍着桌子跟你说:“咱们这个系统上线后,可能会有**百万级用户**,得抗住大流量!”**你点点头,内心却泛起了嘀咕**:> 这百万用户是今天就有,还是几年后才有? 是每天百万请求,还是瞬时百万并发?如果搞错了容量估算,不是系统直接挂掉,就是浪费预算烧钱。容量设计的本质,是**找到适合当前业务的资源配置,既不高估,也不低估**。
2025-01-08 11:05:14
1121
原创 程序员到架构师定会遇到的问题(1):创业初期,技术如何选型
用熟悉的、成熟的技术,快速、低成本地推出 MVP,留有扩展的余地。最近无意间获得一份阿里大佬写的刷题笔记,一下子打通了我的任督二脉,进大厂原来没那么难。这是大佬写的7701页的BAT大佬写的刷题笔记,让我offer拿到手软本文,已收录于,我的技术网站cxykk.com:程序员编程资料站,有大厂完整面经,工作技术,架构师成长之路,等经验分享。
2025-01-08 10:59:43
567
原创 Java基础面试题20:Java语言sendRedirect()和forward()方法有什么区别?
特性forward()请求类型新请求同一个请求地址栏变化会变不会变请求数据共享不共享,数据会丢失共享,数据还能继续用速度慢一点快一点常见用途页面跳转到新网站或避免表单重复提交系统内页面间跳转,传递请求数据最近无意间获得一份阿里大佬写的刷题笔记,一下子打通了我的任督二脉,进大厂原来没那么难。这是大佬写的7701页的BAT大佬写的刷题笔记,让我offer拿到手软本文,已收录于,我的技术网站cxykk.com:程序员编程资料站,有大厂完整面经,工作技术,架构师成长之路,等经验分享。
2024-12-23 22:23:28
408
原创 Java基础面试题19:解释什么是Servlet链
最近无意间获得一份阿里大佬写的刷题笔记,一下子打通了我的任督二脉,进大厂原来没那么难。这是大佬写的7701页的BAT大佬写的刷题笔记,让我offer拿到手软本文,已收录于,我的技术网站cxykk.com:程序员编程资料站,有大厂完整面经,工作技术,架构师成长之路,等经验分享。
2024-12-23 22:22:46
534
原创 Java基础面试题18:解释下Servlet的生命周期?
初始化阶段:就像你早晨醒来,准备开始一天的工作(只发生一次)。处理请求阶段:是你一天中接待每个任务的过程(可能发生多次)。销毁阶段:就像你晚上下班睡觉,结束一天的工作(也只发生一次)。创建Servlet对象并初始化(调用init()处理每个客户端请求(调用service()销毁Servlet对象(调用destroy()),最终被垃圾回收。记住,Servlet对象会在内存中驻留,直到服务器关闭或者Web应用被移除为止。这就是Servlet的生命周期,理解它的流程和方法调用规律是非常重要的!
2024-12-21 17:11:26
1019
原创 Java基础面试题17:GenericServlet和HttpServlet有什么区别?
对比项协议支持通用型,和具体协议无关专门为HTTP协议设计继承关系直接实现了Servlet接口是GenericServlet的子类主要用途用于开发任意类型的Servlet(不局限于网页)专门用来开发基于网页服务的Servlet需实现的方法必须实现service()方法通常重写doGet()或doPost()方法如果你要开发“网页服务”,那是不二之选,因为它帮你封装了很多跟HTTP协议相关的功能。如果你要开发其他类型的服务(比如基于FTP的服务),那么用更灵活。
2024-12-21 17:07:20
416
原创 大厂都在用的分布式事务方案,Seata+RocketMQ带你打破10万QPS瓶颈
分布式事务,这四个字看着好像挺高大上,很多程序员一听到,心里头都会发怵:是不是又要加班?是不是又是那个“老板觉得3天能搞定”的东西?TCC 是个强管控的解决方案。假设你要给一百个人发奖金,每个人分三步:确定奖金池、发放奖金、确认到账。TCC 模式就要求每一步都明确标记:钱从哪里扣?到账了没有?出了问题咋办?Try 阶段:先预留资源,比如锁定账户余额,告诉大家“钱已经备好了”。Confirm 阶段:完成操作,比如真的把钱转给员工。Cancel 阶段:如果过程中失败了,就把预留的资源退回来。优缺点。
2024-12-08 21:52:28
1221
原创 腾讯面试:聊聊 CAP 定理?哪些中间件是AP?为什么?
CAP 定理不是魔咒,而是底层逻辑。理解它的核心冲突,你才能在分布式系统里活得更明白。**技术选型时先看业务场景:**银行选 CP,电商秒杀选 AP。**架构师的终极哲学:**分布式系统里没有完美,只有最合适的权衡。总结:CAP 定理教会我们的,是如何用有限的资源,撑起分布式系统的无限可能。最近无意间获得一份阿里大佬写的刷题笔记,一下子打通了我的任督二脉,进大厂原来没那么难。这是大佬写的7701页的BAT大佬写的刷题笔记,让我offer拿到手软本文,已收录于,我的技术网站。
2024-12-08 21:51:25
1101
原创 Java基础面试题16:简述Servlet的体系结构
最近无意间获得一份阿里大佬写的刷题笔记,一下子打通了我的任督二脉,进大厂原来没那么难。这是大佬写的7701页的BAT大佬写的刷题笔记,让我offer拿到手软本文,已收录于,我的技术网站cxykk.com:程序员编程资料站,有大厂完整面经,工作技术,架构师成长之路,等经验分享。
2024-12-03 22:27:10
1054
1
原创 Java基础面试题15:简述什么是 Servlet?
Tomcat(最常见的开源 Servlet 容器)Weblogic、Jetty、Jboss、WebSphere 等你可以理解为,Servlet 容器负责帮你运行 Servlet 类,让它们为网站服务。Servlet 是基于 Java 的动态网站开发技术。它封装了许多底层功能,让开发者可以专注于业务逻辑。Servlet 是一种规范,需要依托 Servlet 容器运行,比如 Tomcat。JSP 是 Servlet 的升级版,用起来更简单,但本质上还是基于 Servlet。
2024-12-03 22:26:24
756
1
原创 Java基础面试题14:解释下Java Serialization和Deserialization
更简单,直接加接口就能用。更灵活,但需要手动控制序列化逻辑。使用transient时注意,它会跳过被修饰的字段。文件中保存的序列化数据不可读,需要用 Java 程序反序列化。通过这个知识点,你不仅可以理解序列化的基本原理,还能在面试中结合实际场景来回答,展现更深的理解!最近无意间获得一份阿里大佬写的刷题笔记,一下子打通了我的任督二脉,进大厂原来没那么难。这是大佬写的7701页的BAT大佬写的刷题笔记,让我offer拿到手软本文,已收录于,我的技术网站cxykk.com:程序员编程资料站。
2024-12-03 22:25:44
1005
原创 Java基础面试题13:Java throw和throws有什么区别?
区别点throwthrows作用用来实际抛出异常声明方法可能会抛出异常位置方法体内部方法签名后面抛出数量一次只能抛一个异常可以声明多个异常,用逗号隔开主动/被动主动抛异常被动告诉可能有异常最近无意间获得一份阿里大佬写的刷题笔记,一下子打通了我的任督二脉,进大厂原来没那么难。这是大佬写的7701页的BAT大佬写的刷题笔记,让我offer拿到手软本文,已收录于,我的技术网站cxykk.com:程序员编程资料站,有大厂完整面经,工作技术,架构师成长之路,等经验分享。
2024-12-03 22:25:10
684
原创 Java基础面试题12:Java中的两种异常类型是什么?它们有什么区别?
Error是一种程序无法控制的严重问题,表示 JVM 的底层出现了问题,比如动态链接失败、虚拟机崩溃等。Exception运行时异常(RuntimeException)和检查异常(CheckedException)。运行时异常是类及其子类的实例。这些异常往往是由于代码逻辑问题引起的,比如空指针访问、数组越界等。检查异常是Exception类中除了外的所有异常。这类异常是程序员必须显式处理的。最近无意间获得一份阿里大佬写的刷题笔记,一下子打通了我的任督二脉,进大厂原来没那么难。这是大佬写的。
2024-12-03 22:24:45
1064
原创 Java基础面试题11:简述System.gc()和Runtime.gc()的作用?
System.gc() 和 Runtime.gc() 的作用相同,都用于提示 JVM 执行垃圾回收。System.gc() 更便于使用,因为它是静态方法,写起来更简洁。Runtime.gc() 更底层,本质上被 System.gc() 调用。最近无意间获得一份阿里大佬写的刷题笔记,一下子打通了我的任督二脉,进大厂原来没那么难。这是大佬写的7701页的BAT大佬写的刷题笔记,让我offer拿到手软本文,已收录于,我的技术网站cxykk.com:程序员编程资料站。
2024-11-29 21:17:28
712
原创 Java基础面试题10:Java finally代码块和finalize()方法有什么区别?
特性finalfinallyfinalize()性质关键字代码块方法功能修饰类、方法、变量保证执行清理代码,无论异常与否对象被回收前调用,做资源清理工作使用场景保证不变性(不可继承、重写、修改等)异常处理中的清理操作检查垃圾回收前的资源状态局限性无不建议包含return,否则返回值受干扰调用不可靠,不可完全依赖通过上面的讲解,finalfinally和finalize()的概念和区别已经很清晰了。希望能助你在面试中脱颖而出!
2024-11-29 21:16:55
569
原创 Java基础面试题09:Java异常处理完成以后,Exception对象会发生什么变化?
简单来说,异常就是程序运行时发生了意外的“错误”或者“不正常现象”,导致程序中断。异常处理的目标是让程序在出现问题时能稳住,不会直接崩溃。通过处理异常,程序能在意外情况下继续运行,而不会中途崩溃。try/catch捕获并处理异常,catch块里定义如何处理。finally任何情况下都要执行的操作,比如释放资源。如果catch不能完全解决问题,可以将异常“甩锅”给上层。通过有效的异常处理,我们可以编写更加健壮、容错性更强的程序。
2024-11-28 22:35:41
1097
原创 Java基础面试题08:Java中Exception和Error有什么区别?
1. 如果try中有returnfinally的代码还会执行吗?答案:会执行,并且是在return之前执行。// 返回之前先执行 finallySystem.out.println("执行finally");2. 运行时异常和受检异常的区别?运行时异常(Unchecked Exception)常见的程序逻辑错误,如空指针、数组越界。编译器不强制处理,程序员可以选择处理或忽略。受检异常(Checked Exception)
2024-11-28 22:35:07
828
原创 Java基础面试题07:finalize() 方法什么时候被调用?析构函数(finalization)的目的是什么?
最近无意间获得一份阿里大佬写的刷题笔记,一下子打通了我的任督二脉,进大厂原来没那么难。这是大佬写的7701页的BAT大佬写的刷题笔记,让我offer拿到手软本文,已收录于,我的技术网站cxykk.com:程序员编程资料站,有大厂完整面经,工作技术,架构师成长之路,等经验分享。
2024-11-28 22:23:36
1054
原创 Java基础面试题06:hashCode()和equals()方法的重要性体现在什么地方?
Java中的hashCode()和equals()方法看似是干同一件事,但它们的使用场景和作用却大有不同。为了让程序更高效、更准确地运行,我们需要对这两者有深入的了解,并掌握它们的重写规则。hashCode()是用来返回一个哈希值(int类型)的,它的作用是确定对象在散列表(如HashMap或HashSet)中的存储位置。// 输出结果为3104哈希值的作用可以把哈希值看成是对象的身份证号,散列表会根据这个“身份证号”快速定位到对象的位置。定义在哪hashCode()方法定义在。
2024-11-28 22:23:10
1212
原创 Java基础面试题05:简述快速失败(fail-fast)和安全失败(fail-safe)的区别 ?
fail-fast是基于集合本体操作,检测到修改会抛异常,适用于单线程操作。fail-safe是基于集合副本操作,允许修改,但无法反映最新状态,适用于并发环境。最近无意间获得一份阿里大佬写的刷题笔记,一下子打通了我的任督二脉,进大厂原来没那么难。这是大佬写的7701页的BAT大佬写的刷题笔记,让我offer拿到手软本文,已收录于,我的技术网站cxykk.com:程序员编程资料站,有大厂完整面经,工作技术,架构师成长之路,等经验分享。
2024-11-24 10:05:56
1424
原创 Java基础面试题04:Iterator 和 ListIterator 的区别是什么?
功能Iterator支持集合类型所有 Collection 集合只支持 List 集合遍历方向只能向前可以双向遍历修改能力只能删除添加、删除、修改样样行应用场景基本遍历,不需要复杂操作需要更灵活、更复杂的操作时首选一句话,Iterator 是基础款,ListIterator 是进阶款!记住它们的使用场景,面试官问起来,你就能轻松应对啦。最近无意间获得一份阿里大佬写的刷题笔记,一下子打通了我的任督二脉,进大厂原来没那么难。这是大佬写的7701页的BAT大佬写的刷题笔记,让我offer拿到手软。
2024-11-23 21:40:31
656
原创 Java基础面试题03:简述什么是迭代器(Iterator)?
迭代器(Iterator)是遍历集合的强大工具。解耦遍历逻辑与集合实现,代码更灵活。支持删除和修改元素操作。适合各种集合类型,包括有序和无序集合。当你只需要简单遍历时,For-Each 是最简单的选择;但如果需要修改集合或者操作链式结构的集合,Iterator 无疑是最好的工具。最近无意间获得一份阿里大佬写的刷题笔记,一下子打通了我的任督二脉,进大厂原来没那么难。这是大佬写的7701页的BAT大佬写的刷题笔记,让我offer拿到手软本文,已收录于,我的技术网站。
2024-11-23 21:38:42
806
原创 Java基础面试题02:简述什么是值传递和引用传递?
引用传递(pass by reference)是指直接将实际参数的“地址”传递给函数。函数内的参数变动,会直接影响到实际参数的值,因为函数操作的是原始的“引用”而不是副本。然而!许多编程语言(比如 Java 和 Go)其实并不是严格意义上的引用传递。它们传递的依然是“值”,只不过这个“值”可能是对象的引用(也就是内存地址的副本)。这点是很多人容易误解的地方。值传递:传递的是参数的值,函数内修改对实际参数无影响。引用传递:传递的是参数的引用,函数内修改直接影响实际参数。
2024-11-23 21:37:14
1193
原创 Java基础面试题01-请描述Java中JDK和JRE的区别?
JDK 全称,中文叫“Java 开发工具包”。它是给Java 开发者用的工具箱,里面有一切写代码、编译代码、调试代码所需要的工具。JRE 全称,中文叫“Java 运行环境”。它是给普通用户用的,帮助运行 Java 程序的“后勤保障”。JDK 是开发者的好帮手,帮你从零开发 Java 程序;JRE 是普通用户的运行管家,确保 Java 程序能顺利跑起来。最近无意间获得一份阿里大佬写的刷题笔记,一下子打通了我的任督二脉,进大厂原来没那么难。这是大佬写的。
2024-11-23 21:33:55
589
原创 阿里面试: RocketMQ如何实现每秒上十万QPS的超高吞吐量读取的?
总的来说,RocketMQ能实现每秒上十万QPS的超高吞吐量,靠的就是这些个聪明的策略和优化。它在存储、读取、I/O、网络交互以及数据复制上都动了不少脑筋,每一块儿都拿捏得死死的。你别看它搞得玄乎,其实就是把咱们开发中遇到的瓶颈一个一个给突破了。RocketMQ不止是快,更重要的是稳。稳到你几乎感觉不到它的存在,一切都在后台默默搞定。这也就解释了为啥这么多人爱用它——少折腾,效率高。最近无意间获得一份阿里大佬写的刷题笔记,一下子打通了我的任督二脉,进大厂原来没那么难。这是大佬写的,
2024-10-08 22:09:49
1455
原创 MQ核心作用异步&削峰&解耦使用场景详解
块相互独立不“拖后腿”,MQ 都是不可或缺的帮手。那么,MQ 是怎么削峰的?或者它是如何让复杂系统解耦的?
2024-10-08 14:25:15
1002
原创 只写CURD后台管理的Java后端要如何提升自己
学习的过程,就好像登山一样,大概有 80% 的人在这个过程中会掉队。要想成为一名优秀的架构师,除了自身的努力,也需要一点点运气。那么请相信我,只要目标明确,努力加上坚持,再加上一点点好运气,你就能登顶!最近无意间获得一份阿里大佬写的刷题笔记,一下子打通了我的任督二脉,进大厂原来没那么难。这是大佬写的,7701页的BAT大佬写的刷题笔记,让我offer拿到手软本文,已收录于,我的技术网站cxykk.com:程序员编程资料站,有大厂完整面经,工作技术,架构师成长之路,等经验分享。
2024-09-30 10:54:33
1219
原创 腾讯二面:40亿QQ号, 1G内存,怎么去重?
BitMap,顾名思义,就是用“位”来存储数据的技术。我们平时可能听过“字节”、“兆字节”这些词,但BitMap更小巧精悍,直接用最小的数据单位——“位”——来操作。在计算机里,1个字节(Byte)等于8位(bit),也就是说,一个字节能记录8个信息点。这个小小的技巧让BitMap在处理海量数据的时候非常高效。举个简单的例子,我们生活中常常要做记录,比如每天上班打卡。如果你每天只打一次卡,我们可以用一张纸每天划一个“√”来表示今天打了卡。
2024-09-30 10:53:22
1211
原创 字节面试:如何让单机下Netty支持百万长连接?
最近无意间获得一份阿里大佬写的刷题笔记,一下子打通了我的任督二脉,进大厂原来没那么难。这是大佬写的,7701页的BAT大佬写的刷题笔记,让我offer拿到手软本文,已收录于,我的技术网站cxykk.com:程序员编程资料站,有大厂完整面经,工作技术,架构师成长之路,等经验分享。
2024-07-18 19:02:03
1366
原创 面试必问:线程池的最佳核心线程如何确定
看到这里的小伙伴,相信对于如何确定线程池的最佳线程数(核心线程数、最大线程数)心里有一定思路了。总结下来就三步:理论预估、压测验证、生产监控动态调整。
2024-07-09 23:21:47
1820
原创 架构师必知的绝活-JVM调优
## 为什么要学JVM?**首先:面试需要**> 了解JVM能帮助回答面试中的复杂问题。面试中涉及到的JVM相关问题层出不穷,难道每次面试都靠背几百上千条面试八股?**其次:基础知识决定上层建筑**>自己写的代码都不知道是怎么回事,怎么可能写出靠谱的系统?只有理解了JVM的工作机制,才能真正掌握Java这门语言,写出高效、稳定的代码。**然后:学习JVM也是进行JVM调优的基础**> 写的代码放到线上要如何运行?要配多少内存?4G够不够?线上环境出问题,服务崩溃了,怎么快速定位?
2024-06-29 16:18:39
1244
原创 CPU飙升100%怎么办?字节跳动面试官告诉你答案!
CPU占用率突然飙升是技术人员常遇到的一个棘手问题,它是一个与具体技术无关的普遍挑战。这个问题可以很简单,也可以相当复杂。>有时候,只是一个死循环在作祟。 有时候,是死锁导致的。 有时候,代码中有不必要的同步块。 有时候,是大量计算密集型任务在运行。 有时候,是线程数过多引起的。 有时候,是频繁的上下文切换。 有时候,是内存不足的问题。 有时候,是频繁的垃圾回收。 有时候,是内存泄漏导致的。等等。
2024-06-22 18:10:55
1680
原创 架构师必知的11种API接口性能优化方法
接口性能优化是后端开发人员经常碰到的一道面试题,因为它是一个跟开发语言无关的公共问题。这个问题既可以很简单,也可以相当复杂。> 有时候,只需要添加一个索引就能解决。 有时候,代码需要进行重构。 有时候,必须增加缓存。 有时候,需要引入一些中间件,例如消息队列(MQ)。 有时候,需进行分库分表。 有时候,需要拆分服务。 等等。
2024-06-21 22:41:38
1294
原创 面试官问:百万QPS秒杀系统该如何设计_2024-06-13
> 平时没做过秒杀系统,但是面试又总被问秒杀系统该如何设计? > 支撑十万,百万 QPS 的秒杀系统又该如何设计?
2024-06-13 22:46:07
1349
Java技术2025最新Java集合面试宝典:集合框架核心概念与常见面试题解析(52道含答案)
2025-04-01
【Java技术领域】Java虚拟机(JVM)面试题详解:涵盖内存模型、垃圾回收、类加载及调优技术(51道含答案)
2025-04-01
【Java技术领域】2025最新Java面试宝典:基础知识与核心考点详解(91道含答案)
2025-04-01
Java并发编程面试题详解:123道经典题目解析与实战技巧
2025-04-01
Git常用命令详解与实战技巧-Java开发者面试必备工具
2025-04-01
【2025最新Java面试宝典】 BIO、NIO、AIO、Netty面试题(35道含答案)
2025-03-31
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人