超实用的30多款idea插件,有百万级下载量的优秀插件,你值得拥有! 好的工具助你事半功倍,快速协助敲出更漂亮更有效率的代码。搬运工这里收集了很不错的IDEA插件,相信你一定会喜欢的。 〓必备插件列表: Grep Console :自定义控制台输出格式插件,下载量115W+,推荐指数:☆☆☆☆ FindBugs-IDEA :潜在Bug检查,下载量108W+,推荐指数:☆☆☆ […]
超实用的30多款idea插件,有百万级下载量的优秀插件,你值得拥有! 好的工具助你事半功倍,快速协助敲出更漂亮更有效率的代码。搬运工这里收集了很不错的IDEA插件,相信你一定会喜欢的。 〓必备插件列表: Grep Console :自定义控制台输出格式插件,下载量115W+,推荐指数:☆☆☆☆ FindBugs-IDEA :潜在Bug检查,下载量108W+,推荐指数:☆☆☆ […]
点击上方蓝色字关注我们~ 前言 从HTTP请求超时、重试机制、操作系统网络等层面剖析了事故的原因,最终解决业务问题。 这里先抛两个问题: 1)你遭遇过由于网络连接或请求超时造成的生产事故吗? 2)你知道操作系统默认的网络连接超时是多少秒? 先思考下,可以将你的答案写在评论区哦。 问题背景 最近同事出现这么一个问题,简单业务场景: 服务A使用HTTP请求服务B接口m。服务A起 […]
点击上方蓝色字关注我们~ 最近在网上看到别人提出了这个问题 : 现在从源码的角度简单剖析其原因。 我们知道,一般在配置注册中心eureka的地址类似这个: eureka.client.serviceUrl.defaultZone=http://localhost:8761/eureka/ 而访问eureka注册中心控制台页面管理则是:http://localhost:876 […]
点击上方蓝色字关注我们~ 我们经常会面临这样的问题,在确定某个topic下应该设置多少分区数,有时并不知道应该如何设置,如何评估等。或者别人问你当前kafka集群中,具体的业务topic中分区数是多少,是如何知道需要多少分区或怎么选择比较适合的分区数。 1 结合业务场景和非业务条件 那么我们应该如何选择合适的分区数呢? 具体的业务具体分析。 但是前期我们可以根据这些条件:实 […]
消息队列(MQ)的基本概念,很多时候都要了解清楚,这样在学消息队列中间件就比较能够游刃有余,遇到不清楚的也可以重新翻来看看,加深理解。这里有关于:优先级队列、延迟队列、死信队列、重试队列、消息回溯、消息堆积、消息追踪/消息轨迹、消息过滤、消息审计、消息路由等的介绍。 01 优先级队列 优先级队列不同于先进先出队列,优先级高的消息具备优先被消费的特权,这样可以为下游提供不同消 […]
点击上方蓝色字关注我们~ 01 问题背景 最近,在使用idea开发时业务系统时,发现idea上使用了@Autowired,发现竟然被警告了!提示:Field injection is not recommended,警告如下图: what?Field injection is not recommended. (不推荐使用属性注入) 这不是常规操作吗?我们在开发的时候经常使 […]
面试官:跟我讲讲TCP的三次握手和四次挥手流程,为什么是三次握手或四次挥手? 面试者:额......不太记得了.....gg.. 在前面的文章知道,《TCP与UDP的区别》,到《TCP是如何保证可靠性》。那么接下来就是TCP的核心了,即TCP的可靠性依赖其:三次握手和四次挥手。 先思考下这三个面试题: 1、TCP 为什么三次握手而不是两次握手? 2、为什么连接的时候是三次握 […]
点击上方蓝色字关注我们~ 前段时间发现,在使用RockerMQ console时,查询消息的时候出现很慢,查询耗时大于10秒,少则5、6秒,多则14+秒。 如下图: 这到底是为什么?查询消息为啥会出现这么大的耗时? 当前使用的开发环境:操作系统是Windows10,JDK8,RocketMQ为4.5.2。 在其它机器上则没有此问题,也在本机器上的虚拟机VMware上安装的L […]
面试官:说说TCP协议是如何保证传输的可靠性? 这个面试题也是最最基础的网络面试题,比较偏向毕业生或者刚入门者,有几年的工作经验一般问的比较少,但是也要对这块了如指掌,why?毕竟基础是非常非常重要的! 从前面《笔记 | 面试官问我:TCP与UDP的区别》我们知道,TCP和UDP的不同之一是TCP可以保证数据传输的可靠性,但是你知道为什么TCP可以保证可靠性,需要依靠什么机 […]
面试官:你说你熟悉网络基础,也有网络编程的经验,那在选择tcp或udp时是出于什么目的,即 TCP 和 UDP 有什么区别? (来自网络的趣图) UDP:用户数据报协议(User Datagram Protocol)。在网络中它与TCP协议一样用于处理数据包,是一种无连接的协议。在OSI模型中处于第四层——传输层,处于IP协议的上一层。UDP有不提供数据包分组、组装和不能对 […]
点击上方蓝色字关注我~ 面试官:说说你对高并发的理解,并且说下并发编程中存在什么问题或挑战? 多线程理论理想趣图: 并发编程的挑战现实场景视频: 接下来我们看下并发编程存在哪些挑战吧! 1 上下文切换 CPU通过时间片分配算法来循环执行任务,当前任务执行一个时间片后会切换到下一个任务。但是,在切换前会保存上一个任务的状态,以便下次切换回这个任务时,可以再加载这个任务的状态。 […]
1 背景 最近小伙伴要上线一个小特性——审阅状态的变更。在上线的过程中,发现一个非常奇怪的问题。 基本上保证了逻辑没问题 ,多次检查也没问题。但是事实就是发生了! 小伙伴有点怀疑人生了:)。 所以我们临时的处理方式是增加日志打印,逐步验证我们的逻辑。看看我们是如何排查问题的。 使用的技术框架:springboot+jpa 2 问题排查 1)原逻辑代码 ALog a […]
点击上方蓝色字关注我们~ 1 程序计数器 一块较小的内存空间。 当前线程所执行的字节码的行号指示器。 2 虚拟机栈 描述的是Java方法执行的线程内存模型:每个方法被执行的时候,Java虚拟机都会同步创建一个栈(StackFrame)用于存储局部变量表、操作数栈、 动态连接、方法出口等信息。每一个方法被调用直至执行完毕的过程,就对应着一个栈帧在虚拟机栈中从入栈到出栈的过程。 […]
点击上方蓝色字关注我们~ 题外话:Java都有对象,那你的对象在哪里呢?那我也来new一个吧。 了解下Java是怎么创建对象,并且在内存布局和访问定位,可以很好的帮助我们认识虚拟机JVM底层的原理。 这里只是针对HotSpot虚拟机Java对象。 1 对象的创建 ■创建过程 【虚拟机视角】 1、检查这个指令的参数是否能在常量池中定位到一 […]
点击上方蓝色字关注我们~ 当我们发现线上出现bug,如何进行不停机热更新代码? 1 问题背景 当我们发现线上出现bug,在排查时可能不是很好确认问题,并且最好保留现场,才能重现问题,或者需要快速修复bug,才能比较快速或者方便的临时解决紧急问题。这时,热更新就能很好的帮助我们了。虽然可以通过发版进行解决生产问题,但是项目频繁发版会存在一定的风险: 比如用户正在使用对应功能, […]
COPYRIGHT © 2014-2023 verysu.com . ALL RIGHTS RESERVED.
Theme Kratos Made By Seaton Jiang