<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[java_atguigu的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/java_atguigu</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; java_atguigu]]></copyright><item><title><![CDATA[MySQL的10种常用数据类型]]></title><link>https://blog.youkuaiyun.com/java_atguigu/article/details/124496058</link><guid>https://blog.youkuaiyun.com/java_atguigu/article/details/124496058</guid><author>java_atguigu</author><pubDate>Fri, 29 Apr 2022 14:52:16 +0800</pubDate><description><![CDATA[MySQL的数据类型

常用的数据类型有：

整型（xxxint）
	位类型(bit)
	浮点型（float和double、real）
	定点数（decimal,numeric）
	日期时间类型（date,time,datetime,year）
	字符串（char,varchar,xxxtext）
	二进制数据（xxxBlob、xxbinary）
	枚举（enum）
	集合（set）
1、整数（xxxint）



整数列的可选属性有三个：

M: 宽度(在0填充的时候才有意义，否则不需要指定)
	uns.]]></description><category></category></item><item><title><![CDATA[Spring事务的传播级别]]></title><link>https://blog.youkuaiyun.com/java_atguigu/article/details/124474849</link><guid>https://blog.youkuaiyun.com/java_atguigu/article/details/124474849</guid><author>java_atguigu</author><pubDate>Thu, 28 Apr 2022 15:17:03 +0800</pubDate><description><![CDATA[一、简单说明



二、具体案例描述

1.PROPAGATION_REQUIRED


@Transactional(propagation=PROPAGATION_REQUIRED)pubilc void methodA(){        doPreSomething;        methodB();        doSufSomething;}
@Transactional(propagation=PROPAGATION_REQUIRED)pubilc void methodB(){     ]]></description><category></category></item><item><title><![CDATA[Node.js 18 新特性解读]]></title><link>https://blog.youkuaiyun.com/java_atguigu/article/details/124473374</link><guid>https://blog.youkuaiyun.com/java_atguigu/article/details/124473374</guid><author>java_atguigu</author><pubDate>Thu, 28 Apr 2022 14:35:50 +0800</pubDate><description><![CDATA[Node.js 刚刚发布了 18.0.0 版本，内置了 fetch、node:test 等标准模块。

如何快速体验

推荐用fnm，nvsnvs，nvmnvm等 Node.js 版本管理器。


$ fnm install 18
Installing Node v18.0.0 (arm64)

$ fnm use 18
Using Node v18.0.0

$ node -v
v18.0.0
复制代码

需要注意的是，该版本不是 LTS 版本，请勿在生产环境使用，需要等到 2022-10-25 才会成.]]></description><category></category></item><item><title><![CDATA[Scala中的底类型（bottom types）]]></title><link>https://blog.youkuaiyun.com/java_atguigu/article/details/124244846</link><guid>https://blog.youkuaiyun.com/java_atguigu/article/details/124244846</guid><author>java_atguigu</author><pubDate>Mon, 18 Apr 2022 11:11:15 +0800</pubDate><description><![CDATA[在Scala中存在两个比较特殊的类，Scala.Null和Scala.Nothing。它们是Scala面向对象的类型系统用于处理一些“极端情况”的特殊类型。

Null类是null引用的类型，他是每个引用类（即继承自AnyRef的类）的子类，null值可以用来给引用类初始化。但是Null并不兼容于值类型，即你不可能将null赋值给一个整数变量：

val i: Int = null

以上写法是不对的。

Nothing位于Scala类继承关系的最底部，它是每个其他类型的子类型，并且，不存在这个类型的任何值]]></description><category></category></item><item><title><![CDATA[Spark与Flink 架构之间对比区别]]></title><link>https://blog.youkuaiyun.com/java_atguigu/article/details/124017018</link><guid>https://blog.youkuaiyun.com/java_atguigu/article/details/124017018</guid><author>java_atguigu</author><pubDate>Thu, 07 Apr 2022 15:10:12 +0800</pubDate><description><![CDATA[Flink和Spark对比

通过学习，我们了解到，Spark和Flink都支持批处理和流处理，接下来让我们对这两种流行的数据处理框架在各方面进行对比。首先，这两个数据处理框架有很多相同点。

•都基于内存计算；

•都有统一的批处理和流处理APl，都支持类似SQL的编程接口；

•都支持很多相同的转换操作，编程都是用类似于Scala Collection APl的函数式编程模式；

•都有完善的错误恢复机制；

•都支持Exactly once的语义一致性。

当然，它们的不同点也是相当明显，我们可以从4]]></description><category></category></item><item><title><![CDATA[MONGODB性能问题诊断与优化]]></title><link>https://blog.youkuaiyun.com/java_atguigu/article/details/124016344</link><guid>https://blog.youkuaiyun.com/java_atguigu/article/details/124016344</guid><author>java_atguigu</author><pubDate>Thu, 07 Apr 2022 14:46:29 +0800</pubDate><description><![CDATA[mongodb目前在业界的使用一般可分为两种架构：主从复制集和分片复制集集群。

