自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

国民程序猿

为中华软件之崛起而编码

  • 博客(12)
  • 资源 (1)
  • 收藏
  • 关注

转载 我用45张图将18种Queue,给你整得明明白白

本篇主要内容如下:本篇主要内容帮你总结好的阻塞队列:18种Queue总结一、Queue自我介绍队列原理图1.1 Queue自我介绍hi,大家好,我的英文名叫Queue,中文名叫队列,无论现实生活中还是计算机的世界中,我都是一个很重要的角色哦~我是一种数据结构,大家可以把我想象成一个数组,元素从我的一头进入、从另外一头出去,称为FIFO原则(先进先出原则)。我还有两个亲兄弟:List(列表)、Set(集),他们都是Collection的儿子,我还有一个远房亲戚:

2020-09-25 13:24:10 208

转载 后端程序员必备的 Linux 基础知识+常见命令(JavaGuide近万字总结)

之前写过关于大企鹅(Linux)的文章,不过这篇对之前的版本进行了大幅度的重构。经常关注JavaGuide(Github)的小伙伴可能也注意到JavaGuide(Github)上的很多文章,我近期的这一个多月都在默默重构完善(持续跟进完善)。地址:https://github.com/Snailclimb/JavaGuide今天这篇文章中简单介绍一下一个 Java 程序员必知的 Linux 的一些概念以及常见命令(内容过多,阅读原文可以查看带目录的版本)。。如果文章有任何需要改善和完...

2020-09-23 18:57:38 345

转载 肝一下ZooKeeper实现分布式锁的方案,附带实例!

zookeeper客户端选型 原生zookeeper客户端,有watcher一次性、无超时重连机制等一系列问题 ZkClient,解决了原生客户端一些问题,一些存量老系统中还在使用 curator,提供了各种应用场景(封装了分布式锁,计数器等),新项目首选 分布式锁使用场景在单体项目中jvm中的锁即可完成需要,但是微服务、分布式环境下,同一个服务可能部署在多台服务器上,多个jvm之间无法通过常用的jvm锁来完成同步操作,需要借用分布式锁来完成上锁、释放锁。例如在订单服务中,

2020-09-23 10:44:33 186

转载 分布式锁用 Redis 还是 Zookeeper?

为什么用分布式锁?在讨论这个问题之前,我们先来看一个业务场景:系统A是一个电商系统,目前是一台机器部署,系统中有一个用户下订单的接口,但是用户下订单之前一定要去检查一下库存,确保库存足够了才会给用户下单。由于系统有一定的并发,所以会预先将商品的库存保存在redis中,用户下单的时候会更新redis的库存。此时系统架构如下:但是这样一来会产生一个问题:假如某个时刻,redis里面的某个商品库存为1,此时两个请求同时到来,其中一个请求执行到上图的第3步,更新数据库的库存为0,但是第4步还

2020-09-23 10:43:06 90

转载 面经分享:毕业西电Java工作3年拿到了30Koffer

粉丝真实经验分享感谢粉丝的宝贵分享,他最近拿下了30K 的Java岗offer 于是也想让程序汪帮分析下值不值得去,我把重点都高亮黄了,大家慢慢食用回味。下文是粉丝整理的投稿内容,也欢迎有能力的粉丝投稿分享你的经验关于就业 先简单聊一下就业哈,我3年前毕业于西电,关于毕业选择吧,第一份工作真的很重要,如果可能大厂是第一选择这是没错的,即使进不了大厂也尽量选择一些有知名度的大企业。在后来的面试过程中,真切感受到学历和就业经历带来的加分。...

2020-08-31 22:27:57 310

转载 高并发系统三大利器之缓存

随着互联网的高速发展,市面上也出现了越来越多的网站和app。我们判断一个软件是否好用,用户体验就是一个重要的衡量标准。比如说我们经常用的微信,打开一个页面要十几秒,发个语音要几分钟对方才能收到。相信这样的软件大家肯定是都不愿意用的。软件要做到用户体验好,响应速度快,缓存就是必不可少的一个神器。缓存又分进程内缓存和分布式缓存两种:分布式缓存如redis、memcached等,还有本地(进程内)缓存如ehcache、GuavaCache、Caffeine等。缓存特征缓存作为一个数据数据模型对象,那么它有

2020-08-24 10:09:05 130

转载 面试官:来来来,说说 Kafka 处理请求的全流程!

