Firstlucky77
码龄99天
  • 45,053
    被访问
  • 158
    原创
  • 12,618
    排名
  • 24
    粉丝
  • 0
    铁粉
关注
提问 私信

个人简介:更多的java课程学习路线,笔记,面试等架构资料,需要的同学可以私信我(资料)即可免费获取!

IP属地以运营商信息为准,境内显示到省(区、市),境外显示到国家(地区)
IP 属地:广西
  • 加入CSDN时间: 2022-05-08
博客简介:

Firstlucky77的博客

查看详细资料
  • 4
    领奖
    总分 603 当月 18
个人成就
  • 获得27次点赞
  • 内容获得7次评论
  • 获得136次收藏
创作历程
  • 263篇
    2022年
成就勋章
兴趣领域 设置
  • Java
    java
  • 后端
    sqlmysqlspringspring boot后端架构
  • 最近
  • 文章
  • 资源
  • 问答
  • 帖子
  • 视频
  • 课程
  • 关注/订阅/互动
  • 收藏
搜TA的内容
搜索 取消

Java如何将两个数组合并为一个数组呢?

数组(Array)是有序的元素序列。[1]若将有限个类型相同的变量的集合命名,那么这个名称为数组名。组成数组的各个变量称为数组的分量,也称为数组的元素,有时也称为下标变量。用于区分数组的各个元素的数字编号称为下标。数组是在程序设计中,为了处理方便,把具有相同类型的若干元素按有序的形式组织起来的一种形式。[1]这些有序排列的同类数据元素的集合称为数组。在java6中,有一个方法Arrays.copyOf(),是一个泛型函数。我们可以利用它,写出更通用的合并方法。...
原创
发布博客 2022.07.26 ·
71 阅读 ·
0 点赞 ·
0 评论

JAVA集合框架(一)-ARRAYLIST

首次添加元素,自动进行扩容,默认扩充容量是10(数组的长度,也就是集合存放元素的个数);底层初始化,使用一个Object类型的空对象数组,初始长度为0;//指定下标添加元素和删除元素,执行效率比较低;...
原创
发布博客 2022.07.26 ·
206 阅读 ·
0 点赞 ·
0 评论

Linux 程序编译过程详解

