零2一
码龄10年
关注
提问 私信
  • 博客:56,923
    56,923
    总访问量
  • 68
    原创
  • 2,059,079
    排名
  • 72
    粉丝
  • 0
    铁粉
IP属地以运营商信息为准,境内显示到省(区、市),境外显示到国家(地区)
IP 属地:北京市
  • 加入CSDN时间: 2014-11-22
博客简介:

零一的博客

查看详细资料
个人成就
  • 获得97次点赞
  • 内容获得30次评论
  • 获得414次收藏
  • 代码片获得467次分享
创作历程
  • 56篇
    2020年
  • 8篇
    2019年
  • 5篇
    2018年
成就勋章
TA的专栏
  • elasticsearch
    4篇
  • Spring Cloud实战之路
    10篇
  • 重学面试复习
    8篇
  • rocketMQ
    1篇
  • 缓存设计
    1篇
  • redis
    2篇
  • rabbitmq
    1篇
  • hadoop
    2篇
  • kafka
    1篇
  • docker
    2篇
  • 杂谈
  • jvm
  • 数据结构及算法
  • kubernetes
  • solr
  • fastdfs分布式文件系统
    2篇
  • mongoDB
  • springboot
    1篇
  • dubbo
    1篇
  • zookeeper
    1篇
  • rpc
    1篇
  • spring源码解析
    7篇
  • 分布式定时任务
    1篇
  • tomcat&nginx
    1篇
  • springMVC
    3篇
  • mybatis源码分析
    3篇
  • Java集合源码实现原理
    5篇
  • spring security+oauth2
  • 运维部署
  • 从零开始的mysql
    7篇
  • 设计模式
兴趣领域 设置
  • 大数据
    mysqlredis
  • 后端
    spring架构
  • 搜索
    elasticsearch
  • 服务器
    linux
创作活动更多

HarmonyOS开发者社区有奖征文来啦!

用文字记录下您与HarmonyOS的故事。参与活动,还有机会赢奖,快来加入我们吧!

0人参与 去创作
  • 最近
  • 文章
  • 代码仓
  • 资源
  • 问答
  • 帖子
  • 视频
  • 课程
  • 关注/订阅/互动
  • 收藏
搜TA的内容
搜索 取消

重学| 面试复习(五)分布式问题

⽐如,可以为每台服务器计算三个虚拟节点,于是可以分别计算 “节点1的ip#1”、“节点1的ip#2”、“节点1的ip#3”、“节点2的ip#1”、“节点2的ip#2”、“节点2的ip#3”的哈希值,于是形成六个虚拟节点,当客户端被路由到虚拟节点的时候其实是被路由到该虚拟节点所对应的真实节点。最终一致性强调的是系统中所有的数据副本,在经过一段时间的同步后,最终能够达到一个一致的状态,因此最终一致性的本质是需要系统保证数据能够达到一致,而不需要实时保证系统的数据的强一致性。
原创
发布博客 2020.09.26 ·
430 阅读 ·
0 点赞 ·
2 评论 ·
0 收藏

基于ngx_kafka_module收集用户操作信息

需要先完成对kafka的搭建服务器: 阿里云Centos7.4kafka版本: kafka_2.12-1.0.2nginx: nginx-1.15.61.安装编译kafka的c客户端源码clone kafka的c客户端源码编译2.安装nginx整合kafka的插件clone nginx的kafka的插件ngx_kafka_module编译nginx添加插件如果启动nginx,报错,找不到kafka.so.1的文件加载so库nginx配置文件测试访问页面进行操作按钮点击kafka开启消费者
原创
发布博客 2020.09.26 ·
564 阅读 ·
0 点赞 ·
0 评论 ·
2 收藏

重学| 面试复习(七)Dubbo

2、DubboMonitor 将数据进行聚合后(默认聚合 1min 中的统计数据)暂存到ConcurrentMap statisticsMap,然后使用一个含有 3 个线程(线程名字:DubboMonitorSendTimer)的线程池每隔 1min 钟,调用 SimpleMonitorService 遍历发送 statisticsMap 中的统计数据,每发送完毕一个,就重置当前的 Statistics 的 AtomicReference。
原创
发布博客 2020.09.25 ·
297 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

重学| 面试复习(九)MySql