因为分片复制集包含了主从复制集的功能，所以后面将以分片复制集为案例做说明。

伴随数据量的增长和业务压力的增大，经常有接收到mongodb分片集群的性能告警邮件。

我所维护的几套分片集群有时一天能收到200来封告警邮件，不胜其烦。告警邮件大致分为三类：

1. cpu 负载过高。cpu load average 值超过30，cpu 使用率超过50%。

2. 空闲内存不足，系统对swap 分区使用超过50%。

3. IO ]]></description><category></category></item><item><title><![CDATA[4 种 SpringBoot 项目鉴权方式]]></title><link>https://blog.youkuaiyun.com/java_atguigu/article/details/124016031</link><guid>https://blog.youkuaiyun.com/java_atguigu/article/details/124016031</guid><author>java_atguigu</author><pubDate>Thu, 07 Apr 2022 14:35:58 +0800</pubDate><description><![CDATA[传统 AOP

对于这种需求，首先想到的当然是 Spring-boot 提供的 AOP 接口，只需要在 Controller 方法前添加切点，然后再对切点进行处理即可。

实现

其使用步骤如下：

使用 @Aspect 声明一下切面类 WhitelistAspect；

在切面类内添加一个切点 whitelistPointcut()，为了实现此切点灵活可装配的能力，这里不使用 execution 全部拦截，而是添加一个注解 @Whitelist，被注解的方法才会校验白名单。

在切面类中使用 spring]]></description><category></category></item><item><title><![CDATA[如何保证kafka消费的顺序性]]></title><link>https://blog.youkuaiyun.com/java_atguigu/article/details/123920233</link><guid>https://blog.youkuaiyun.com/java_atguigu/article/details/123920233</guid><author>java_atguigu</author><pubDate>Sat, 02 Apr 2022 14:54:05 +0800</pubDate><description><![CDATA[在Kafka中Partition(分区)是真正保存消息的地方，发送的消息都存放在这里。Partition(分区)又存在于Topic（主题）中，并且一个Topic（主题）可以指定多个Partition(分区)。

在Kafka中，只保证Partition(分区)内有序，不保证Topic所有分区都是有序的。

所以 Kafka 要保证消息的消费顺序，可以有2种方法：

一、1个Topic（主题）只创建1个Partition(分区)，这样生产者的所有数据都发送到了一个Partition(分区)，保证了消息的消费顺]]></description><category></category></item><item><title><![CDATA[前端高效开发必备的 js 库]]></title><link>https://blog.youkuaiyun.com/java_atguigu/article/details/123919921</link><guid>https://blog.youkuaiyun.com/java_atguigu/article/details/123919921</guid><author>java_atguigu</author><pubDate>Sat, 02 Apr 2022 14:44:50 +0800</pubDate><description><![CDATA[之前端需要学习哪些 js 库, 主流框架应该学 vue 还是 react ? 针对这些问题, 笔者来说说自己的看法和学习总结。

前端由于入行门槛低, 更新换代很快, 每年都会有大量新的框架和库出现, 也有大量库被淘汰。所以我们大可不必担心, 保持自己的学习步伐, 按需学习即可。接下来笔者也是按照不同前端业务的需求, 来整理一份能快速应用到工作中的js库, 以提高大家的开发效率.

js常用工具类


	lodash一个一致性、模块化、高性能的 JavaScript 实用工具库。
	
	
	ramda一..]]></description><category></category></item><item><title><![CDATA[Java常用实现八种排序算法与代码实现]]></title><link>https://blog.youkuaiyun.com/java_atguigu/article/details/123919491</link><guid>https://blog.youkuaiyun.com/java_atguigu/article/details/123919491</guid><author>java_atguigu</author><pubDate>Sat, 02 Apr 2022 14:29:38 +0800</pubDate><description><![CDATA[一、交换排序

所谓交换，就是序列中任意两个元素进行比较，根据比较结果来交换各自在序列中的位置，以此达到排序的目的。

1. 冒泡排序