大家肯定都知道计算机程序设计语言通常分为机器语言、汇编语言和高级语言三类。高级语言需要通过翻译成机器语言才能执行,而翻译的方式分为两种,一种是编译型,另一种是解释型,因此我们基本上将高级语言分为两大类,一种是编译型语言,例如C,C++,Java,另一种是解释型语言,例如Python、Ruby、MATLAB 、JavaScript。本文将介绍如何将高层的C/C++语言编写的程序转换成为处理器能够执行的二进制代码的过程,包括四个步骤:预处理(Preprocessing)编译(Compilation)汇编(Ass
原创
发布博客 2022.06.27 ·
165 阅读 ·
0 点赞 ·
0 评论

线上 K8s 集群性能评估、基础服务部署调优

对于非结构化的数据存储系统来说,LIST 操作通常都是非常重量级的,不仅占用大量的 磁盘 IO、网络带宽和 CPU,而且会影响同时间段的其他请求(尤其是响应延迟要求极高的 选主请求),是集群稳定性的一大杀手。例如,对于 Ceph 对象存储来说,每个 LIST bucket 请求都需要去多个磁盘中捞出这个 bucket 的全部数据;不仅自身很慢,还影响了同一时间段内的其他普通读写请求,因为 IO 是共享的,导致响应延迟上升乃至超时。如果 bucket 内的对象非常多(例如用作 harbor/docker-re
原创
发布博客 2022.06.27 ·
107 阅读 ·
0 点赞 ·
0 评论

SpringBoot集成Kafka——如此简单

哈喽,大家好!今天下午本打算整理一下服务器资源,给每个服务器打个标签,标明部署了哪些服务,方便查找。发现之前搭建kafka的服务器到期没续费,被回收了。缺一套kafka的环境,闲来无事,搭一个吧,顺便踩踩坑。话不多说,开干。官网:kafka.apache.org/downloads目前最新是3.2版本,也是稳定版,scala的版本可选2.12和2.13。推荐2.13,不太重要。下载,搞到服务器上。如下:解压,改名,同时建一个文件夹存放数据。简单修改一下配置,不搞那么复杂。主要修改数据存放目录,lis
原创
发布博客 2022.06.27 ·
76 阅读 ·
0 点赞 ·
0 评论

100道MySQL数据库经典面试题

索引哪些情况会失效索引不适合哪些场景索引的一些潜规则3. 日常工作中你是怎么优化SQL的?4. 说说分库与分表的设计分库分表方案:常用的分库分表中间件:分库分表可能遇到的问题为什么不是一般二叉树?为什么不是平衡二叉树呢?那为什么不是B树而是B+树呢?何时使用聚集索引或非聚集索引?如果本文对你有帮助,别忘记给我个3连 ,点赞,转发,评论,咱们下期见。...
原创
发布博客 2022.06.27 ·
179 阅读 ·
0 点赞 ·
0 评论

《我想进大厂》之kafka夺命连环11问

kafka是一个流式数据处理平台,他具有消息系统的能力,也有实时流式数据处理分析能力,只是我们更多的偏向于把他当做消息队列系统来使用。如果说按照容易理解来分层的话,大致可以分为3层:第一层是Zookeeper,相当于注册中心,他负责kafka集群元数据的管理,以及集群的协调工作,在每个kafka服务器启动的时候去连接到Zookeeper,把自己注册到Zookeeper当中第二层里是kafka的核心层,这里就会包含很多kafka的基本概念在内:record:代表消息topic:主题,消息都会由一个主题方式来组
原创
发布博客 2022.06.26 ·
32 阅读 ·
0 点赞 ·
0 评论

MySQL进阶系列:锁-InnoDB中锁的情况

一,锁的基本介绍相对其他数据库而言,MySQL的锁机制比较简单,其最显著的特点是不同的存储引擎支持不同的锁机制。比如,MyISAM和MEMORY存储引擎采用的是表级锁(table-level locking);InnoDB存储引擎既支持行级锁(row-level locking),也支持表级锁,但默认情况下是采用行级锁。表级锁:开销小,加锁快;不会出现死锁;锁定粒度大,发生锁冲突的概率最高,并发度最低。行级锁:开销大,加锁慢;会出现死锁;锁定粒度最小,发生锁冲突的概率最低,并发度也最高。Record L
原创
发布博客 2022.06.26 ·
163 阅读 ·
0 点赞 ·
0 评论

得物多活架构设计之路由服务设计

随着公司的业务发展,每次稳定性故障带来的影响越来越大,提供稳定的服务,保证系统的高可用已经变成了整个技术部面对的问题。基于这种背景,公司开展了多云/多活的技术项目,本人有幸参与了 “次日达” 项目【1】的异地双活改造方案的设计。想以此来浅谈一下我对多活乃至全球化的一些技术方案的认知。多活架构系列的文章我会按照总体技术方案、双活/全球区域化部署技术、网络调度技术、性能优化以及SRE五大部分来展开。本篇毒家Blog会着重讨论总体技术方案以及双活/全球区域化部署技术中的路由服务设计模块,并会在后续的毒家Blog中
原创
发布博客 2022.06.26 ·
97 阅读 ·
0 点赞 ·
0 评论

高效如何学习Java开发?分享这几个方法

每一个行业中能成为大佬的人,一定都有他自己一套具有独到见解的方法......他们之所以可以成为大佬就是会有自己独特的见解,在一次次的尝试中不断否定,然后在一次次的确定,一个程序员想要不断精进,要有高效的学习方法和好的学习习惯。下面我为大家来举例一个如何高效学习的几个方法。学习/Java好习惯在各个行业中能做的比较优秀的人都有自己的好习惯,所以学习这事养成一个好的习惯真的太重要了,一个好的学习习惯可以让你超越绝大多数同行的人。就我自己的经历来看,最开始的时候这方面走了不少弯路,很多好习惯也都是后来慢慢自己悟到
原创
发布博客 2022.06.24 ·
33 阅读 ·
0 点赞 ·
0 评论

「技术分享」强烈推荐小白必看的Java反射

相信不少人在实际运用中都大量使用了反射的机制,无论在各种编程语言中都应用的非常广泛,无论是基础框架搭建,或者复杂的业务代码编写都经常运用反射,但是大家是否知道反射实际原理,它有什么优缺点呢?今天我就用java语言来讲一讲我们的反射吧。反射的基本原理(1)Java反射机制的核心是在程序运行时动态加载类并获取类的详细信息,从而操作类或对象的属性和方法。本质是JVM得到class对象之后,再通过class对象进行反编译,从而获取对象的各种信息。(2)Java属于先编译再运行的语言,程序中对象的类型在编译期就确定下
原创
发布博客 2022.06.24 ·
72 阅读 ·
0 点赞 ·
0 评论

Java多线程并发:线程基本方法+线程池原理+阻塞队列原理技术分享

线程相关的基本方法有 wait,notify,notifyAll,sleep,join,yield 等。线程等待(wait)调用该方法的线程进入 WAITING 状态,只有等待另外线程的通知或被中断才会返回,需要注意的是调用 wait()方法后,会释放对象的锁。因此,wait 方法一般用在同步方法或同步代码块中。线程睡眠(sleep)sleep 导致当前线程休眠,与 wait 方法不同的是 sleep 不会释放当前占有的锁,sleep(long)会导致线程进入 TIMED-WATING 状态,而 wait(
原创
发布博客 2022.06.24 ·
157 阅读 ·
0 点赞 ·
0 评论

Java技术分享系列:Dubbo 与 Spring Cloud 完美结合

可能说起来Dubbo,很多人都不陌生,这毕竟是一款从2012年就开始开源的Java RPC框架,中间由于各种各样的原因停止更新4年半的时间,中间只发过一个小版本修了一个小bug,甚至大家都以为这个项目已经死掉了,竟然又在2017年9月份恢复了更新,不可谓不神奇。网络上很多人都拿Dubbo和Spring Cloud做对比,可能在大家的心目中,这两个框架是可以画上等号的吧,后来在网络上有一个非常流行的表格,比较详细的对比了 Spring Cloud 和 Dubbo ,表格如下:
原创
发布博客 2022.06.24 ·
182 阅读 ·
0 点赞 ·
0 评论

Java并发编程图册

序言很多同学学习Java并发一头扎进源码,最后头破血流,无功而返。横看成岭侧成峰,远近高低各不同。学习要始终从不同的视⻆来看待问题。学习并发亦是如此,需要通过理论远看轮廓,然后通过源码近看明细。本文包含大量图文以及源码分析帮助⼤家理解相关知识,借助这些图文,按照这个顺序学习,至少可以让你简单入门并发。入门后,希望大家继续带着下面这段话坚持深耕并发内容庆幸可以站在巨人的肩膀上学习,整理这些文稿的过程中参考了大量的资料,参考内容不能一一列出,万分感谢前辈们的知识分享如何学并发1.「Java并发编程实战」该书籍是
原创
发布博客 2022.06.24 ·
176 阅读 ·
0 点赞 ·
0 评论

SpringMVC源码解析-doDispatch方法

我们可以类中的方法中打断点来详细查看;由图可知继承自抽象类,我们的get/post请求分别会请求其和方法;的父类中对和方法进行了重写,都会执行;方法会执行方法:;而中的是抽象的,具体实现方法是在中;而中的则执行了关键方法:。所以我们执行把断点打在此方法处,看具体都做了什么操作。执行doDispatch,直接看主要方法 :getHandlerSpring是通过HandlerMapping对象来查找Handler(就是Controller)的,通过不同的HandlerMapping实现来查找不同方式
原创
发布博客 2022.06.24 ·
72 阅读 ·
0 点赞 ·
0 评论

分布式锁&kafka事务提交等编码技巧

在开发过程中,遇到了一些比较实用的编码技巧,故记录以加深印象。因为每个技巧的篇幅较短,故不做拆分,只合在一篇小文章中阐述。以下会涉及kafka的事务提交方法、redis分布式锁简化以及多key情况下应该怎么加锁、业务日志如何解耦。 所以,我们可以进行进一步优化,就是将消息通知后置到事务提交后,这样系统的可靠度就会更高。我们增加一个kafka帮助类,如下: kafka调用如下,它就会保证在事务结束后再通知其它系统,同理,很多需要后置的操作也可以这么玩。其实kafka还有一套可靠性应用方案
原创
发布博客 2022.06.24 ·
291 阅读 ·
0 点赞 ·
0 评论

这17个小工具,让我的开发效率提升了50%

在java的庞大体系中,其实有很多不错的小工具,也就是我们平常说的:。如果在我们的日常工作当中,能够将这些轮子用户,再配合一下idea的快捷键,可以极大得提升我们的开发效率。今天我决定把一些压箱底的小工具,分享给大家,希望对你有所帮助。本文会分享17个我们日常工作中一定会用得到的小工具,主要内容如下: 首先出场的是包下的类,该类主要用于操作集合或者返回集合,我个人非常喜欢用它。在工作中经常有对集合排序的需求。看看使用工具是如何实现升序和降序的:执行结果:1.2 获取最大或最小值有时候需要找
原创
发布博客 2022.06.24 ·
104 阅读 ·
0 点赞 ·
0 评论

Redis的数据结构之bitmap

项目开发过程中,我们经常会使用boolean类型来存储数据。例如记录用户每天签到,签到了是1,没签则为0,如果我们需要统计一年内的签到数,如果采用String来存储,需要每个用户都要记录 365次,当用户数量非常大时,需要的存储空间非常巨大。为了解决这个问题,Redis提供了位图数据结构来解决此问题。bitmap简称位图,是由多个二进制位组成的数组,数组中的每个二进制位都有与之对应的偏移量,可以通过这些偏移量对位图中指定的一个或多个二进制位进行操作。说明:位图也可以看作一个字节数组,索引序号代表对应的值,b
原创
发布博客 2022.06.24 ·
226 阅读 ·
0 点赞 ·
0 评论

两个部门,六轮面试,终与字节无缘

这个面试机会来的挺意外的,先在 Boss 投递的简历,后再牛客网看到了内推人的微信,加了微信问了下进度,挂了,内推人给我打电话根据简历简单询问了一下情况(内推人很谦逊,毕业于一所 211 大学,和我说他的学历也很一般),然后和 hr 沟通捞了我一下,才有的这个面试机会,太感谢了。6 月 9 日 16:00大概 45 分钟吧说一面就给我过了,等会 17:00 二面大概 40 分钟吧,等会 18:00 三面每轮面试官问的问题都很开放,引导你自己说,再根据你所说的东西再去问一些问题 连着三面,因为三面比较惨所以对
原创
发布博客 2022.06.24 ·
89 阅读 ·
0 点赞 ·
0 评论

全面总结 2022 年Java面试知识,掌握这些你也能进大厂

JVM 的设计目标是提供一个基于抽象规格描述的计算机模型,为解释程序开发人员提供很好的灵活性,同时也确保 Java 代码可在符合该规范的任何系统上运行。JVM 对其实现的某些方面给出了具体的定义,特别是对 Java 可执行代码,即字节码(Bytecode)的格式给出了明确的规格。这一规格包括操作码和操作数的语法和数值、标识符的数值表示方式、以及 Java 类文件中的 Java 对象、常量缓冲池在 JVM 的存储映象。这些定义为 JVM 解释器开发人员提供了所需的信息和开发环境。Java 的设计者希望给开发人
原创
发布博客 2022.06.23 ·
83 阅读 ·
0 点赞 ·
0 评论
加载更多