若开启用查询缓存,这时会将SQL 语句和结果完整地保存到查询缓存(Cache&Buffer)中,以后若有相同的 SQL 语句执行则直接返回结果。使用一致性Hash算法能够很大程度的避免这个问题,所以很多中间件的集群分片都会采用一致性Hash算法,一致性Hash在增加或者删除节点的时候,受到影响的数据是比较有限的,只会影响到Hash环相邻的节点,不会发生大规模的数据迁移。如:合理的表结构,合理的索引,合理的查询语录(可通过分析慢查询日志找出可优化的,再通过explain去测试语句,找出可优化的点进行优化)。
原创
发布博客 2020.09.25 ·
208 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

Docker-compose+Swarm部署mysql+redis+springboot

环境安装docker安装yum install -y yum-utils yum-config-manager --add-repo https://download.docker.com/linux/centos/docker- ce.repoyum install -y docker-ce docker-ce-cli containerd.io#开机启动 systemctl enable docker #启动 systemctl sta.
原创
发布博客 2020.09.25 ·
902 阅读 ·
0 点赞 ·
0 评论 ·
4 收藏

重学| 面试复习(三)Spring Boot

查看spring-boot-starter-web依赖文件源码,可以发现,spring-boot-starter-web依赖启动器的主要作用是提供Web开发场景所需的底层所有依赖,正是如此,在pom.xml中引入spring-boot-starter-web依赖启动器时,就可以实现Web场景开发,而不需要额外导入Tomcat服务器以及其他Web依赖文件等。当然,这些引入的依赖文件的版本号还是由spring-boot-starter-parent父依赖进行的统一管理。这一一步主要是在容器刷新之前的准备动作。
原创
发布博客 2020.09.25 ·
319 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

重学| 面试复习(四)Tomcat & Nginx

这样,当我们开发一个新的HTTP模块时,不但可以使用诸如HTTP核心模块、events模块、log模块等不同层次或者不同类型的模块,还可以原封不动地复用大量已有的HTTP过滤器模块。可以认为整个Tomcat就是⼀个Catalina实例,Tomcat 启动的时候会初始化这个实例,Catalina实例通过加载server.xml完成其他实例的创建,创建并管理⼀个Server,Server创建并管理多个服务,每个服务⼜可以有多个Connector和⼀个Container。这是Nginx可以快速发展的强大动力。
原创
发布博客 2020.09.25 ·
599 阅读 ·
0 点赞 ·
1 评论 ·
0 收藏

重学lagou | 面试复习(二)Spring

具体过程:判断循环所有的BeanPostProcessor,然后我们aop什么时候被加进来的后置处理器?FactoryBean是spring当中的一个特殊的bean,它是一个接口,实现了FactoryBean的bean能够再创建一个bean,如果你的类实现了FactoryBean,那么spring容器当中存在两个对象,一个是通过getObject()返回的对象,还有一个为当前对象,getObject得到的对象存的是当前类@Component(“名字”)指定的名字,当前对象是“&”+指定的名字。
原创
发布博客 2020.09.25 ·
175 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

重学| 面试复习(一)Mybatis

它的原理是,使用CGLIB创建目标对象的代理对象,当调用目标方法时,进入拦截器方法,比如调用a.getB().getName(),拦截器invoke()方法发现a.getB()是null值,那么就会单独发送事先保存好的查询关联B对象的sql,把B查询上来,然后调用a.setB(b),于是a的对象b属性就有值了,接着完成a.getB().getName()方法的调用。aop(面向切面)我们的插件可以以为四大对象创建出代理对象,代理对象就可以拦截到四大对象的每一个执行;返回target包装后的对象。
原创
发布博客 2020.09.24 ·
295 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

重学| 面试复习(目录)开篇

开篇重学| 面试复习(一)Mybatis重学| 面试复习(二)Spring重学| 面试复习(三)Spring Boot重学| 面试复习(四)Tomca t& Nginx重学| 面试复习(五)分布式问题重学| 面试复习(六)Zookeeper重学| 面试复习(七)Dubbo重学| 面试复习(八)Spring Cloud重学| 面试复习(九)MySql重学| 面试复习(十)FastDFS重学| 面试复习(十一)Redis重学| 面试复习(十二)Rabbit MQ & K
原创
发布博客 2020.09.24 ·
360 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

elastic课程知识扩展 | Kibana扩展插件安装

kibana提供了丰富的dashbord,但是有些情况下可能不满足业务的分析需求,这时候可以通过安装一些kibana插件来实现。启动后就会看到新安装的一个视图插件。例如这里安装一个图标视图。
原创
发布博客 2020.09.24 ·
413 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

elastic课程知识扩展 | Ingest Pipeline

