3 Carry-wws

尚未进行身份认证

我要认证

不愧对每一天,做最好的自己,成就最完美的人生,@自己加油

等级
TA的排名 4w+

Hadoop入门第一天

今天很高兴能够开始这个专题,从此就要了解一下BigData领域的东西了,看到下面这个截图,开心的像个孩子一样,加油,跟着carry来一步一步探索大数据的神秘面纱吧。1.从Hadoop框架讨论大数据生态1.1 Hadoop到底是个什么东西1.2 Hadoop的三大发行版本Hadoop三大发行版本:Apache、Cloudera、Hortonworks。Apache版本最原始(最基础)的版本,对于入门学习最好。Cloudera内部集成了很多大数据框架。对应产品CDH。Ho

2020-10-28 14:05:08

RabbitMQ入门与使用

最近学习了Kafka相关的知识,打算再把RabbitMQ也了解一下,可以有个对比,有时间RocketMQ也去了解下,其实学多了MQ其实是大同小异,我们就进入今天的RabbitMQ的领域去探索一下吧。有想要在Linux上安装RabbiMQ的可以看下这篇博客,亲测可用,一路畅通无阻:https://blog.csdn.net/wang1988081309/article/details/97374677基本特性高可靠:RabbitMQ 提供了多种多样的特性让你在可靠性和性能之间做出权衡,包括持久化、

2020-07-15 23:29:50

Kafka的实现原理

如果对kafka的基础知识了解不深,可以看下我的Kafka的基础知识入门,今天这篇博客是来讲解kafka的实现原理,需要有一定的kafka的前置知识,不然可能会很迷茫。从前面的整个演示过程来看,只要不是超大规模的使用kafka,那么基本上没什么大问题,否则,对于 kafka本身的运维的挑战会很大,同时,针对每一个参数的调优也显得很重要。据我了解,快手在使用kafka集群规模是挺大的,他们在19年的开发者大会上有提到这篇文章值得推荐一波:快手万亿级别 Kafka 集群应用实践与技术演进之路技术

2020-07-13 22:51:21

Kafka入门基础知识

什么是KafkaKafka是一款分布式消息发布和订阅系统,它的特点是高性能、高吞吐量。 最早设计的目的是作为LinkedIn的活动流和运营数据的处理管道。这些数据主要是用来对用户做用户画像分析以及服务器性能数据的一些监控所以kafka一开始设计的目标就是作为一个分布式、高吞吐量的消息系统,所以适合运用在大数据传输 场景。Kafka的应用场景由于kafka具有更好的吞吐量、内置分区、冗余及容错性的优点(kafka每秒可以处理几十万消息),让 kafka成为了一个很好的大规模消息处理应用的解决方案。

2020-07-11 18:26:34

Zookeeper基础知识原理篇

Zookeeper 的前世今生 Apache ZooKeeper 是一个高可靠的分布式协调中间件。它是 Google Chubby 的一个开源 实现,那么它主要是解决什么问题的呢?那就得先了解 Google Chubby Google Chubby 是谷歌的一个用来解决分布式一致性问题的组件,同时,也是粗粒度的分布 式锁服务。分布式一致性问题 什么是分布式一致性问题呢?简单来说,就是在一个分布式系统中,有多个节点,每个节点 都会提出一个请求,但是在所有节点中只能确定一个请求被通过。而.

2020-07-08 18:43:34

Java全栈架构师学习路线图

随着自己的博客不断的产出,最近发现一个痛点,想找一篇自己的博客,很难找,及时有分类,但是觉得还不是很直观。因为最近应该会有一大批文章会产出(已经写好了一个系列,暂时还没有公布出来,再修改下统一发出来)。以后我的博客都会是一个系列一个版本,给大家爽到爆。为了给大家和自己一个好的体验,今天打算先把之前写的文章分类整理好,让你以后看我这一篇文章就能把你想要看的东西博客都能很轻松找到。JAVA篇 JAVA原理 JAVA集合 JAVA多线程 JAVA IO JVM

2020-07-06 17:05:06

springBoot自动配置原理分析及自定义starter

现在java项目基本都是springboot项目构建的,我们本着他们提出的约定大于配置的思想,使用起来都特别简单,很多情况下我们主需要引入几个start的jar包,写几个注解就能用,可是你们知道这里面的原理吗?那我们今天就来分析一下springBoot的自动配置原理和start的原理,顺便再自己写一个start来加深印象。1.@Import是什么我们之前创建一个Bean可以使用@Configuration与@Bean这两个注解配合使用来将原来配置在xml文件里的bean通过java代码的方式进.