冒泡排序是一种简单的交换排序算法，以升序排序为例，其核心思想是：


	从第一个元素开始，比较相邻的两个元素。如果第一个比第二个大，则进行交换。
	
	
	轮到下一组相邻元素，执行同样的比较操作，再找下一组，直到没有相邻元素可比较为止，此时最后的元素应是最大的数。
	
	
	除了每次排序得到的最后一个元素，对剩余元素重复以上步骤，直到没有任何一对元素需要比较为止。
	

]]></description><category></category></item><item><title><![CDATA[Scala下划线用法总结]]></title><link>https://blog.youkuaiyun.com/java_atguigu/article/details/123899153</link><guid>https://blog.youkuaiyun.com/java_atguigu/article/details/123899153</guid><author>java_atguigu</author><pubDate>Fri, 01 Apr 2022 15:25:24 +0800</pubDate><description><![CDATA[Scala 是一门以 java 虚拟机（JVM）为运行环境并将面向对象和函数式编程的最佳特性结合在一起的静态类型编程语言。scala 单作为一门语言来看， 非常的简洁高效，在 Scala 中存在很多让代码更加简洁的语法，下划线“_”便是其中一个。下划线的普遍用法总结如下：





1. 用于变量初始化

在 Java 中，可以声明变量而不必给出初始值，在 Scala 中，变量在声明时必须显示指定，可以使用下划线对变量进行初始化。而且该语法只适用于成员变量，不适用于局部变量。例：





2. 用于导包引]]></description><category></category></item><item><title><![CDATA[JUC 之多线程锁的 8 个问题分析]]></title><link>https://blog.youkuaiyun.com/java_atguigu/article/details/123899029</link><guid>https://blog.youkuaiyun.com/java_atguigu/article/details/123899029</guid><author>java_atguigu</author><pubDate>Fri, 01 Apr 2022 15:21:32 +0800</pubDate><description><![CDATA[1. 程序代码


package com.atguigu.thread;import java.util.concurrent.TimeUnit;class Phone{public synchronized void sendSMS() throws Exception{System.out.println("------sendSMS");}public synchronized void sendEmail() throws Exception{System.out.println("-----..]]></description><category></category></item><item><title><![CDATA[web 前端 AngularJS 四大特征]]></title><link>https://blog.youkuaiyun.com/java_atguigu/article/details/123898825</link><guid>https://blog.youkuaiyun.com/java_atguigu/article/details/123898825</guid><author>java_atguigu</author><pubDate>Fri, 01 Apr 2022 15:16:18 +0800</pubDate><description><![CDATA[AngularJS 的设计思想与 jquery 完全不同,前者操作的是变量 $scope $http,后者操作的 DOM。

MVC 模式

Angular 遵循软件工程的 M(数据)V(视图)C(控制器)模式,并鼓励展现，数据，和逻辑组件之间的松耦合.通过依赖注入（dependency injection），Angular 为客户端的 Web 应用带来了传统服务端的服务，例如独立于视图的控制。 因此，后端减少了许多负担，产生了更轻的 Web 应用。



Model:数据,其实就是 angular 变量(]]></description><category></category></item><item><title><![CDATA[关于三层架构和 MVC]]></title><link>https://blog.youkuaiyun.com/java_atguigu/article/details/123178291</link><guid>https://blog.youkuaiyun.com/java_atguigu/article/details/123178291</guid><author>java_atguigu</author><pubDate>Mon, 28 Feb 2022 11:13:33 +0800</pubDate><description><![CDATA[1、三层架构

我们的开发架构一般都是基于两种形式，一种是 C/S 架构，也就是客户端/服务器，另一种是 B/S 架构，也就

是浏览器服务器。在 JavaEE 开发中，几乎全都是基于 B/S 架构的开发。那么在 B/S 架构中，系统标准的三层架构

包括：表现层、业务层、持久层。三层架构在我们的实际开发中使用得非常多，所以我们课程中的案例也都是基于

三层架构设计的。

三层架构中，每一层各司其职，接下来我们就说说每层都负责哪些方面：

表现层：

也就是我们常说的web层。它负责接收客户端请求，向客户端]]></description><category></category></item><item><title><![CDATA[Hadoop运维工具箱之HDFS异构存储]]></title><link>https://blog.youkuaiyun.com/java_atguigu/article/details/123178165</link><guid>https://blog.youkuaiyun.com/java_atguigu/article/details/123178165</guid><author>java_atguigu</author><pubDate>Mon, 28 Feb 2022 11:12:07 +0800</pubDate><description><![CDATA[异构存储主要解决，不同的数据，存储在不同类型的硬盘中，达到最佳性能的问题。







Hadoop的存储类型和存储策略有;





1、查看当前有哪些存储策略可以用


[atguigu@hadoop102 hadoop-3.1.3]$ hdfs storagepolicies-listPolicies

2、为指定路径（数据存储目录）设置指定的存储策略


hdfs storagepolicies -setStoragePolicy -pathxxx -policy xxx

