<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[青椒盖饭的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/qq_43386754</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; qq_43386754]]></copyright><item><title><![CDATA[记一次有趣的BUG]]></title><link>https://blog.youkuaiyun.com/qq_43386754/article/details/124688293</link><guid>https://blog.youkuaiyun.com/qq_43386754/article/details/124688293</guid><author>qq_43386754</author><pubDate>Tue, 10 May 2022 15:10:04 +0800</pubDate><description><![CDATA[导出功能与迅雷浏览器下载插件的冲突
事件的起因

有一天接到一个导出excel文件数据的需求,系统是一个springboot的网页项目,框架中已有整合导出工具,是个很小的功能,日常写完代码运行程序,测试了一下,完美运行,测试通过后,随着其他功能一起上线了,本来事情到这也就改结束了.
后来发现,当导出前,页面上选中的条件过多时,前端的下载excel文件路径就太长了,导致前端请求发送失败,搜索一下后发现,get请求不支持太长的路径,于是乎改用post请求的方式发送.
参照网上的解决方式,创建一个form表单元素]]></description><category></category></item><item><title><![CDATA[ElasticSearch-HTTP操作]]></title><link>https://blog.youkuaiyun.com/qq_43386754/article/details/117196729</link><guid>https://blog.youkuaiyun.com/qq_43386754/article/details/117196729</guid><author>qq_43386754</author><pubDate>Sun, 23 May 2021 20:49:59 +0800</pubDate><description><![CDATA[所需环境


安装并成功运行elasticsearch
下载postman


创建索引

- PUT请求
http://IP地址:端口/索引名称



查看单个索引信息

- GET请求
http://IP地址:端口号/索引名称


返回结果

{
    "xiemaoshu": { // 索引名称
        "aliases": {},
        "mappings": {},
        "settings": { // 设置
            "index": {
    .]]></description><category></category></item><item><title><![CDATA[Hadoop-MapReduce原理]]></title><link>https://blog.youkuaiyun.com/qq_43386754/article/details/114463292</link><guid>https://blog.youkuaiyun.com/qq_43386754/article/details/114463292</guid><author>qq_43386754</author><pubDate>Mon, 08 Mar 2021 00:01:44 +0800</pubDate><description><![CDATA[MapReduce是将一个大任务分成多个小任务(Map),并执行之后,合并结果(reduce).


其实许多分析计算的过程都可以拆分成两个步骤


Map:分成多个子任务
reduce:合并所有子任务的执行结果


举一个例子:


假设现在有1000副扑克牌,其中有一个副扑克牌中少了一张,如何找出少了哪一张牌?


如果使用MapReduce的方式就是先将1000副扑克牌分成多份,比如说分成5份,交由5个人手中,每个人开始将手中的牌进行分类计算,每个人都会得出A有几张,2有几张等等,最后得出结果,分析.]]></description><category></category></item><item><title><![CDATA[HDFS使用]]></title><link>https://blog.youkuaiyun.com/qq_43386754/article/details/114296823</link><guid>https://blog.youkuaiyun.com/qq_43386754/article/details/114296823</guid><author>qq_43386754</author><pubDate>Tue, 02 Mar 2021 23:24:31 +0800</pubDate><description><![CDATA[查看HDFS的文件列表

hadoop fs -ls /



在HDFS之中创建文件夹

hadoop fs mkdir 目录名称



将本地文件上传到HDFS之中

hadoop fs -put 本地文件路径 hdfs目录名称



将HDFS中的文件下载到本地

hadoop fs -get HDFS文件目录 下载到本地目录



...]]></description><category></category></item><item><title><![CDATA[HDFS读写文件流程]]></title><link>https://blog.youkuaiyun.com/qq_43386754/article/details/114049604</link><guid>https://blog.youkuaiyun.com/qq_43386754/article/details/114049604</guid><author>qq_43386754</author><pubDate>Wed, 24 Feb 2021 23:43:04 +0800</pubDate><description><![CDATA[HDFS读取文件流程


客户端发送读取文件请求到NameNode
NameNode返回元数据(文件名,块路径)给客户端
客户端根据元数据读取对应的数据块,然后将数据库组装得到文件



HDFS写文件流程


将文件拆分成多个块(Block,每个block大小为64M)
返回可用的DataNode
将块写入DataNode
进行流水线复制,将块复制到其他DataNode
更新元数据