Pipeline是一系列处理器的定义,这些处理器将按照声明的顺序执行。管道包含两个主要字段:description 和processorsdescription:用于存储有关管道功能的有用描述。processors:参数定义了要按顺序执行的处理器列表。
原创
发布博客 2020.09.24 ·
606 阅读 ·
1 点赞 ·
0 评论 ·
1 收藏

elastic课程知识扩展 | Index Templates

索引模板是一种告诉Elasticsearch在创建索引时如何配置索引的方法。对于数据流,索引模板在创建流的后备索引时对其进行配置。在创建索引之前先配置模板,然后在手动创建索引或通过对文档建立索引创建索引时,模板设置将用作创建索引的基础。模板有两种类型,索引模板和组件模板。组件模板是可重用的构建块,用于配置映射,设置和别名。您使用组件模板构造索引模板,但它们不会直接应用于一组索引。索引模板可以包含组件模板的集合,也可以直接指定设置,映射和别名。
原创
发布博客 2020.09.24 ·
301 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

elastic课程知识扩展 | 实现elasticsearch导入mysql数据

【代码】elastic课程知识扩展 | 实现elasticsearch导入mysql数据。
原创
发布博客 2020.09.24 ·
909 阅读 ·
1 点赞 ·
0 评论 ·
2 收藏

Docker核心概念与实战

Docker核心概念Docker概述Docker是一个用于开发,发布和运行应用程序的开放平台。Docker使您能够将应用程序与基础架构分开,从而可以快速交付软件。借助Docker,您可以以与管理应用程序相同的方式来管理基础架构。通过利用Docker的方法来快速交付,测试和部署代码,您可以大大减少编写代码和在生产环境中运行代码之间的延迟。Docker与虚拟机比较特性容器虚拟机启动速度秒级分钟级性能接近原生较弱内存代价很小较多硬盘使用一般为MB一般
原创
发布博客 2020.09.22 ·
233 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

基于RocketMQ设计秒杀

阿里云Centos7.4jdk1.84.5.1。
原创
发布博客 2020.09.02 ·
1463 阅读 ·
1 点赞 ·
0 评论 ·
4 收藏

大型网站的缓存设计Guava+redis实现多级缓存

具体逻辑实现部分,先从本地缓存Guava Cache中获取要查询的数据,如果没有则从redis中查询,如果redis 中也没有,则去mysql中查询,最后回写到redis,再回写到本地缓存Guava Cache中返回查询结果。数据从服务层读取,然后放到本地缓存中(Guava),如果出现超时或读取为空,则返回原来本地缓存的数据。这样如果出现分布式缓存redis挂掉等情况,依然可以从本地缓存中获取到数据,不会出现项目的瘫痪。从本地缓存Guava Cache中获取到查询结果。
原创
发布博客 2020.08.08 ·
2224 阅读 ·
2 点赞 ·
1 评论 ·
6 收藏

rabbitmq-order.rar

发布资源 2020.08.08 ·
rar

Mysql所需掌握知识点梳理,搞懂这些吊打面试官

第一部分 MySql架构原理MySql体系架构: 网络连接层,服务层,存储引擎层等要了解到他们的具体作用MySql运行机制: 从客户端建立连接到查询执行引擎负责执行 SQL 语句是如何执行的MySql存储引擎: InnoDB和MySAM对比, InnoDB线程模型, InnoDB数据文件MySql日志: Undo Log,Redo Log和Binlog了解到他们的作用第二部分 MySql索引原理索引类型: 普通索引,唯一索引,主键索引,.
原创
发布博客 2020.08.08 ·
195 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

Redis必问面试题,看完还不懂请来打我(缓存穿透,缓存击穿,缓存雪崩,一致性问题,热key,大key)

如果都是1,则被检元素很可能在。缓存在某个时间点过期的时候,恰好在这个时间点对这个Key有大量的并发请求过来,这些请求发现缓存过期一般会从数据库中加载数据并回设到缓存,这个时候大并发的请求可能会瞬间把后端DB压垮。缺点:会造成写一致问题,当数据库数据发生更新时,缓存中的数据不会及时更新,这样会造成数据库中的数据与缓存中的数据的不一致,应用会从缓存中读取到脏数据。可采用延时双删策略处理。在缓存之前在加一层布隆过滤器,在查询的时候先去布隆过滤器查询 key 是否存在,如果不存在就直接返回,存在再查缓存和DB。
原创
发布博客 2020.08.07 ·
4747 阅读 ·
25 点赞 ·
11 评论 ·
214 收藏
加载更多