在酒吧写代码
码龄2年
  • 117,344
    被访问
  • 117
    原创
  • 85,546
    排名
  • 154
    粉丝
关注
提问 私信

个人简介:一个很懒的程序员...

  • 加入CSDN时间: 2020-03-14
博客简介:

java_xiaoo的博客

查看详细资料
  • 5
    领奖
    总分 1,081 当月 15
个人成就
  • 获得731次点赞
  • 内容获得20次评论
  • 获得626次收藏
创作历程
  • 87篇
    2021年
  • 30篇
    2020年
成就勋章
TA的专栏
  • 面试
    6篇
  • 编程语言
    10篇
  • Java
    26篇
  • 架构师
  • Spring
    6篇
  • redis
  • JVM
    3篇
  • 设计模式
    1篇
  • 数据库
    4篇
  • 算法
    4篇
  • 数据结构
    3篇
  • 并发编程
  • 多线程
    2篇
  • 大数据
    4篇
  • kafaka
  • TCP
  • 项目实战
  • MySQL
    4篇
  • SpringBoot
    2篇
  • Docker
  • Netty
  • 高并发
  • 分布式
  • 操作系统
  • kafka
  • linux
    1篇
  • Spring MVC
  • 微服务
  • 网络协议
  • NIO
    1篇
  • Nginx
    2篇
  • 链表
    1篇
  • 网络
    2篇
  • VUE
    1篇
  • mybatis
    1篇
兴趣领域 设置
  • 大数据
    mysqlredis
  • 后端
    架构
  • 服务器
    linux
  • 最近
  • 文章
  • 资源
  • 问答
  • 帖子
  • 视频
  • 课程
  • 关注/订阅/互动
  • 收藏
搜TA的内容
搜索 取消

代理模式的新花样,istio秀肌肉

紧紧抓住最新技术的脉搏,用人话普及前沿技术,是xjjdog的一贯作风,现在也是一种责任和习惯。从漫天飞舞的华丽辞藻中,抓住技术的本质,可以避免喧宾夺主,也可以避免被忽悠。基础架构,每一波都在革自己的命。ServiceMesh是处于云原生时代的改革尖兵,其中istio以其高贵的身份与绝佳的性能,一骑绝尘,隐隐有成为标准的可能。接下来,让我们抽丝剥茧,来看一下istio到底是个啥。1. 中间层是基础架构的绝招在介绍istio到底为何物的时候,我们先来描述一个问题。假如你的公司,打算全面拥抱S
原创
发布博客 2021.11.23 ·
51 阅读 ·
0 点赞 ·
0 评论

Redis 如何批量设置过期时间?PIPLINE的使用

合理的使用缓存策略对开发同学来讲,就好像孙悟空习得自在极意功一般~Redis如何批量设置过期时间呢?不要说在foreach中通过set()函数批量设置过期时间我们引入redis的PIPLINE,来解决批量设置过期时间的问题。PIPLINE的原理是什么?未使用pipline执行N条命令使用pipline执行N条命令通过图例可以很明显的看出来PIPLINE的原理:客户端通过PIPLINE拼接子命令,只需要发送一次请求,在redis收到PIPLINE命令后,处理PIPLIN.
原创
发布博客 2021.11.23 ·
163 阅读 ·
0 点赞 ·
0 评论

还在CRUD吗? 给你一招一剑封喉,彻底摆脱简单的增删改查

有没有一种办法,在java的企业级开发中,既能满足复杂的需求开发;又可以快速的完成简单的增删改查(有一定的业务逻辑),同时能保证技术的统一性和延续性呢? fluent-mybatis在完成了对mybatis封装,实现了在java代码中使用流式语言,满足条件设置、复杂关联、嵌套、union、多数据库支持、个性化扩展等便捷能力外。现在又推出了,专门面向表单级的增删改查,声明即实现的一剑封喉的能力。呵呵呵,作者吹牛不用上税啊,我们来看个简单的例子:我们定义一个spring rest api接口如下复制代.
原创
发布博客 2021.11.23 ·
55 阅读 ·
0 点赞 ·
0 评论

简述消息队列在电商系统使用场景以及工作模式