...]]></description><category></category></item><item><title><![CDATA[Hadoop基本概念与数据管理策略]]></title><link>https://blog.youkuaiyun.com/qq_43386754/article/details/113802985</link><guid>https://blog.youkuaiyun.com/qq_43386754/article/details/113802985</guid><author>qq_43386754</author><pubDate>Wed, 24 Feb 2021 23:31:55 +0800</pubDate><description><![CDATA[HDFS基本概念

快(Block)


HDFS的文件被分成块进行存储,HDFS块的默认大小为64M,块是文件存储处理的逻辑单元


NameNode


NameNode是管理节点,存放文件元数据,元数据包含以下两个部分

文件与数据块的映射表
数据块数据节点的映射表



DateNode


DateNode是HDFS的工作节点,存放数据块


数据管理策略

数据库副本


HDFS的每个数据块会有三个副本,分布在两个机架内的三个节点,以确保任何一个节点发生故障时,可以通过其他节点获取数据


心]]></description><category></category></item><item><title><![CDATA[Hadoop安装]]></title><link>https://blog.youkuaiyun.com/qq_43386754/article/details/113791682</link><guid>https://blog.youkuaiyun.com/qq_43386754/article/details/113791682</guid><author>qq_43386754</author><pubDate>Sat, 13 Feb 2021 18:54:10 +0800</pubDate><description><![CDATA[安装前置条件:已安装好JDK并配置环境变量

开始安装Hadoop

下载Hadoop压缩包,使用wget方式获取

wget https://archive.apache.org/dist/hadoop/common/hadoop-1.2.1/hadoop-1.2.1.tar.gz


将压缩包加压到/opt目录下

mv hadoop-1.2.1.tar.gz /opt
cd /opt
tar -zxvf hadoop-1.2.1.tar.gz


解压完成之后,进入conf/目录中,需要配置以下四个.]]></description><category></category></item><item><title><![CDATA[Hadoop简介]]></title><link>https://blog.youkuaiyun.com/qq_43386754/article/details/113791136</link><guid>https://blog.youkuaiyun.com/qq_43386754/article/details/113791136</guid><author>qq_43386754</author><pubDate>Thu, 11 Feb 2021 18:55:16 +0800</pubDate><description><![CDATA[Hadoop的由来


随着网络时代的发展,用户产生的数据越来越多,大数据时代来临.于是许多政府和企业开始关注如何去获取更多的数据,从数据中挖掘出更多的价值.
例如:从众多视频监控数据中发现潜逃罪犯,企业通过多年的盈利亏损数据来分析未来企业的发展趋势等等.


谷歌公司最早提出了大数据的解决方案,并且很好地降低了存储数据的成本,谷歌最早的大数据技术为:



Google File System：文件系统
MapReduce：编程模式和运行环境
BigTable：一个SortMap


但是由于谷歌没有提供]]></description><category></category></item><item><title><![CDATA[elasticsearch-基本概念理解]]></title><link>https://blog.youkuaiyun.com/qq_43386754/article/details/112723417</link><guid>https://blog.youkuaiyun.com/qq_43386754/article/details/112723417</guid><author>qq_43386754</author><pubDate>Sat, 16 Jan 2021 22:33:41 +0800</pubDate><description><![CDATA[集群与节点


一个elasticsearch服务就是一个节点,多个节点可以组成一个集群,每个节点只能属于一个集群,每个节点可以有自己的名称,对应同一个名称的集群,主节点(master)只有一个,其他都是随从节点(salve).
每个节点可以部署在不同的服务器上作为分布式部署,也可以将所有节点部署在同一台服务器上称之为伪分布式部署.


2. 索引

含有相同属性的文档集合,在MySQL中可以看做一个数据库


类型


索引可以定义一个或多个类型,文档必须属于一个类型,可以吧类型看做MySQL中的数据表.]]></description><category></category></item><item><title><![CDATA[ElasticSearch-分布式安装]]></title><link>https://blog.youkuaiyun.com/qq_43386754/article/details/112716245</link><guid>https://blog.youkuaiyun.com/qq_43386754/article/details/112716245</guid><author>qq_43386754</author><pubDate>Sat, 16 Jan 2021 18:01:30 +0800</pubDate><description><![CDATA[前置条件


已安装启动一个elasticsearch服务
已安装启动elasticsearch-head插件


配置master,设置主节点
设置一个elasticsearch为主节点,修改主节点安装目录下的elasticsearch.yml配置文件,添加以下内容