2020-07-05 22:46:36

java序列化与反序列化

我的上一篇博客,介绍了通讯的原理,写了几个关于Socket的几个Demo,那么我们思考下,如何基于Socket进行对象的传输呢?之前又同学说建议我写博客代码的部分不要截图,直接贴代码,我今天就把代码贴上来吧。来看下我写的Demo吧(代码只是demo,连接啥的我没都没有关闭哦)。public class User { private String name; public String getName() { return name; } public void setName(St.

2020-06-30 15:30:25

远程通讯协议原理

第一次挥手(FIN=1,seq=x)假设客户端想要关闭连接,客户端发送一个 FIN 标志位置为 1 的包,表示自己已经没有数据 可以发送了,但是仍然可以接受数据。发送完毕后,客户端进入 FIN_WAIT_1 状态。第二次挥手(ACK=1,ACKnum=x+1)服务器端确认客户端的 FIN 包,发送一个确认包,表明自己接受到了客户端关闭连接的请求, 但还没有准备好关闭连接。发送完毕后,服务器端进入 CLOSE_WAIT 状态,客户端接收到这 个确认包之后,进入 FIN_WAIT_2 状态,等待服务器端

2020-06-28 16:49:34

java线程的中断的方式原理分析

虽然本篇是讲解线程的中断方式的,但是我还是想多讲解一个知识点,那就是线程的启动。只有启动才有中断的,我觉得这个线程的启动很有必要讲解的。线程的启动我们知道启动线程,也就是调用 start()方法去启动一个线程,当 run 方法中的代码执行完毕 以后,线程的生命周期也将终止。调用 start 方法的语义是 当前线程告诉 JVM,启动调用 start 方法的线程。但是它的原理我们知道吗?我们就来粗略的看一下吧。线程的启动原理很多同学最早学习线程的时候会比较疑惑,启动一个线程 为什么是调用 sta

2020-06-24 23:10:18

AQS的核心原理分析

之前已经写过一篇关于AQS的介绍了,基本概念我就不多逼逼了,我直接把我那篇文章复制过来。后面来根据java的源码分析这个AQS的内部实现。前言:这一部分的基础概念讲解,全部都是我之前的一篇博客:谈谈你对AQS的了解1.写在前面:这篇文章,我们来聊聊面试时一个比较有杀伤力的问题:聊聊你对AQS的理解?之前有同学反馈,去互联网公司面试,面试官聊到并发时就问到了这个问题。当时那位同学内心估计受到了一万点伤害。。。因为首先,很多人可能连AQS是什么都不知道。或者仅仅是听说过AQS这个名词,但是可能连

2020-06-21 23:25:17

java多线程原理之--进程与线程的原理分析

想必大家面试应该都会问过这样一个知识点:什么是进程,什么是线程?想必大家可能都会说的一个回答:进程是操作系统资源分配的基本单位,而线程是cpu调度和执行的基本单位。一个应用程序就是一个进程,一个进程可以有多个线程。。。。。。你要是这样回答,遇到一个菜逼面试官可能就混过去了,但是遇到一个资深的大佬,你可能就栽在这个问题上了(哈哈)那我们现在就从深层次的剖析这个问题,让这一个问题你可以在面试官面前,多吹十分钟,哈哈。我们来看下一个简单的计算机结构图吧:至于为啥会出现中间一层内存,可以

2020-05-18 20:59:17

Redis分布式锁的实现

最近面试被问道了一些分布式锁相关的问题,今天打算好好把分布式锁的问题看一下1.先看一下简单的扣库存的例子这个是最基础的扣库存的例子,在并发问题下肯定是有问题的,有些人可能会说,加个syn或者lock锁不就好咯,但是这面我要说你想多了吧,syn和lock锁时线程级别的锁,我们现在的项目都是多个节点部署的,都是多进程的,你这个锁时没有用的,下面我们就要来看看我们分布式项目常用的分布式锁的实现来解决这个问题.2.学习redis的分布式锁,我们先学习这个命令setRedis Setnx(SE

2020-05-10 15:32:12

Java面试总结

今天本着愉快的心情,面试了两家还不错的互联网公司,一家某未科技,某扑体育两家公司的环境和规模都是相当不错的,都是我想要去的公司,然而事与愿违,由于自己能力原因,和这两家公司说拜拜了。从哪跌倒就从哪爬起来,不让失败再一次发生,是时候做出改变了。加油,奥利给!!!那我就来简单的想一想今天都问了一些什么东西吧。及未科技:1.笔试题一套(挺基础的,但是题很多,三页,我做了接近50分钟) 选择:几个简单的string引用的题,多线程,IO流,看程序输出结果 简答题:结合jav...

2020-05-09 20:20:12

HashMap底层实现

hashMap这是一个老生常谈的问题,基本上每次面试,都跑不掉,而且不同的面试官,问的程度也大不相同,下面我们打算重下面几个问题来谈一谈hashMap的常见面试题。那么我们下面来一个模拟面试。Carry帅自我介绍后,美女面试官来句:来我们不如正题吧。我心想,我曹,不来点前戏,直接进入正题。美女面试官来句:帅小伙,来讲讲hashMap的底层实现吧。我暗自心想:这么简单,美女就是花瓶,...

2020-04-23 23:59:26

Mysql索引原理实现

什么是索引?索引是一种用于快速查询和检索数据的数据结构。常见的索引结构有: B树, B+树和Hash。索引的作用就相当于目录的作用。打个比方: 我们在查字典的时候,如果没有目录,那我们就只能一页一页的去找我们需要查的那个字,速度很慢。如果有目录了,我们只需要先去目录里查找字的位置,然后直接翻到那一页就行了。为什么要用索引?索引的优缺点分析索引的优点**可以大大加快 数据的检索速...

2020-04-19 22:45:36

java死锁和死锁定位分析

1.死锁:死锁是指两个或者两个以上的进程在执行的过程中,因为争夺资源而造成的一种互相等待的现象,若无外力干涉,那他们将无法推进下去2.死锁的代码package con.carry.并发.死锁;/** * 死锁是指两个以上的线程 */public class DeadThreadDemo { public static void main(String[] ar...

2020-04-18 16:13:54

java内存区域

Java 内存区域详解如果没有特殊说明,都是针对的是 HotSpot 虚拟机。写在前面 (常见面试题)基本问题介绍下 Java 内存区域(运行时数据区) Java 对象的创建过程(五步,建议能默写出来并且要知道每一步虚拟机做了什么) 对象的访问定位的两种方式(句柄和直接指针两种方式)拓展问题String 类和常量池 8 种基本类型的包装类和常量池 一 概述 对...

2020-04-17 13:42:40

JVM知识大全

无论什么级别的Java从业者,JVM都是进阶时必须迈过的坎。不管是工作还是面试中,JVM都是必考题。如果不懂JVM的话,薪酬会非常吃亏(近70%的面试者挂在JVM上了)。掌握了JVM机制,就等于学会了深层次解决问题的方法。对于Java开发者而言,只有熟悉底层虚拟机的运行机制,才能通过JVM日志深入到字节码的层次去分析排查问题,发现隐性的系统缺陷,进而提升系统性能。一些技术人员开发工具用得很...

2020-04-16 13:42:18

两种方式实现生产者与消费者模型

1.lock锁的模式package con.carry.并发.生产者消费者模型;import java.util.concurrent.locks.Condition;import java.util.concurrent.locks.Lock;import java.util.concurrent.locks.ReentrantLock;/** * 实现线程交替加一和减一操...

2020-04-15 23:18:55

查看更多

勋章 我的勋章
  • 签到王者
    签到王者
    累计签到获取,不积跬步,无以至千里,继续坚持!
  • 新人勋章
    新人勋章
    用户发布第一条blink获赞超过3个即可获得
  • 阅读者勋章Lv3
    阅读者勋章Lv3
    授予在CSDN APP累计阅读博文达到30天的你,是你的坚持与努力,使你超越了昨天的自己。
  • 持之以恒
    持之以恒
    授予每个自然月内发布4篇或4篇以上原创或翻译IT博文的用户。不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!
  • 1024勋章
    1024勋章
    #1024程序员节#活动勋章,当日发布原创博客即可获得
  • 勤写标兵Lv2
    勤写标兵Lv2
    授予每个自然周发布4篇到6篇原创IT博文的用户。本勋章将于次周周三上午根据用户上周的博文发布情况由系统自动颁发。