概述消息队列(Message Queue),是分布式系统中重要的组件,是一种进程间通信或者是同一进程的不同线程的通信方式。和 http 同步协议不同的是,消息队列是一种异步的通信协议,不需要立即获得结果。消息队列的使用场景异步处理 流量控制 应用解耦应用解耦消息队列的一个作用就是实现系统应用之间的解耦。举例一下电商系统的中的订单系统。当创建一个订单时:发起支付 扣减库存 发消息告知用户 更新统计数据这些订单下游的系统都需要实时获得订单数据,随着业务量的增大和业务的变更,有
原创
发布博客 2021.11.18 ·
117 阅读 ·
0 点赞 ·
0 评论

终于有阿里架构师编写Java并发编程笔记了,熬肝看完,我简历上写了“精通”

这份笔记讲述Java并发API最重要的元素,包括执行器框架、Phaser类、Fork/Join框架、流API、并发数据结构、同步机制,并展示如何在实际开发中使用它们。此外,还介绍了设计并发应用程序的方法论、设计模式、实现良好并发应用程序的提示和技巧、测试并发应用程序的工具和方法,以及如何使用面向Java虚拟机的其他编程语言实现并发应用程序。笔记目录总览:篇幅有限,在此就只截图展示了。有想获取完整笔记的朋友:关注+转发文章后,点击这里获取到文章中的文
原创
发布博客 2021.11.16 ·
64 阅读 ·
3 点赞 ·
1 评论

他来了,阿里最新SpringCloud全解版简直无敌

就在昨天,阿里巴巴发布了最新的SpringCloud ALiBaBa全解第三版同时也是全彩版,话不多说我们直接来看干货!由于文章的篇幅有限,下面只能为大家展示目录内容,需要领取完整版麻烦帮忙转发一下文章点击这里获取到文章中的文档...章节目录微服务介绍微服务环境搭建我们本次是使用的阿里巴巴电商项目中的商品、订单、用户为案例进行讲解。Nacos Discovery--服务治理Sentinel--服务容错要防止雪崩的扩散,.
原创
发布博客 2021.11.16 ·
54 阅读 ·
2 点赞 ·
0 评论

Innodb到底是怎么加锁的

