程序员
文章平均质量分 86
豆奶快攻
这个作者很懒,什么都没留下…
展开
-
多线程基础
并且这种循环是链表的循环,相当于 A 节点指向 B 节点,B 节点又指回到 A 节点,这样一来,在下一次想要获取该 key 所对应的 value 的时候,便会在遍历链表的时候发生永远无法遍历结束的情况,也就发生 CPU 100% 的情况。如果需要同步的操作执行速度非常快,并且线程竞争并不激烈,这时候使用cas效率会更高,因为加锁会导致线程的上下文切换,如果上下文切换的耗时比同步操作本身更耗时,且线程对资源的竞争不激烈,使用volatiled+cas操作会是非常高效的选择;乐观锁体现的是悲观锁的反面。原创 2024-07-02 17:17:59 · 837 阅读 · 0 评论 -
常见 Java 代码缺陷及规避方式
问题列表NPE 或许是编程语言中最常见的问题,被 Null 的发明者托尼·霍尔(Tony Hoare)称之为十亿美元的错误。在 Java 中并没有内置的处理 Null 值的语法,但仍然存在一些相对优雅的方式能够帮助我们的规避 NPE。原创 2024-07-01 01:54:45 · 812 阅读 · 0 评论 -
实用 Java Streams API
它是一种特殊的收集器,允许您对另一个收集器的结果执行特殊类型的转换。该方法是在 Java 9 中引入的,有助于过滤集合中的所有空值,从而可能使我们避免空指针异常。在下面的示例中,我们的收集器通过首先使用索引到大写操作进行映射,然后使该映射成为不可修改的。在下面的示例中,有一个包含 null 的List。在下面的例子中,我们的种子是0,一元运算函数是 n -> n+2。在下面的示例中,我们删除小于3的元素,然后返回元素小于6的元素流。在下面的示例中,我们根据元素的字符串长度分为两个不同的组。原创 2024-06-24 01:24:58 · 431 阅读 · 0 评论 -
java应用性能优化
1. 代码相关遇到性能问题,首先应该做的是检查否与业务代码相关——不是通过阅读代码解决问题,而是通过日志或代码,排除掉一些与业务代码相关的低级错误。性能优化的最佳位置,是应用内部。譬如,查看业务日志,检查日志内容里是否有大量的报错产生,应用层、框架层的一些性能问题,大多数都能从日志里找到端倪(日志级别设置不合理,导致线上疯狂打日志);再者,检查代码的主要逻辑,如 for 循环的...原创 2020-03-02 02:17:11 · 355 阅读 · 0 评论 -
系统如何支撑高并发
一道面试题的背景引入大多数同学被问到这个问题压根儿没什么思路去回答,不知道从什么地方说起,其实本质就是没经历过一些真正有高并发系统的锤炼罢了。因为没有过相关的项目经历,所以就没法从真实的自身体会和经验中提炼出一套回答,然后系统的阐述出来自己负责过的系统如何支撑高并发的。所以,这篇文章就从这个角度切入来简单说说这个问题,用一个最简单的思路来回答,大致如何应对。...原创 2020-02-22 22:35:46 · 652 阅读 · 0 评论 -
176条DevOps人员常用的Linux命令速查表
线上查询及帮助命令文件和目录操作命令查看文件及内容处理命令文件压缩及解压缩命令信息显示命令搜索文件命令用户管理命令基础网络操作命令深入网络操作命令有关磁盘与文件系统的命令系统权限及用户授权相关命令查看系统用户登陆信息的命令...原创 2020-02-19 12:46:05 · 143 阅读 · 0 评论 -
Java 面试知识点(不断更新)
Java 基础知识01. 面向对象的特性有哪些?答:封装、继承和多态。02. Java 中覆盖和重载是什么意思?解析:覆盖和重载是比较重要的基础知识点,并且容易混淆,所以面试中常见。答:覆盖(Override)是指子类对父类方法的一种重写,只能比父类抛出更少的异常,访问权限不能比父类的小。被覆盖的方法不能是 private 的,否则只是在子类中重新定义了一个方法;重载(Ov...原创 2020-02-17 01:41:58 · 353 阅读 · 0 评论 -
怎么对Java服务进行调优
Java 应用性能优化是一个老生常谈的话题,典型的性能问题如页面响应慢、接口超时,服务器负载高、并发数低,数据库频繁死锁等。尤其是在“糙快猛”的互联网开发模式大行其道的今天,随着系统访问量的日益增加和代码的臃肿,各种性能问题开始纷至沓来。Java 应用性能的瓶颈点非常多,比如磁盘、内存、网络 I/O 等系统因素,Java 应用代码,JVM GC,数据库,缓存等。笔者根据个人经验...原创 2020-02-15 16:47:00 · 299 阅读 · 0 评论 -
常用Git命令
分支操作 git branch 创建分支 git branch -b 创建并切换到新建的分支上 git checkout 切换分支 git branch 查看分支列表 git branch -v 查看所有分支的最后一次操作 git branch -vv 查看当前分支 git brabch -b 分支名 origin/分支名 创...原创 2019-10-25 17:08:06 · 162 阅读 · 0 评论 -
秒懂QPS、TPS、PV、UV、GMV、IP、RPS
QPS、TPS、PV、UV、GMV、IP、RPS等各种名词,外行看起来很牛X,实际上每个程序员都是必懂知识点。下面我来一一解释一下。QPSQueries Per Second,每秒查询数。每秒能够响应的查询次数。QPS是对一个特定的查询服务器在规定时间内所处理流量多少的衡量标准,在因特网上,作为域名系统服务器的机器的性能经常用每秒查询率来衡量。每秒的响应请求数,也即是最大吞...原创 2019-07-29 19:47:06 · 8538 阅读 · 1 评论 -
过完年跳槽,要考虑哪些要素
发完奖金了,过完年了,又到了人心躁动的时节。不少IT圈的小伙伴可能在思考,要不要换工作。画外音:有些小伙伴说,公司3/4月份才发年终奖?今天和大家聊聊IT人换工作这个话题,楼主也面试过的不少候选人,站在面试官的角度,谈谈什么样的IT人会在面试中加分。想清楚“自己想要什么”最重要为什么要换工作是自己要想清楚的第一个问题,同时面试官也非常在意你换工作的动机。“离家太远,严重影响生活质量”“加班太多,压...原创 2018-02-26 17:18:40 · 269 阅读 · 0 评论