登录社区云,与社区用户共同成长
邀请您加入社区
本文摘要介绍了Grafana配置文件中的关键配置项,主要包括: 路径设置:包括数据、日志、插件和配置文件的存储路径; 服务器配置:协议、端口、域名、TLS等网络相关设置; 数据库连接:支持多种数据库类型及连接参数配置; 安全设置:管理员账户、加密、Cookie安全、内容安全策略等; 认证配置:登录设置、OAuth集成、匿名访问等。 这些配置项涵盖了Grafana的核心功能模块,包括数据存储、网络服
文章摘要: 本文全面解析Claude Code生态的最佳增强工具,涵盖Skills、MCP服务和Plugin三大类。重点推荐Superpowers工程框架、Caveman Token压缩工具、Context7 MCP实时文档服务等核心工具,提供详细安装命令和使用场景分析。作者结合自身实践,对比不同工具在代码质量、开发效率和成本控制方面的表现,帮助开发者优化AI编程体验。特别适合需要长期使用Clau
本文深入剖析了Java虚拟机(JVM)中Safepoint(安全点)的核心机制。Safepoint是JVM实现全局操作的关键技术,通过硬件轮询和线程状态管理确保线程安全暂停。文章详细解析了OpenJDK 8的实现原理:1)基于内存页权限修改的主动轮询机制,JIT在特定位置插入轮询指令;2)线程状态转移模型,区分不同状态的线程处理方式;3)源码级分析触发流程,包括内存页保护、信号处理和线程阻塞等关键
起因:因为我是一个不管做什么事情都喜欢进行总结的一个人。所以对于在上周去淘宝面试的经历,现在面试回来总结,我想对所有程序员们谈谈。之前我是在一家外企工作的,待遇还算不错,自己也做了快五年了,因为考虑到家庭的原因,所以在前面几周辞职回了杭州。在朋友听到我辞职回来后,好多关系比较好的同事朋友也向我推荐了好多家企业。如:蚂蚁金服;支付宝;蘑菇街;阿里云;淘宝;挖财等~~~~这几家公司我都去面试了...
以下是2012年一个公司内部项目的技术总结,涉及到的方面比较多比较杂,拿出来和大家分享下。如果有更好的方案或者想法请联系我,谢谢~!注:文章中提到的其他系统(如哈勃Agent、EagleEye)是公司内部的其他系统,这里就不详细介绍了。简介TLog是一个分布式的,可靠的,对大量数据进行收集、分析、展现的的系统。主要应用场景是收集大量的运行时日志,分析并结构化存储,提供数据查询和展现。
通过定时爬取商品库存和价格,实现价格波动监控和缺货预警。
这篇文章详细介绍了如何通过淘宝/天猫API实现订单数据自动化同步。主要内容包括: 核心流程:从获取access_token到调用订单接口,再到解析数据和写入本地系统。 推荐API:重点介绍了taobao.trades.sold.get等常用接口及其适用场景。 数据结构:解析了订单关键字段,如订单ID、状态、金额、收货信息等。 代码示例: 提供Python调用API的完整示例代码 包含签名生成、请求
拼多多pinduoduo.item.get商品标题、价格、描述、图片、规格参数、库存、促销信息、用户评价单IP 50次/分钟准实时(<5秒)淘宝taobao.tbk.item.get商品ID、名称、价格、库存、品牌、店铺信息、SKU规格、发货地、3D模型单IP 30次/分钟实时。京东jd.item.get商品ID、名称、价格、库存、规格参数、详细描述、图片、销量、评价(脱敏处理)单应用100次/分
9、修改各节点vip-manger配置文件信息,将涉及到的ipv4地址替换为ipv6地址,将新版本的vip-manger命令上传到当前环境,替换旧版本vip-manager命令。9、修改各节点vip-manger配置文件信息,将涉及到的ipv4地址替换为ipv6地址,上传新版本vip-manger服务器替换旧版本vip-manager。5、修改各节点etcd的配置文件,将文件中的ipv4地址更换为
通过本文的介绍,我们大致了解了ZGC的核心原理、日志分析方法以及调优技巧。总的来说,ZGC作为一种现代化的垃圾回收器,它为大规模应用程序的性能和可用性带来了显著的提升,希望本文能帮助大家更好的理解和应用ZGC。作者:京东科技 曲振富来源:京东云开发者社区 转载请注明来源。
Java是一门流行多年的高级编程语言,与其相关的就业岗位很多,但是最近几年却出现了用人单位招不到合适的人,而大量Java程序员找不到工作的尴尬局面。究其根本原因是岗位对Java开发技术的要求高,不但要会应用,而且更要懂其内部的运行原理。对于想要深入研究Java技术的从业人员来说,虚拟机是绕不开的话题。目前国内市场上还鲜见一本全面、 细致、深入剖析Java虚拟机源码的书籍,这正是本书要填补的市场空白
Java 是一门流行多年的高级编程语言,与其相关的就业岗位很多,但是最近几年却出现了用人单位招不到合适的人,而大量 Java 程序员找不到工作的尴尬局面。究其根本原因是岗位对 Java 开发技术的要求高,不但要会应用,而且更要懂其内部的运行原理。对于想要深入研究 Java 技术的从业人员来说,虚拟机是绕不开的话题。目前国内市场上还鲜见一本全面、 细致、深入剖析 Java 虚拟机源码的书籍,这正是本
txt转voc Visdrone数据集
主要也是6月初去面试的,周期挺长的有些记不全面了!
依然记得,第三轮面试的时候,负责人面过之后,又找了两个人过来进行交叉面试,说实话,我当时还蛮紧张的。所以,真正的技术能力还是要靠日常不断的学习和实战一点一点的积累,最好是给自己制定一套由简至繁的系统性的学习计划,差缺补漏,才能越走越远!开头说了,我是裸辞再找的工作,原本以为以自己当时掌握的技术能力,能够迅速入职一家互联网公司,8份简历投出去如石沉大海。总之,对哪一块比较熟悉大胆的说就行了,面试官不
京东Java面试题合集,附答案解析
本次要介绍的RateLimiter使用的是令牌桶算法。RateLimiter是google的guava包中的一个轻巧限流组件,它主要有两个java类文件,RateLimiter.java和SmoothRateLimiter.java。
大淘宝服务端技术栈总结
然后在worker类中通过get(“id”)的方法,获取指定id的返回结果作为参数。通过.getWorkResult().getResult()获取具体的返回值。首先通过 .id(“id”)方法想要获取参数的线程都编号,通过以上两个方法可以实现线程之间的串、并行等各种复杂的操作。以此类推创建worker1、和worker2。先添加repositories节点。然后添加如下maven依赖。如此,实现
由于大家相对来说面试经验相对较少,博主这里暂时就简单给大家提几个意见,简历要做的简而精,毕竟每一个面试官的时间和精力都有限,(这里说的是技术面试官)一般都是忙里偷闲进行面试,平时还会有迭代需求要做,同时还会有bug开各种无聊的会议,所以简历推荐大家写的简而精不要写一些无关紧要的东西。
一线互联网公司都比较注重实际的项目中解决问题的能力,另外面试点主要围绕 JVM、多线程相关、基础知识的底层原理、处理高并发的能力。这里也不扯什么面试技巧了,轻松发挥就好,祝大家金三银四季能有个高薪满意的工作!如果你需要这份完整版的面试笔记,只需你多多支持我这篇文章。整理不易你的支持,我的动力;祝各位前程似锦,offer 不断!!!ps:资料已整理成文档,需要获取的小伙伴可以直接转发+关注后私信(学
原文:前京东陌陌高级架构师的直播笔记分享(Java 内存问题排查和解决:内存概览,内存问题出现的原因,问题代码,案例分析)上一周我有幸观看了高级架构师李国讲师的直播,内容是关于 Java 内存问题排查和解决。下面是我做的笔记,在这里分享一下。直播背景直播讲师李国,曾任京东、陌陌高级架构师。负责过京东金融调用链系统 SGM,以及数据库中间件 CDS 的开发工作。曾负责陌陌基础社交业务线的整体架构工作
摘要:CodeGraph是一款开源代码知识图谱插件,通过预索引代码结构显著提升Claude Code等AI编程工具的代码理解效率。该插件将代码解析为AST并构建本地SQLite知识图谱,支持19+种语言和14种Web框架。安装仅需一行命令,支持全局或项目级配置。实测显示,CodeGraph能减少70%工具调用,降低35%AI编程成本,特别适合大型项目代码探索、影响分析和架构理解等场景。
Agent的记忆机制是多层次的信息管理系统,旨在解决大模型缺乏持久记忆的问题。短期记忆通过滑动窗口保留最近对话,受限于上下文长度;长期记忆存储用户偏好、任务经验等关键信息,借助外部数据库实现持久化,与RAG技术类似但目标不同(RAG补充知识,记忆维持个性化)。复杂Agent可采用三层记忆架构(工作记忆/短期/长期),结合压缩、检索和动态更新,确保连续性。记忆系统的核心是精准管理而非简单堆积,需平衡
本文深入分析了Java 8中ClassLoader死亡后的内存回收过程。当ClassLoader在堆中不可达时,其元空间内存会经历三个阶段回收: GC触发解绑:通过ClassLoaderDataGraph将死亡加载器从全局链表移除,放入卸载列表; Chunk级回收:SpaceManager析构时,将Metachunk归还到全局ChunkManager供复用; OS级释放:GC最后阶段检查完全空闲的
文章摘要: Java类加载过程分为加载、连接(验证、准备、解析)和初始化三个阶段。加载阶段将.class文件转换为方法区数据结构并生成Class对象;连接阶段进行安全验证、内存分配和符号引用解析;初始化阶段完成最终赋值。双亲委派模型通过Bootstrap、Extension和Application三级类加载器的层级委托机制,确保核心类优先加载且避免重复加载,既提高了效率又保障了安全性,防止核心AP
JVM内存结构与垃圾回收机制解析 JVM内存模型包含程序计数器、虚拟机栈、本地方法栈、堆和方法区。堆分为新生代(Eden区和Survivor区)和老年代,采用分代回收策略。垃圾回收算法包括标记-清除、复制和标记-整理,对应不同收集器如Serial、CMS、G1等。类加载采用双亲委派模型,过程包括加载、验证、准备、解析和初始化。性能调优可通过调整堆大小、新生代比例等参数实现。内存溢出排查需借助工具分
摘要: JVM垃圾回收(GC)是Java自动内存管理的核心机制,解决内存溢出、程序卡顿等开发痛点。GC通过可达性分析算法判定垃圾对象,基于分代模型(新生代/老年代)采用不同回收算法:新生代使用复制算法(高效但内存利用率低),老年代采用标记-清除或标记-整理(避免碎片)。关键概念包括Minor GC(新生代回收)、Full GC(全堆回收)以及四种引用类型(强/软/弱/虚引用)。理解GC原理对性能调
本文深入解析了OpenJDK 8中Metaspace内存管理的解绑与回收机制。Metaspace采用基于Chunk的网格化架构,其回收具有"粗粒度"和"类加载器生命周期绑定"特征。内存回收分为三个层级:1)局部块复用(BlockFreelist),仅限当前类加载器复用;2)Chunk级归还(ChunkManager),将死亡类加载器的Chunk归还全局空闲列表;3)OS级物理卸载(VirtualS
昇腾算子开发需掌握达芬奇架构(Cube/Vector/Scalar单元)、Tiling策略(L0A/L0B/L0C容量约束)、缓存管理(L1/UB分配)和流水线编排(双缓冲)。开发流程包括创建项目、编写Kernel、编译和测试。性能调优关键在于Tiling优化(充分利用L0缓存)、缓存管理和流水线编排。建议参考cann-samples示例代码,可大幅缩短开发周期(从2-3周缩短至2-3天)。
TBE算子开发框架:高效与性能的平衡选择 TBE(Tensor Boost Engine)作为华为CANN早期的算子开发框架,采用DSL描述计算逻辑,自动生成调度策略和底层代码,显著提升了开发效率。虽然其自动生成的代码性能比手写Ascend C低10-15%,但开发效率高出3倍,特别适合快速开发和已有算子维护场景。TBE通过自动Tiling、缓存管理和流水线优化等技术,使开发者只需20行DSL代码
GC 才会将其强制回收。极其适合作为图片/网页等非核心缓存。
会话型后台最怕的不是模型答错,而是 Agent 在列表刷新、未读排序和自动跳转之后,把本轮操作提交到错误会话。本文围绕 Conversation Claim、Active Thread Proof 与提交前校验三道护栏,拆解为什么“看起来点对了”仍然会回错人、误关单或串上下文,并给出一套可复现的实现骨架、对比表和上线建议,适合做客服、工单、企业 IM 与运营后台自动化的团队参考。
本文深入解析了JDK8中的内存分配机制。Metaspace采用多层级渐进式分配策略,从ClassLoader逻辑空间到全局块管理器,最终到操作系统虚拟内存节点。分配链路分为三层:1)ClassLoaderData局部层通过SpaceManager管理当前Metachunk;2)ChunkManager全局缓存池层按尺寸分类管理空闲块;3)VirtualSpaceNode层负责操作系统虚拟内存映射。
最近在折腾本地 Agent 栈,想搞清楚一件事:到底能不能不依赖任何云端 API,在自己笔记本上把一套完整的 Agent 系统跑起来?答案是可以的,而且比想象中干净很多。
导语:四年AI开发亲历者,用真实面试经历告诉你:2026年的AI应用开发社招,早已不是"调个API、写个Demo"就能应付的时代。三类人请慎重,三条建议请收好。
本文深入解析了Java Metaspace的空间结构静态全景图。Metaspace作为PermGen的替代者,采用级联式内存分配系统,包含多级管理组件。全景图展示了从JVM全局单例到操作系统虚拟页的完整架构,重点区分了Non-Class Space和Class Space两个区域。系统通过SpaceManager管理内存块,ChunkManager处理不同大小的内存块分配,形成高效的内存管理体系。
阶段工具目标开发阶段Valgrind深度检测各类内存错误测试/CI阶段ASan快速拦截内存问题生产环境内存监控工具实时报警内存异常最后忠告:工具是“消防员”,不是“防火墙”。真正的内存安全,在于编码时对资源所有权的清醒认知——你交给shared_ptr的每一个对象,都要确保有明确的释放路径。延伸阅读Valgrind官方手册:Valgrind Memcheck。
面试不光是这些准备不光包括技术,还有你对公司的了解,这是在 hr 这关更看重的,他们想找的不光是技术大拿,更重要的事可以跟公司共同进步的伙伴,所以当你真正开始面试,那么就要拿出自己的真诚,让 hr 感受到你对公司的兴趣、热情和自信,从谈吐上表现出果断和坚定往往会是很多招聘人事更加青睐的。synchronized 的原理,什么是自旋锁,偏向锁,轻量级锁,什么叫可重入锁,什么叫公平锁和非公平锁。类的实
因为目标是用Go从零构建可水平扩展的对象存储核心,而非对接现有服务;别把 os.Create + io.Copy 当成“实现”,它扛不住并发写同名对象或断连重传别过早引入 raft 库——单机元数据可用 boltDB 或 badger,跨节点协调先用基于 consistent hashing 的无状态路由HTTP 接口层用 net/http 足够,别一上来就上 gin 或 echo,中间件会模糊你
讲了生产者端发送消息到broker持久化,分区和副本机制,消费者消费消息的at-least-once和at-most-once?1. 设计模式:讲了单例,工厂方法,抽象工厂,策略模式,观察者模式,代理模式,还顺便讲了下spring动态代理的实现原理。9. 已经有一个查询好友的接口,设计一个微信朋友圈,可以实现发表朋友圈,添加评论,查看评论等功能。HR面: 常规的面试流程了,主要就是自己优缺点,以及
提到内存泄露,搞过C++的同事就笑了,在C++内存泄露排查很简单,用钩子函数勾住内存分配和释放函数malloc和free,统计哪些malloc的内存没有free,就可以找出内存泄露的源头。但在Java里问题复杂的多,主要因为Java在内存之上有层JVM管理内存。JVM先从操作系统申请大内存,接着自己管理这部分内存。所以Java程序的内存泄露分为两种:堆上内存泄露、堆外内存泄露,而堆外内存泄露又分为
Phase 1: 紧急响应(0-5分钟)保留现场(thread dump, heap dump, 监控截图)通知相关人(开发、运维、业务)评估影响范围(是否影响核心业务)Phase 2: 快速止血(5-15分钟)如果有重启窗口,灰度重启1台服务器观察如果有降级开关,立即降级非核心功能扩容(如果是资源不足)Phase 3: 根因分析(15分钟-2小时)使用top + jstack定位高CPU线程使用
根据 JDK 8 规范,JVM运行时内存共分为虚拟机栈、堆、元空间、程序计数器、本地方法栈五个部分。还有一部分内存叫直接内存,属于操作系统的本地内存,也是可以直接操作的。程序计数器:可以看作是当前线程所执行的字节码的行号指示器,用于存储当前线程正在执行的 Java 方法的JVM 指令地址。如果线程执行的是 Native 方法,计数器值为 undefined(未定义)一一因为 native 方法由本
jvm
——jvm
联系我们(工作时间:8:30-22:00)
400-660-0108 kefu@csdn.net