学完本文后:妈妈再也不用担心我不知道InnoDB是怎么加锁的了!流传较广,但是错误的一个观点不知道从什么时候开始,下边这个错误的观点开始被广泛的流传:在使用加锁读的方式读取使用InnoDB存储引擎的表时,当在执行查询时没有使用到索引时,行锁会被转换为表锁。这里强调一点,对于任何INSERT、DELETE、UPDATE、SELECT ... LOCK IN SHARE MODE、SELECT ... FOR UPDATE语句来说,InnoDB存储引擎都不会加表级别的S锁或者X锁(我们这里不
原创
发布博客 2021.11.09 ·
43 阅读 ·
0 点赞 ·
0 评论

深入剖析 RocketMQ 源码 - 消息存储模块

一、简介RocketMQ 是阿里巴巴开源的分布式消息中间件,它借鉴了 Kafka 实现,支持消息订阅与发布、顺序消息、事务消息、定时消息、消息回溯、死信队列等功能。RocketMQ 架构上主要分为四部分,如下图所示: Producer:消息生产者,支持分布式集群方式部署。 Consumer:消息消费者,支持分布式集群方式部署。 NameServer:名字服务,是一个非常简单的 Topic 路由注册中心,支持 Broker 的动态注册与发现,Producer 和 Consum
原创
发布博客 2021.11.09 ·
47 阅读 ·
0 点赞 ·
1 评论

超详细讲解页面加载过程

说一说从输入URL到页面呈现发生了什么?(知识点)这个题可以说是面试最常见也是一道可以无限难的题了,一般面试官出这道题就是为了考察你的前端知识的深度与广度。1.浏览器接受URL开启网络请求线程(涉及到:浏览器机制,线程与进程等)2.开启网络线程到发出一个完整的http请求(涉及到:DNS解析,TCP/IP请求,5层网络协议等)3.从服务器接收到请求到对应后台接受到请求(涉及到:负载均衡,安全拦截,后台内部处理等)4.后台与前台的http交互(涉及到:http头,响应码,报文结构,co
原创
发布博客 2021.11.09 ·
142 阅读 ·
0 点赞 ·
0 评论

还在用Swagger?试试这款零注解侵入的API文档生成工具,跟Postman绝配

聊聊Swagger在我们使用Swagger的时候,经常会需要用到它的注解,比如@Api、@ApiOperation这些,Swagger通过它们来生成API文档。比如下面的代码:Swagger对代码的入侵性比较强,有时候代码注释和注解中的内容有点重复了。有没有什么工具能实现零注解入侵,直接根据代码注释生成API文档呢?smart-doc恰好是这种工具!smart-doc简介smart-doc是一款API文档生成工具,无需多余操作,只要你规范地写好代码注释,就能生成API文档。同时能直接生成
原创
发布博客 2021.11.09 ·
122 阅读 ·
0 点赞 ·
0 评论

在字节工作的大舅哥,给了我一本Leetcode刷题笔记,刷了2天尽然收到字节面试邀请

介绍leetcode 题解,记录自己的 leetcode 解题之路。目前分为五个部分:第一个部分是 leetcode 经典题目的解析,包括思路,关键点和具体的代码实现。 第二部分是对于数据结构与算法的总结 第三部分是 anki 卡片, 将 leetcode 题目按照一定的方式记录在 anki 中,方便大家记忆。 第四部分是每日一题,每日一题是在交流群(包括微信和 qq)里进行的一种活动,大家一起 解一道题,这样讨论问题更加集中,会得到更多的反馈。而且 这些题目可以被记录下来,日后会进行筛选
原创
发布博客 2021.11.05 ·
55 阅读 ·
4 点赞 ·
0 评论

这么讲线程池,彻底明白了

引言:老三取钱有一个程序员,他的名字叫老三。老三兜里没有钱,匆匆银行业务办。这天起了一大早,银行姐姐说早安。老三一看柜台空,卡里五毛都取完。老三这天起的晚,营业窗口都排满。只好进入排队区,摸出手机等空闲。老三睡到上三杆,窗口排队都爆满。经理一看开新口,排队同志赶紧办。这天业务太火爆,柜台排队都用完。老三一看急上火,经理你说怎么办。经理挥手一笑间,这种场面已见惯。四种办法来处理,你猜我会怎么办。小小银行不堪负,陈旧系统已瘫痪。
原创
发布博客 2021.11.03 ·
99 阅读 ·
0 点赞 ·
0 评论

出自字节领导的Spring Security笔记,图文并茂,代码齐全

Spring Security 是一个强大且高度可定制的安全框架,致力于为 Java 应用提供身份认证和授权。spring security 的核心功能主要包括:认证 (你是谁) 授权 (你能干什么) 攻击防护 (防止伪造身份)其核心就是一组过滤器链,项目启动后将会自动配置。最核心的就是 Basic Authentication Filter 用来认证用户的身份,一个在spring security中一种过滤器处理一种认证方式。目前学习Spring Security方面的资料相对来
原创
发布博客 2021.11.02 ·
54 阅读 ·
1 点赞 ·
0 评论

收获颇丰,这份阿里架构师纯手敲打的JDK源码全彩小册可以打满分

你为什么看JDK源码总是没收获?源码量那么大,不要妄想一口气都看完。最好符合你当前的目的,比如你想搞懂多线程,你就主要看JUC,想搞懂IO就多去看NIO,想看常量池就去看ClassFileParser。看模块的时候,要注意接口大于一切,或者说函数大于一切。先不要妄想搞懂所有细节,先找几个比较关键的函数,搞懂函数的作用(比如应该仔细分析一下函数名称和参数名称)然后再往下进行。再看Java类库的时候要多注意类是不是abstract的,是不是用的模板方法,多关注函数前的修饰词,这一般说明这个函数是给谁用的。多
原创
发布博客 2021.11.02 ·
37 阅读 ·
0 点赞 ·
0 评论

3年经验Java程序员面试20天,拿下数个offer,总结出的经验

一. 前言16年毕业到现在也近三年了,最近面试了阿里集团(菜鸟网络,蚂蚁金服),网易,滴滴,点我达,最终收到点我达,网易offer,蚂蚁金服二面挂掉,菜鸟网络一个月了还在流程中...最终有幸去了网易。但是要特别感谢点我达的领导及HR,真的非常非常好,很感谢他们一直的关照和指导。二. 面试整体事项1、简历要准备好,联系方式一定要正确清晰醒目,项目经历按照时间倒序阐述,注意描述自己在项目中承担的职责,简历的模板尽量选择简洁的,毕竟程序员大部分还是喜欢简单明了的。2、推荐boss直聘,我觉得很
原创
发布博客 2021.11.02 ·
77 阅读 ·
1 点赞 ·
0 评论

MySQL纯手写面试笔记解析,2021锤爆50K月薪,你值得拥有

MySQL 作为主流的数据库,是各大厂面试官百问不厌的知识点,但是需要了解到什么程度呢?仅仅停留在 建库、创表、增删查改等基本操作的水平可不够。在面试后端开发的时候,一连几个问题,简直会被问到一脸懵逼。MySQL 语句怎么优化?分库,分表都适合哪些场景?讲讲 InnoDB 如何使用 B+ 树存储的?一般来说,准备 MySQL 面试 ,无非要从这几块进行准备:查询、存储、事务、锁和性能调优。不少朋友苦于搜集资料耗时耗力,很难 cover 住面试官的考核角度。为了能让大家在准备面试时少走弯路,这里特别熬
原创
发布博客 2021.10.29 ·
62 阅读 ·
4 点赞 ·
0 评论

入职阿里工作5年,晋升到P8就剩这份学习笔记了,已帮助多个朋友拿到Offer

关于程序员,除了做项目来提高自身的技术之外,还有一种提升自己的专业技能就是:多!看!书!入职阿里到现在已经5年了,工作压力大,节奏快,从刚开始的P6到现在的P8 技术上确实得到了成长,尤其是当你维护与大促相关的系统的时候,熬到P8也费了不少心思,小编也是个爱学习的人,把这几年的工作经验整理成了一份完整的笔记。此笔记已助多位朋友拿到腾讯,阿里,美团等多个offer。包含基础知识、Java集合、JVM、多线程并发、spring原理、微服务、Netty 与RPC 、Kafka、日记、设计模式、Java算法、数
原创
发布博客 2021.10.29 ·
72 阅读 ·
4 点赞 ·
0 评论

全面公开,阿里P6-P8技术团队共同携手编写的“大厂面试参考指南”v1.0版本,挑战全网

这份文档由阿里巴巴架构师牵头,联合了部门上上下下 P6 - P8 级岗位众人的意见,1.0版本由此诞生。(这阵容,质量就不用我多说了吧)内容非常全面,主要是结合了互联网大厂的面试需求点,包含了:分布式架构(大型网站系统的特点+架构演化发展历程+微服务) 中间件技术(缓存+消息队列+搜索引擎) 大数据与高并发技术(秒杀架构设计+数据库架构+阿里巴巴商品信息存放技术+限流算法) 数据库(索引+开发规范+范式+事务+MVCC) 设计模式与实践(常用设计模式+AOP/IOC+Zookeeper...
原创
发布博客 2021.10.29 ·
95 阅读 ·
4 点赞 ·
0 评论

深度解析HashMap集合底层原理

前置知识#==和equals的区别#对于基本类型变量来说,只能使用 == ,因为基本类型的变量没有方法。使用==比较是值比较对于引用类型的变量来说,==比较的两个引用对象的地址是否相等。所有类都是继承objcet类,而object类是equals方法比较的也是对象的地址是否相等,如果类没有重写equals方法,使用 == 和equals方法效果是一样的为什么要重写equals和HashCode#HashCode方法:底层采用C语言编写,根据对象地址转换为整数类型如果两个对象的Hash
原创
发布博客 2021.10.29 ·
88 阅读 ·
2 点赞 ·
0 评论

新人问一般都用哪些 Linux 命令,我把这个扔了过去

虽然平时大部分工作都是和Java相关的开发, 但是每天都会接触Linux系统, 尤其是使用了Mac之后, 每天都是工作在黑色背景的命令行环境中. 自己记忆力不好, 很多有用的Linux命令不能很好的记忆, 现在逐渐总结一下, 以便后续查看.基本操作Linux关机,重启#关机shutdown-hnow#重启shutdown-rnow查看系统,CPU信息#查看系统内核信息uname-a#查看系统内核版本cat/proc/version#...
原创
发布博客 2021.10.25 ·
258 阅读 ·
0 点赞 ·
0 评论
加载更多