- 相关博文
- 最新资讯
-
深度拆解企业 OA 系统设计方法论:从业务场景、门户入口、BPM 流程、业务单据、状态机、附件中心、通知与 IM 触达到审计追踪,结合 Spring Boot 3.5、Flowable 7、Vue3 和 Vben Admin 说明一套可落地的 OA 架构。
-
在 Elasticsearch 集群运行过程中,双 Master(脑裂)是最严重、最危险的故障之一。一旦出现双主节点,集群元数据会错乱、数据写入不一致、分片无法分配,最终导致整个集群不可用。很多生产环境的双 Master 问题,都是因为节点配置错误、网络分区、选举参数不合理导致的。本文将从双 Master 产生原因 → 识别方法 → 紧急恢复 → 永久解决 → 生产配置,完整讲解如何彻底杜绝和解决 ES 双 Master 问题。双 Master = 一个集群同时出现两个活跃的主节点。
-
在 Elasticsearch / Lucene 底层,倒排索引(Inverted Index)是实现全文检索的核心,而Posting List(倒排列表)就是倒排索引中真正存储数据、决定检索速度的关键结构。如果你想真正搞懂 ES 为什么能毫秒级查询,就必须理解 Posting List。本文用通俗语言 + 结构图 + 流程 + 底层原理什么是 Posting List、存什么、怎么存、为什么快、如何工作。Posting List = 包含某个关键词(Term)的所有文档 ID 列表它是倒排索引的。
-
本文深入探讨了多线程编程中的线程互斥问题,通过售票系统案例揭示了共享资源并发访问的潜在风险。文章首先解析了共享资源、临界资源、临界区等核心概念,并详细剖析了多线程操作共享资源导致数据不一致的三个关键原因。重点介绍了互斥量(mutex)的工作原理与使用方法,包括POSIX线程库的互斥锁API、C++的RAII风格封装(LockGuard)等实用技术。文章还从CPU指令层面揭示了互斥量的底层实现机制,并提供了互斥量使用的最佳实践和常见陷阱。最后预告了线程同步技术(条件变量)将在下篇介绍,为构建更复杂的多线程协作
-
RabbitMQ环境搭建指南(本地+Docker) 本文提供两种RabbitMQ安装方式: 本地安装:需先安装Erlang运行环境,再下载RabbitMQ并配置环境变量 Docker安装:直接拉取rabbitmq:management镜像,通过docker run命令启动容器,自动包含Erlang环境,支持端口映射(5672/15672)和数据持久化 两种方式均可通过访问localhost:15672进入管理界面验证安装成功,为后续开发提供基础环境支持。
-
重启后会自动弹出 Ubuntu 终端,设置用户名和密码(密码输入时不显示,正常输入即可)。(如 OpenAI、Anthropic、OpenRouter 等),输入后即可使用。右键开始菜单 → 选择。
-
前言一、什么是 field_value_factor?1.1 定义1.2 核心作用1.3 field_value_factor 工作流程图二、基础语法结构三、核心参数详解(必掌握)1. field(必须)2. factor(可选,默认 1.0)3. modifier(最重要:平滑函数)4. missing(可选)四、评分计算公式五、最常用实战场景(直接复制可用)场景 1:商品销量加权(最常用)场景 2:文章热度/阅读量加权场景 3:店铺评分加权六、分数合并规则:boost_mode。
-
本文系统介绍了Git版本控制和GDB/CGDB调试器的使用。主要内容包括:1) Git的基本概念、操作流程(克隆、三板斧add/commit/push)和工作区/暂存区/仓库结构;2) Git远程仓库同步与冲突处理方法;3) GDB/CGDB调试器的核心功能(断点设置、变量监控、单步执行等)和常用指令;4) 高级调试技巧如条件断点、动态修改变量值等。文章详细阐述了从代码版本管理到调试优化的完整开发流程,为开发者提供了实用的工具使用指南。
-
从0到1认识数仓,了解基础概念
-
Hadoop是一个由Apache基金会所开发的分布式系统基础框架。主要解决,海量数据的存储和海量数据的分析计算问题。广义上来说,Hadoop通常是指一个更广泛的概念-Hadoop生态圈。(1)NameNode:存储文件的元数据,如文件名,文件目录结构,文件属性(生产时间,副本数(默认副本数为3),文件权限,),以及每个文件的块列表和所在的DataNode等。(2)DataNode:在本地文件系统存储文件块数据,以及块数据和校验和。
-
在现代互联网架构中,日志数据是系统运维的“黑匣子”。本章通过构建一个端到端的**实时日志采集分析系统**,模拟了企业级生产环境中的核心需求。
-
ls -lh ~/下载/hadoop-3.3.6.tar.gz ~/下载/hadoop-3.3.6.tar.gz.sha512。目的:把 Hadoop 固定安装到 /usr/local/hadoop,并把目录权限交给 hadoop 用户。sudo tar -zxf ~/下载/hadoop-3.3.6.tar.gz -C /usr/local。目的:安装 SSH、rsync、wget、tar 等 Hadoop 安装和启动所需工具。cat ~/下载/hadoop-3.3.6.tar.gz.sha512。
-
Kafka Docker 持久化配置问题解决方案 问题现象 重启 Kafka Docker 容器后,Topic 和消息全部丢失 添加数据卷后 Kafka 无限重启,报错 InconsistentClusterIdException 根因分析 仅持久化 Kafka 数据目录而未持久化 ZooKeeper 数据 ZooKeeper 重启后生成新 Cluster ID,与 Kafka 本地存储的旧 ID 不匹配 解决方案 为 ZooKeeper 添加正确的数据卷挂载: volumes: - ./zookeeper
-
ES性能调优不是单一维度的优化,而是“写入、查询、集群、JVM”的协同优化,记住以下10条黄金准则,可解决90%的生产性能问题:写入必用Bulk批量,控制单批大小5~15MB;查询优先用filter,利用缓存减少打分;深度分页禁用from+size,首选search_after;聚合、排序、精确匹配必须用keyword类型;text字段仅用于全文检索,关闭不必要的索引;JVM堆内存设为32GB以内,Xms=Xmx;服务器必须用SSD,关闭swap,配置足够文件句柄;
-
本文探讨了AI时代基于大数据驱动的内容运营体系建设。文章分析了人与信息的三个核心问题:信息产生、组织整理和触达消费者,重点讨论了后两者。内容运营体系围绕数据、信息和人的关系展开,将数据分为内容数据和行为数据两大类,通过特征计算形成内容画像和用户画像进行匹配。运营体系包含基础运营、高级运营和智能运营三个层次,并介绍了数据驱动与大数据驱动的不同应用场景。文章还提出了实时和离线两套大数据架构方案,以及AI时代新增的向量数据库、大语言模型等组件。最终目标是实现内容与用户的最优匹配,提升内容消费体验。
-
【大数据开发面试中的K8S核心知识点】面试发现大数据开发岗位对Kubernetes的要求显著提升。关键要点包括:1)资源调度层面,需区分Spark动态扩Executor与K8S集群扩Node的逻辑差异;2)服务暴露方式要明确ClusterIP/NodePort/LoadBalancer的区别;3)掌握Prometheus四类核心指标;4)理解节点调度策略;5)OOM排查需区分RSS/WSS/container_memory_usage等内存指标。数据平台开发需要建立完整的资源模型认知,包括工作负载扩缩容
-
该方法除了func之外,还存在一个参数:preservesPartitioning,默认false,是否保留原分区信息,默认的话是不保留,即所有数据shuffle操作。类似于map,但会在RDD的每个分区上单独运行,因此当对类型为T的RDD运行时,func必须是Iterator
类型;函数返回一个新的数据集,包含源数据集中的所有不重复元素。函数返回一个新的RDD,包含在源数据集中存在但在参数数据集中不存在的元素(即差集)。函数返回一个新的数据集,包含源数据集和参数数据集的所有元素的并集。 -
在流量红利消失、平台规则持续收紧的今天,矩阵运营的竞争,早已从 “账号数量的竞争”,变成了 “运营效率与决策能力的竞争”。传统矩阵工具在执行效率上的内卷,已经无法为企业带来真正的增长突破,只有从底层架构上,用 AI Agent 重构矩阵运营的全链路,实现从 “人指挥工具” 到 “AI 自主操盘” 的本质跃迁,才能真正突破行业的天花板。
-
【系统架构师案例题-知识点】云原生与大数据架构
-
本文介绍了一种基于Elasticsearch和LLM的智能房产搜索实现方案。文章对比了三种技术路径:1)Python代码实现;2)MCP服务器方案;3)AIBuilder+Workflow组合。重点推荐了最简便的第三种方案,详细说明了如何通过创建property_search_skill技能来实现地理编码和DSL模板搜索功能。该方案无需额外编程,直接在Kibana中配置agent和workflow即可完成,维护简单高效。文章提供了完整的技能配置代码和搜索模板示例,展示了如何根据用户输入的卧室数、浴室数、预算
加载中...
-
ES2020 是 ECMAScript 对应 2020 年的版本。这个版本不像 ES6 (ES2015)那样包含大量新特性。但也添加了许多有趣且有用的特性。本文的代码地址:https://github.com/ljianshu/Blog 本文以简单的代码示例来介绍 ES2020新特性。这样,你可以很快理解这些新功能,而不需要多么复杂的解释。
