- 博客(439)
- 资源 (7)
- 收藏
- 关注
原创 成为会带团队的技术人
解读目标很重要,不能极端;制定目标要聚焦且长短结合;传递目标要考虑团队成员感受。管理是一套逻辑框架,各部分相互关联,需形成管理闭环。最后提出关于目标对齐中上级存在的问题以及目标传递方式的思考。技术人员转变为管理者后,事务繁多,容易抓不住核心,导致能力未提升且项目成果得不到认可。从解决个人问题变为解决团队问题,问题由单点变多点,明确目标对减小交付结果与预期的差值至关重要。以code review为例的机制设计。
2025-01-25 22:10:32
804
原创 【架构面试】三、高可用高性能架构设计
架构原理、分布式技术等是面试必考领域,高可用高性能需求考察频繁。面试常通过询问系统架构设计来考察能力,讲解架构设计过程就是证明系统高可用的过程,其中涉及SLA指标。
2025-01-25 21:28:27
863
原创 Kafka 如何实现高性能
分布式架构与分区机制提高并行处理能力。顺序写入磁盘与批量处理减少 I/O 延迟。压缩与零拷贝提升网络和存储的效率。副本机制与消费者分组保证高可用性与吞吐量。流控与负载均衡保障系统在高并发下的稳定性。这些设计使得 Kafka 能够在大规模、高吞吐量、低延迟的场景中发挥出色的性能。
2025-01-25 21:03:35
620
原创 【架构面试】二、消息队列和MySQL和Redis
消息从生产到消费分为生产、存储、消费三个阶段。生产阶段处理好返回值和异常可避免丢失;存储阶段由MQ保证,如broker做副本;消费阶段接收消息后执行完业务逻辑再确认可防止丢失。:在生产端给消息指定消息版本号,通过拦截器注入消息;消费端用拦截器检测版本连续性或消费状态,实现不侵入业务代码的消息检测。
2025-01-25 21:01:36
628
原创 MQ的可靠消息投递机制
确保消息可靠投递:消息持久化、确认机制、幂等性设计。防止消息丢失与重复消费:重试机制、死信队列、幂等性设计。保证消息顺序性:分区机制、队列顺序。扩展能力:消费者扩展、积压管理、限流。监控与报警:消息延迟、积压、消费速率等指标的监控。
2025-01-25 20:53:07
964
原创 【架构面试】一、架构设计认知
涉及分布式锁、中间件、数据库、分布式缓存、系统高可用等多个技术领域,旨在考查候选人的技术深度、架构设计能力与解决实际问题的能力。用 Redis 实现分布式锁会存在哪些问题?Redis 如何实现多节点之间的数据一致性?如何回答实现一个 RPC 框架?MQ 如何实现消息的不丢失、不重复消费以及积压等问题?架构师视角面试要点系统复杂度分析方法点评系统架构方案设计架构方案评估标准技术实现与面试总结分布式面试与CP理论重要性:在互联网技术面试里,分布式技术是必考内容,尤其在一线互联网公司对候选人的要求中,分布式系统设
2025-01-25 18:21:34
989
原创 【面试题】 Java 三年工作经验(2025)
1. 为什么选择 spring boot 框架,它与 Spring 有什么区别?2. spring mvc 的执行流程是什么?3. 如何实现 spring 的 IOC 过程,会用到什么技术?4. spring boot 的自动化配置的原理是什么?5. 如何理解 spring boot 中的 star?6. spring boot 为什么要用嵌入式的 web 容器?
2025-01-23 00:30:17
1621
原创 【面试】Java 记录一次面试过程 三年工作经验
方法中,首先获取当前线程,然后获取线程的。实例作为键,要设置的值作为值存入。方法类似,先获取当前线程的。实例作为键获取对应的值。不存在则创建,接着将。
2025-01-23 00:07:10
1006
原创 【面试题】java基础概念
通过以上原理,JIT编译器能够在Java程序运行时,动态地对热点代码进行优化编译,将字节码转换为高效的本地机器码,从而显著提高Java程序的执行性能,使其能够在性能上与一些传统的编译型语言相媲美。
2025-01-22 23:57:55
620
原创 【面试题Java】单例模式
为了防止反射和反序列化破坏单例,可以在单例类的私有构造函数中添加逻辑,判断是否已经创建过实例,如果是则抛出异常。对于对象克隆,可以重写。方法,返回单例实例而不是创建新的实例。对于枚举类型的单例,由于其本身的特性,天然防止了反射、反序列化和对象克隆的破坏。
2025-01-22 23:54:24
1040
原创 【面试常见问题】
求职者朱晓明虽表明自己善于交际、积极,23 年毕业且从事 java 开发,但只是罗列基本信息和性格特点,未突出对公司的价值与自身优势,显得平淡普通,难以引起面试官兴趣。阐述工作热情来源:讲述在阿里实习获得单独项目,掌控设计与编码,积累经验并接触新技术,从而爱上后端开发工作。突出工作经验与成果:有 3 年经验,在现公司构建数十种应用,助力公司基础设施现代化、自动化,涉及 CICD 构建微服务、更新现有微服务及相关技术运用。总结自身价值。
2025-01-22 23:50:08
1274
原创 【Java】内存相关面试题
是自动化内存管理的一部分,用于回收程序中不再使用的对象并释放其占用的内存。Java中的垃圾回收器主要负责回收堆内存中不再被引用的对象,避免内存泄漏,确保应用程序的内存管理高效。Java的垃圾回收机制主要依赖于 JVM 来自动进行对象的内存管理。它会定期扫描堆内存,标记不可达的对象,并回收其占用的内存。Java的垃圾回收采用的是。
2025-01-22 13:50:59
701
原创 【Java】面试中遇到的两个排序
快速排序是一种高效的排序算法,特别适用于大数据集。尽管最坏情况下时间复杂度是O(n^2),但通过选择合适的基准和优化策略,快速排序在实际应用中表现通常非常好。归并排序是一种稳定且高效的排序算法,特别适合于大数据量的排序。它的时间复杂度为O(n log n),在最坏情况下也能保持较好的性能。不过,它的空间复杂度较高,需要额外的空间来存储临时数组。在实际应用中,归并排序适用于处理大规模数据集的排序。
2025-01-22 10:17:15
1340
原创 【 Java】 Full GC 一定会 stop the world 吗 ?
由于 Java 堆可能包含大量的对象,并且堆内存的管理涉及到复杂的操作,如对象标记、清理等,为了保证堆内存的一致性和垃圾回收的正确性,在进行 Full GC 时,通常会暂停所有的应用程序线程,这就是所谓的 Stop-The-World。尽管这些并发垃圾回收器在很大程度上减少了 STW 的时间,但在某些关键阶段仍然需要暂停应用程序线程以确保垃圾回收的准确性和堆内存的一致性。如果你希望减少 STW 的影响,可以根据应用程序的特点选择合适的垃圾回收器,并对垃圾回收器的参数进行调优,以达到更好的性能和更低的延迟。
2025-01-21 19:26:09
648
原创 【Hadoop面试题2025】
Hadoop的NameNode负责管理所有文件和目录的元数据,如果存在大量小文件,会导致NameNode存储的元数据量急剧增加,最终可能导致内存不足,影响整个集群的稳定性。例如,使用文件的最后访问时间,周期性检查是否存在超过N个月未访问的冷文件,并采取清理或迁移策略。:系统中存在一些过时的数据,可能是某个时间段的备份文件,或者已经过期的日志文件、报表数据等,这些文件可能不会再被频繁访问。对于大数据处理框架,可以通过设置不同的存储层级,保证频繁访问的数据和冷数据的分离,避免冷数据影响热数据的处理效率。
2025-01-18 20:57:41
1571
原创 【大数据2025】MapReduce
-**起源与发展**:是2004年10月谷歌发表的MAPREDUCE论文的开源实现,最初用于大规模网页数据并行处理,现成为Hadoop核心子项目之一,是面向批处理的分布式计算框架。-**基本原理**:分为map和reduce两个阶段。map阶段将计算任务分发到数据节点并行运算,各节点得出部分结果;reduce阶段汇总部分结果得到最终结果,体现分而治之与并行运算思想,遵循计算跟着数据走、移动计算而非数据的原则。
2025-01-18 20:32:34
1351
原创 【大数据2025】Yarn 总结
Yarn是分布式通用资源管理系统,处于通用计算和数据存储中间位置。解决了MapReduce的问题,使资源调度更精细且通用性增强,可调度多种计算框架作业到HDFS运行,同时对MapReduce单点故障率高的问题也有相应解决措施(后续内容应会提及具体架构优化方式)。架构组成:高可用架构由多台主节点构成,其中一台主节点处于active管理状态,其余为standby热备状态。状态决策机制:主节点间状态由zookeeper管控。
2025-01-18 19:52:10
1247
原创 【大数据2025】Hadoop 万字讲解
定义:为满足海量数据存储与计算的技术或架构。4V特征数据规模巨大(Volume):如达到10PB、50PB等海量规模。数据生成和处理速度快(Velocity):如鞋厂2017年每天数据增量100TB,且需快速处理。数据多样性(Variety):涵盖结构化、非结构化和半结构化数据,互联网时代后两者占比更高。价值(Value):海量数据挖掘价值高,与人工智能结合潜力大,但价值密度低,因数据量庞大稀释了价值。满足这四个特征的场景即为大数据场景,也称大数据的4V特性。
2025-01-18 18:33:40
2255
原创 【k8s面试题2025】3、练气中期
一、可能的报错原因端口冲突原因当你为 Service 定义自定义端口时,可能会出现该端口与集群内其他服务使用的端口冲突的情况。这可能是因为选择了一个已经被其他 Service 或节点上的其他进程占用的端口号。例如,你在一个 Service 中设置端口为 8080,而另一个 Service 或者节点上的某个服务已经在使用 8080 端口进行通信,这样就会导致冲突。解决方法首先,使用检查集群中现有的服务端口,确保选择的自定义端口未被使用。可以使用或ss -tuln。
2025-01-16 22:55:09
2278
原创 【k8s面试题2025】2、练气初期
当需要在节点上运行一些特殊的监控工具或者管理工具容器时,静态Pod是一个很好的选择。例如,一个用于收集节点硬件信息的监控容器,将其作为静态Pod运行可以保证它在节点上持续运行,并且可以通过自定义的配置文件来灵活调整其运行参数。
2025-01-16 22:38:18
2106
原创 k8s 的网络问题进行检查和诊断
通过以上步骤,可以从多个方面对 k8s 的网络问题进行检查和诊断,根据具体的检查结果,可以进一步深入分析和解决问题,确保 k8s 集群的网络正常运行。不同的网络问题可能需要不同的解决方法,可能涉及网络组件的重新配置、调整网络策略、修复 DNS 服务或修复网络接口等操作。
2025-01-16 13:34:14
2343
原创 k8s 集群组件
请注意,不同的 Kubernetes 版本和部署环境可能会有一些细微的差异,但上述核心组件及其功能基本相同。同时,在生产环境中,可能会有额外的组件或插件,如网络插件(Calico、Flannel 等)、存储插件(Ceph、NFS 等),它们也需要进行状态检查和维护,以保证集群的整体性能和功能。可以快速查看一些关键组件的状态,对于出现问题的组件,可以根据相应的日志和配置文件进行深入排查和解决,以确保集群的稳定性和可靠性。在 Kubernetes(k8s)中,以下是一些重要的集群组件,可以通过。
2025-01-16 13:17:14
2020
原创 工作八年以来,最大的感悟有哪些?
上班获取收入的同时,别太在意他人言行,注重保养身体、关怀家人,切勿将工作负面情绪带回家,牢记工作是为了更好地生活,防止本末倒置。对于伤害自己的人,有机会就反击,没机会则隐忍。不仅要把自己打造成超级个体,还要挖掘其他有潜力的超级个体,形成利益共同体,确保自己在职场中有稳固的立足之地,不轻易被淘汰。无论项目成功或失败,结束后都要为自己复盘,着重总结自身可优化之处,将自身收获置于首位,而非着眼于对公司的重要性。内心要尊重事实,明白风口上的事物虽能短暂辉煌,但也有跌落的风险,避免盲目跟风,以免摔得惨痛。
2025-01-14 21:18:41
1889
原创 马克思对资本主义的剖析与当代回响
当代工人与资本主义的复杂关系- **工人经济状况的变化**:二战后,教育和服务业扩张使部分工人家庭经济改善,一些工人通过投资成为资本拥有者,如美国和英国部分家庭持有股票,这使阶级界限不再清晰。- **国家与意识形态的影响**:当代国家在资本主义社会中的作用更积极,通过提供福利等措施缓解危机、缓冲工人抵抗,但仍维持着经济不平等。同时,意识形态使工人在一定程度上接受现状,但这并不能掩盖资本主义的本质问题,下期视频将进一步分析工人满足现状背后的原因。
2025-01-12 14:24:30
2503
原创 【微服务】面试 8、分布式任务调度
主流工具:在分布式任务调度技术中,XXL - Job 是目前较为主流的工具。应用场景:在 Java 后台项目中,任务调度技术应用广泛。以 XXL - Job 为例,它主要解决了以下四个常见问题:集群任务重复执行:相比 Spring Task 在集群环境下可能出现多个实例执行同一任务的冲突情况,XXL - Job 能有效避免此类问题。Cron 表达式管理:Spring Task 将 Cron 表达式定义在代码中,而 XXL - Job 可在页面上定义,管理和修改更灵活便捷。定时任务失败处理。
2025-01-12 14:14:12
3058
原创 【微服务】面试 7、幂等性
首先解释幂等性概念,接着说明新增或修改操作可能引发幂等问题。对于新增数据,可根据表中是否有唯一索引选择使用数据库唯一索引,若没有则可采用分布式锁或 token 加 redis 方案,其中 token 加 redis 方案性能相对较高,并详细描述其流程。:适用于解决新增操作的幂等性问题,但要求表中有相应的唯一索引。
2025-01-12 14:00:40
2855
原创 【微服务】面试题 6、分布式事务
- 因微服务项目涉及远程调用可能引发分布式事务问题,需解决。- 主流解决方案有阿里 Seata 框架(含 XA、AT、TCC 模式)和 MQ。
2025-01-12 13:46:05
2791
原创 【微服务】面试题 5、分布式系统理论:CAP 与 BASE 详解
1998 年由加州大学科学家埃里克·布鲁尔提出,分布式系统存在一致性(Consistency)、可用性(Availability)、分区容错性(Partition tolerance)三个指标,且不能同时满足,此为 CAP 定理。
2025-01-12 12:24:59
2731
原创 【微服务】面试 4、限流
在没有 Nginx 或网关的情况下,可采用自定义连接器限流,但在一般微服务项目中,通常会有 Nginx 或网关,所以在面试中重点应阐述 Nginx 和网关的限流方式。
2025-01-12 12:13:59
3247
原创 【微服务】面试 3、 服务监控 SkyWalking
清晰呈现服务间调用关系,包括与数据库(如 MySQL、Redis)的调用关系,并且会将不健康的服务标红,方便直观了解服务架构健康状况和服务间的依赖关系,即使在服务数量较多的情况下也能清晰展示。
2025-01-12 11:35:48
2980
原创 【微服务】面试 2、服务雪崩
主要内容:以服务 d 为例,其包含修改和保存两个接口,若保存接口出现问题(如抛异常),服务 a 调用该接口时可加入降级逻辑。降级逻辑可提示用户“网络有问题,请稍后再试”,此时保存功能暂时不可用。核心概念:在接口出现问题时,通过自定义逻辑使部分服务功能暂时不可用,以保障服务稳定性。关键知识点:服务降级的触发条件(接口异常)、降级逻辑的设置方式(如提示信息)以及对服务功能的影响(部分功能不可用)。主要内容:由hystrix组件提供,有关闭、打开、半开三个状态,默认关闭,可在引导类上加注解开启。
2025-01-12 11:21:40
3369
原创 【微服务】面试 2、负载均衡
轮询(Round Robin):按顺序依次调用服务实例,如有两个实例,先调用 8081,下次则调用 8082,依此类推。权重选择:依据服务器的响应时间确定权重,响应时间越长权重越小,被选中概率越低。随机测量:随机挑选一个可用服务器进行调用。最小连接数(Best Available):忽略短路服务器,选择并发数较低(即空闲较多)的服务器。例如有两台服务器,连接数分别为 100 和 50,会选择连接数为 50 的服务器。重试机制(Retry)
2025-01-12 11:05:38
2931
原创 【微服务】面试 1、概述和服务发现
微服务面试题课程内容架构Spring Cloud 部分服务注册:重点讲解(Nacos)和(Eureka),这是微服务架构中实现服务发现与注册的关键组件,确保服务间能够相互定位与通信。负载均衡:涵盖 ribbon 的负载均衡策略及自定义负载均衡方法。ribbon 可依据不同规则将请求合理分配到多个服务实例,如轮询、随机等策略,自定义负载均衡则能根据特定业务需求灵活调整分配方式。熔断和降级:在微服务系统面临高并发或部分服务故障时,熔断机制可及时切断故障服务调用链路,防止故障蔓延;降级策略则通过暂
2025-01-12 10:55:53
3294
原创 Kafka消息队列出现消息堆积如何解决
Kafka消息队列出现消息堆积,通常是由于消息生产速度远大于消费速度,可能由消费者处理能力不足、网络问题、Kafka配置不合理等原因导致。
2025-01-11 23:13:28
2838
原创 Redis解决热key问题
当Redis遇到热key问题时,即某个或某些key被频繁访问,可能导致单个Redis节点负载过高,影响整个系统性能。
2025-01-11 21:22:27
2934
远程软件,手机termux,扩展屏等
2024-10-14
开源的编程字体Menlo,Monaco,Mononoki,Ubuntu, source-code-pro
2024-02-05
C++学习资料, linux基本命令,
2023-12-06
画图/C环境/php/ssh远程连接
2023-11-16
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