# 设置集群名称为:"wali"
cluster.name: wali
# 设置节点名称
node.name: master
# 设置当前节点为 master
node.master: true
# 设置绑定ip 
network.hos.]]></description><category></category></item><item><title><![CDATA[ElasticSearch-head插件安装]]></title><link>https://blog.youkuaiyun.com/qq_43386754/article/details/112711932</link><guid>https://blog.youkuaiyun.com/qq_43386754/article/details/112711932</guid><author>qq_43386754</author><pubDate>Sat, 16 Jan 2021 16:26:42 +0800</pubDate><description><![CDATA[安装启动es服务之后,从页面中访问得到的是json格式的数据,这样不便于查看使用,于是我们可以借助es的插件来添加一下功能使得es使用起来更加的方便


使用Head插件解决es访问浏览器界面的问题.


使用GitHUb搜索下载elasticsearch-head,国内可以使用gitee搜索,有同步github的仓库.


elasticsearch-head下载完毕之后,使用NodeJs进行编译安装,进入elasticsearch-head主目录


npm install

配置ElasticSe..]]></description><category></category></item><item><title><![CDATA[ElasticSearch简介与单实例安装]]></title><link>https://blog.youkuaiyun.com/qq_43386754/article/details/112708925</link><guid>https://blog.youkuaiyun.com/qq_43386754/article/details/112708925</guid><author>qq_43386754</author><pubDate>Sat, 16 Jan 2021 15:40:43 +0800</pubDate><description><![CDATA[ElasticSearch简介

ElasticSearch是一个数据搜索分析引擎,业界简称ES,拥有分布式,RESTful接口风格等特点,使用Java语言编写,作为Apache许可条款发布的开源项目.能够达到实时搜索,稳定,可靠,快速,安装使用方便.各大互联网厂商如:谷歌,百度,淘宝等都有使用.

ElasticSearch的单例安装


进入官网进行下载


注意:国内下载太慢可以去镜像中下载elasticsearch-镜像


elasticsearch依赖java环境,7.x的版本需要jdk11,如]]></description><category></category></item><item><title><![CDATA[Android搭建开发环境]]></title><link>https://blog.youkuaiyun.com/qq_43386754/article/details/110306938</link><guid>https://blog.youkuaiyun.com/qq_43386754/article/details/110306938</guid><author>qq_43386754</author><pubDate>Sun, 29 Nov 2020 11:10:20 +0800</pubDate><description><![CDATA[下载SDK

https://www.androiddevtools.cn/


得到压缩包,解压即可(注:解压目录不要带中文字符)


下载Android应用开发工具


这里选择 Android Studio,使用ToolBox 工具下载,下载完需要购买授权或者试用30天

https://www.jetbrains.com/toolbox-app/



配置path环境变量


在windows上设置系统环境变量,新建变量 ANDROID_SDK_ROOT



在path中添加 ANDROID_.]]></description><category></category></item><item><title><![CDATA[vue简介]]></title><link>https://blog.youkuaiyun.com/qq_43386754/article/details/107447791</link><guid>https://blog.youkuaiyun.com/qq_43386754/article/details/107447791</guid><author>qq_43386754</author><pubDate>Sun, 19 Jul 2020 18:14:02 +0800</pubDate><description><![CDATA[什么是vue?

官网上的介绍为:渐进式JavaScript 框架,那么渐进式是什么意思?Vue 被设计为可以自底向上逐层应用.
也就是说:


Vue可以作为当做一个库,来引入到项目中,使用vue某些功能,来完成项目中的部分开发.
同时vue也可以当做一个框架来搭建起一个项目工程.


这两者的区别在于前者作为一个项目的参与者角色存在.而后者作为一个项目的根基,主角一般的存在.因为vue的这种设计使得vue在使用时变得非常灵活.

vue的创建者

大名鼎鼎的尤雨溪(跪拜大神),B站上有他的视频


为什]]></description><category></category></item><item><title><![CDATA[ffmpeg视音频处理工具]]></title><link>https://blog.youkuaiyun.com/qq_43386754/article/details/104812420</link><guid>https://blog.youkuaiyun.com/qq_43386754/article/details/104812420</guid><author>qq_43386754</author><pubDate>Thu, 12 Mar 2020 10:53:28 +0800</pubDate><description><![CDATA[FFmpeg是一套对视频,音频进行格式化,转码,内容编辑,合并等操作的工具.
ffmpeg官网