3、获取指定路径（数据]]></description><category></category></item><item><title><![CDATA[React应用(基于React脚手架)]]></title><link>https://blog.youkuaiyun.com/java_atguigu/article/details/123178111</link><guid>https://blog.youkuaiyun.com/java_atguigu/article/details/123178111</guid><author>java_atguigu</author><pubDate>Mon, 28 Feb 2022 11:07:52 +0800</pubDate><description><![CDATA[使用create-react-app创建react应用

1. react脚手架

1.1. xxx脚手架: 用来帮助程序员快速创建一个基于xxx库的模板项目

1.1.1. 包含了所有需要的配置（语法检查、jsx编译、devServer…）

1.1.2. 下载好了所有相关的依赖

1.1.3. 可以直接运行一个简单效果

1.2. react提供了一个用于创建react项目的脚手架库: create-react-app

1.3. 项目的整体技术架构为: react + webpack + e...]]></description><category></category></item><item><title><![CDATA[hdfs数据误删后恢复方式]]></title><link>https://blog.youkuaiyun.com/java_atguigu/article/details/123130039</link><guid>https://blog.youkuaiyun.com/java_atguigu/article/details/123130039</guid><author>java_atguigu</author><pubDate>Fri, 25 Feb 2022 11:55:17 +0800</pubDate><description><![CDATA[我们知道hdfs是hadoop体系上的文件系统，负责具体的数据文件存储，且如果一旦hdfs文件被误删除后，尤其是重要数据，对公司来说影响非常大。所以需要提前做一些安全预防措施，例如使用Hdfs Trash机制，或者重要目录应用Hdfs SnapShot功能，然后针对于删除的文件或者目录可以通过trash或者SnapShot机制来进行恢复，如果数据确实已经删除了（例如直接通过hadoop api进行delete，未配置SnapShot），如果想恢复数据，就需要快速采取一定的措施了。下面我们来分别介绍下这些恢复]]></description><category></category></item><item><title><![CDATA[Redis持久化RDB和AOF区别]]></title><link>https://blog.youkuaiyun.com/java_atguigu/article/details/123129352</link><guid>https://blog.youkuaiyun.com/java_atguigu/article/details/123129352</guid><author>java_atguigu</author><pubDate>Fri, 25 Feb 2022 11:28:35 +0800</pubDate><description><![CDATA[RDB

RDB是Redis内存到硬盘的快照，用于redis持久化，创建RDB二进制文件，将存储在内存中的数据，持久化的放到硬盘中，当我们需要这些数据的时候，启动载入RDB文件，数据将会被存入内存中，其实RDB就是一种快照的方式持久化存储数据，也可以作为一种复制媒介。

触发机制--主要三种方式

save 同步命令(会阻塞redis)
	bgsave 异步命令（fork）
	自动
#关闭自动保存配置#save 900 1 #900秒 改了一次就自动生成RDB文件#save 300 10 #300秒修改了1]]></description><category></category></item><item><title><![CDATA[JUC 中 4 个常用的并发工具类]]></title><link>https://blog.youkuaiyun.com/java_atguigu/article/details/123127402</link><guid>https://blog.youkuaiyun.com/java_atguigu/article/details/123127402</guid><author>java_atguigu</author><pubDate>Fri, 25 Feb 2022 10:28:47 +0800</pubDate><description><![CDATA[CountDownLatch

CountDownLatch是我目前使用比较多的类，CountDownLatch初始化时会给定一个计数，然后每次调用countDown() 计数减1，

当计数未到达0之前调用await() 方法会阻塞直到计数减到0；

使用场景：多用于划分任务由多个线程执行，例如：最近写个豆瓣爬虫，需要爬取每个电影的前五页短评，可以划分成五个线程来处理数据。通过latch.await()保证全部完成再返回。


publicvoidlatch()throwsInterrup...]]></description><category></category></item><item><title><![CDATA[大数据培训Kafka生产优化之集群重要参数配置与优化设置（二）]]></title><link>https://blog.youkuaiyun.com/java_atguigu/article/details/123108547</link><guid>https://blog.youkuaiyun.com/java_atguigu/article/details/123108547</guid><author>java_atguigu</author><pubDate>Thu, 24 Feb 2022 11:49:07 +0800</pubDate><description><![CDATA[Kafka集群所有重要参数配置详解与优化设置


成文时间：2022年2月22日。参数如有变化，请以官网参数和默认值为准！


今天为大家带来Kafka生产优化系列的第二篇 —— Kafka集群所有重要参数配置详解与优化设置。



飞哥已将Kafka集群中所有重要参数全部分类总结，并具体讲解每个参数的含义。

如果各位同学在面试或者生产中如果遇到Kafka性能优化方面的问题，可以参考此文配置进行具体优化。

由大海哥主讲的更详细的《Kafka3.0入门、源码、优化与配置》系列课程，可以B站搜索“尚硅谷”进]]></description><category></category></item></channel></rss>