叨叨在进入今天主题之前我想先叨叨几句,就源码这个事儿,不同人有不同的看法。有些人听到源码这两个词就被吓到了,这么多代码怎么看。奔进去就像无头苍蝇,一路断点跟下来,跳来跳去,算了拜拜了您嘞。而有些人觉得源码有啥用,看了和没看一样,看了也用不上。其实上面两种想法我都有过,哈哈哈。那为什么我会开始看Kafka源码呢?其实就是我有个同事在自学go,然后想用go写个消息队列,在画架构图的时候就来问我,这消息队列好像有点东西啊,消息收发,元数据管理,消息如何持久一堆问题过来,我直呼顶不住。这市面上K

2020-08-24 10:04:14 135

转载 踩过Dubbo坑,回答印象深,干货整理

小林求职记系列文章,归置到公众号菜单栏,欢迎查看历史篇前传小林求职记(五)上来就一连串的分布式缓存提问,我有点上头....终于,在小林的努力下,获得了王哥公司那边的offer,但是因为薪水没有谈妥,小林又重新进入了求职的旅途,在经历了多次求职过程之后,小林也大概地对求职的考点掌握地七七八八了,于是这次他重新书写了简历,投递了一家新的互联网企业。距离面试开始还有大约十分钟,小林已经抵达了面试现场,并开始调整自己的状态。过了不久,一个稍显消瘦,戴着黑色眼镜框的男人走了过来,估计这家伙就是..

2020-08-24 10:00:18 620

转载 分布式应用,ZooKeeper做了什么?

一个分布式应用,数据包在节点之间传递,一旦网络故障,发送方不知道接收方是否接收到了数据,处理起来会非常麻烦。新增加一层协调者,来管理子任务是一种常见的解决方案,而ZooKeeper就经常承担协调者的角色。ZK核心功能是什么?简单来说,客户端连接ZK,监听ZK上的数据。如果有人修改了ZK中被监听的数据,ZK反过来会告诉客户端数据的变更。举个栗子:在Kafka的设计中,Kafka的一个节点在ZK中创建了一个数据,谁先创建成功谁就是集群的主节点,其余的节点都会去监听这个...

2020-07-27 15:43:44 132

转载 高并发,你真的理解透彻了吗?

高并发,几乎是每个程序员都想拥有的经验。原因很简单:随着流量变大,会遇到各种各样的技术问题,比如接口响应超时、CPU load升高、GC频繁、死锁、大数据量存储等等,这些问题能推动我们在技术深度上不断精进。在过往的面试中,如果候选人做过高并发的项目,我通常会让对方谈谈对于高并发的理解,但是能系统性地回答好此问题的人并不多,大概分成这样几类:1、对数据化的指标没有概念:不清楚选择什么样的指标来衡量高并发系统?分不清并发量和QPS,甚至不知道自己系统的总用户量、活跃用户量,平峰和高峰时的QPS和T...

2020-07-27 11:15:51 352

转载 高并发系统设计要点

在系统设计时,如果能预先看到一些问题,并在设计层面提前解决,就会给后期的开发带来很大的便捷。相反,有缺陷的架构设计可能会导致后期的开发工作十分艰难,甚至会造成“推倒重来”的情形。因此,在系统设计阶段,应该尽可能的规避项目开发中可能会遇到的各种问题。本文就选取了几个经典的问题进行介绍。Session共享问题在Web项目中,Session是服务端用于保存客户端信息的重要对象。单系统中的Session对象可以直接保存在内存中,但在分布式或集群环境下,多个不同的节点就要采取措施来共享Ses...

2020-07-27 10:59:11 212

转载 一网打尽:面试中的 IO 多路复用高频题!

一网打尽:面试中的 IO 多路复用高频题!石杉的架构笔记3天前以下文章来源于caspar,作者蔡蔡技术记caspar一线互联网工程师,专注于后端技术栈,推送算法、Go、Python、Linux、分布式系统等相关技术总结与实践公众号后台回复“面试”,获取精品学习资料扫描下方二维码了解详情,试听课程本文来源:蔡蔡技术记阅读本文大概需要 5 分钟。看完下面这些,高频面试题你都会答了吧目录1、什么是IO多路复用?2、为什么出现IO多路复用机制?...

2020-07-27 10:46:41 308

文件名批量修改器

用此工具可以批量修改文件的文件名 按照自己想要的命名方式进行

2015-04-25

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除