http://ffmpeg.org/


ffmpeg对各大操作系统均有支持,github上中有其对应的源码,也可以直接下载编译后的工具使用



下载后将文件解压得到以下文件,其中bin目录下为所有ffmpeg可以行文件工具




示例:为视频添加背景音乐


命令格式,windows下需要加上...]]></description><category></category></item><item><title><![CDATA[spring简单封装hibernate-validator进行参数检验]]></title><link>https://blog.youkuaiyun.com/qq_43386754/article/details/103999331</link><guid>https://blog.youkuaiyun.com/qq_43386754/article/details/103999331</guid><author>qq_43386754</author><pubDate>Thu, 16 Jan 2020 10:27:50 +0800</pubDate><description><![CDATA[在实际的开发中,当进行向数据库中插入或更新数据的操作的时候,常常会需要对数据是否合法进行必要的判断,例如判断一个电话号码格式是否合法,身份证号码是否合法,邮箱地址是否合法等等.
如果这些操作都需要用java代码一个一个进行判断的话,不仅代码重复率特别高,而且也容易出错.因此,如果有一个简单可复用的方式来进行这些操作,那么会使程序变得更加完美.
java中自带了一套参数检验的api,但是随着jav...]]></description><category></category></item><item><title><![CDATA[springboot配合jquery发送ajax实现跨域请求]]></title><link>https://blog.youkuaiyun.com/qq_43386754/article/details/103985294</link><guid>https://blog.youkuaiyun.com/qq_43386754/article/details/103985294</guid><author>qq_43386754</author><pubDate>Wed, 15 Jan 2020 11:16:23 +0800</pubDate><description><![CDATA[在使用jquery发送ajax时,默认情况下只能够访问同域名下的资源,例如当前页面所在域名为

http://localhost:63342/miaosha/html/register.html?_ijt=qo0hebcgeo2ad7dqkkg4of8m65



如果ajax要访问的路径为

        url:"http://localhost:8099/user/register",
...]]></description><category></category></item><item><title><![CDATA[Spring AOP实例--使用自定义注解]]></title><link>https://blog.youkuaiyun.com/qq_43386754/article/details/103871111</link><guid>https://blog.youkuaiyun.com/qq_43386754/article/details/103871111</guid><author>qq_43386754</author><pubDate>Tue, 07 Jan 2020 11:58:11 +0800</pubDate><description><![CDATA[开发中遇到一个统计用户使用次数的需求,例如,统计系统中搜索功能被用了几次,计算器功能被用了几次等等…
原本是想着在每个对应的方法中向数据库添加一条记录数据,但是后来朋友建议我使SpringAOP技术实现.
细想一下,直接在要统计的目标方法中修改代码不是很好,而且要统计的地方不止一处,这需要在每个需要统计的方法中修改代码,不仅代码重复,而且容易出错
最后想了想,还是打算使用aop实现吧
由于对ao...]]></description><category></category></item><item><title><![CDATA[Nginx负载均衡]]></title><link>https://blog.youkuaiyun.com/qq_43386754/article/details/103463163</link><guid>https://blog.youkuaiyun.com/qq_43386754/article/details/103463163</guid><author>qq_43386754</author><pubDate>Mon, 09 Dec 2019 18:57:27 +0800</pubDate><description><![CDATA[linux中配置nginx负载均衡:当用户访问量过多时通过配置多个服务,通过nginx配置将访问按照一定的策略分配到不同的服务中,从而达到负载均衡的目的.
如果linux中配置了多个服务,通过以下方式配置nginx负载均衡


修改nginx.conf配置文件


在http模块下添加一个"upstream"模块
"myserver “为自定义的名称

upstream myserver {
	...]]></description><category></category></item><item><title><![CDATA[Nginx反向代理实例二]]></title><link>https://blog.youkuaiyun.com/qq_43386754/article/details/103437704</link><guid>https://blog.youkuaiyun.com/qq_43386754/article/details/103437704</guid><author>qq_43386754</author><pubDate>Sat, 07 Dec 2019 19:27:48 +0800</pubDate><description><![CDATA[参考博客


https://www.cnblogs.com/sxmny/p/11224842.html
https://www.cnblogs.com/lhm166/articles/6604852.html
https://blog.youkuaiyun.com/Cafe_Boy/article/details/102876664


要进行该博文实例测试,需要满足以下条件

已在Linux虚拟机中安装...]]></description><category></category></item></channel></rss>