自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(208)
  • 收藏
  • 关注

原创 windows10搭建spark本地开发环境

注意:Spark3.0、Spark3.1是由Scala2.12预编译,但是Spark 3.2+是采用Scala 2.13预编译。

2023-01-29 11:32:09 5085 2

原创 FTP基础

文章目录1. 前言1.1 FTP和SFTP1.1.1 FTP1.1.2 SFTP1.1.3 FTP与SFTP的区别2. 安装FTP2.1 Linux系统中安装FTP2.1.1 Linux系统安装FTP服务端2.1.1.1 检查安装`vsftp`2.1.1.2 启动服务2.1.1.3 vsftpd的配置2.1.1.4 登录方式2.1.2 Linux系统安装FTP客户端2.2 Windows系统中安装FTP2.2.1 安装FTP服务器2.2.2 安装FTP客户端2.2.2.1 下载Filezila:[*File

2022-04-16 11:14:15 1325

原创 presto内存配置

目录1. presto的内存结构2. 参考文献1. presto的内存结构下图是presto-worker节点的内存示意图: 图片来源于互联网可以粗略的认为presto的jvm.properties配置文件中的jvm堆内存会被分为3份:系统内存池(SystemMemoryPool)保留内存池(ReservedMemoryPool)普通内存池(GeneralMemoryPool)这三者的区别:System Pool 是用来保留给系统使用的,默认为40%的内存空间留给系统使用。Res

2022-02-10 18:23:46 3051

原创 crontab的环境变量 导致定时任务执行失败的问题

目录1. 背景2. 问题2.1 问题描述2.2 问题原因3. 解决方案4. 参考文献1. 背景在使用腾讯云的EMR-3.2.1时,客户有个需求,需要每周定时执行balance。balance的脚本内容如下:#!/bin/bash# It does not allow to run more than 1 Balancer process at the same time on a same hdfs-cluster.count=0log_file=/opt/balancer/logs/bal

2022-02-07 17:38:38 1889

原创 在windows10下编译Hadoop-2.7.2源码

1. 编译hadoop-2.7.2的目的编译hadoop源代码,意义在于当我们使用eclipse进行hadoop开发时,可以直接在本地运行,而无需打包成jar,然后再提交到hadoop服务器进行运行。当然,这还需要一个可以支持hadoop对应版本的eclipse插件,即hadoop-eclipse-2.x.x.jar。如果在linux系统上,其实很容易,没有那么多磕磕盼盼。在windows系统上编译,需要安装的程序或者工具比较多。但是总结起来,就那么几个,能够通过ant,maven构建java项目,能

2021-06-20 17:28:48 1021

原创 ELK日志分析介绍

文章目录1. 前言2. 什么是ELK3. ELK各组件简介4. 总结5. 参考文献1. 前言2. 什么是ELK3. ELK各组件简介4. 总结5. 参考文献

2021-05-09 21:27:28 810 7

原创 DOH简介

文章目录1. 前言2. 什么是DOH3. xx4. 总结5. 参考文献1. 前言2. 什么是DOH3. xx4. 总结5. 参考文献

2021-05-06 14:52:15 7198 2

原创 DNS解析过程

文章目录

2021-05-06 14:32:49 512

原创 MySQL简介和使用

文章目录1. 数据库基础概念2. MySQL简介MySQL的版本MySQL 与MariaDBMySQL的引擎MySQL的工具3. 使用MySQL3.1 检索数据排序检索数据3.2 过滤数据3.2.1 组合多个WHERE子句3.2.2 用通配符进行过滤3.2.3 使用正则表达式进行搜索3.2.4 创建计算字段3.2.5 使用函数3.2.5.1 常用文本处理函数3.2.5.2 常用日期和时间处理函数3.2.5.3 常用数值处理函数3.2.5.4 聚集函数3.2.6 分组数据3.2.7 使用子查询3.2.8 联结

2021-04-27 21:53:38 204

原创 YARN简介

文章目录1. 前言2. YARN组件3. YARN工作流程4. 总结参考文献1. 前言2. YARN组件ResourceManagerSchedulerApplicationManagerNodemanagerApplicationMasterContainer3. YARN工作流程4. 总结参考文献[1]

2021-04-24 18:30:28 2784

原创 使用form表单的注意事项

文章目录1. 前言2. form表单简介3. form表单使用例子总结参考1. 前言本身对前端这块不是很熟悉,自己试着做了个表单,但是发现最终提交表单后的URL不是我所期望的,就像了解下表单应该怎么用。看了下百度的搜索效果,如下我们能够发现地址栏中出现了很多字符串参数,例如:wd, rsv_iqid,rsv_bp, issp 等等查看源码之后,发现其表单部分的HTML代码如下:<form name="f" id="form" action="/s" class="fm" onsubmit=

2021-04-14 21:48:21 589 1

原创 记 安装单机版 腾讯 蓝鲸智云

文章目录1. 准备工作1.1 VMware1.2 Centos7镜像2. 安装Centos73. 安装单机部署版蓝鲸3.1 下载蓝鲸智云完整包3.2 下载 证书包3.3 修改一些设置3.4 开始单机部署瞅一眼,标准部署。4. 简单使用蓝鲸5. 快熟使用1. 准备工作1.1 VMware从VMware官网下载最新的 VMware workstation pro 15。安装好之后,准备使用。1.2 Centos7镜像从Centos官网 中选择下载Centos7.8 的DVD版本。下载好后,备用。2.

2021-04-07 13:42:03 766

原创 Celery简介

文章目录1. 前言2. Celery是什么?3. 安装Celery4. 使用Celery4.1 Django和Celery4.2 Flask和Celery5. 配置Celery6. 总结7. 参考文章1. 前言2. Celery是什么?3. 安装Celery$ pip install celery4. 使用Celery4.1 Django和Celery4.2 Flask和Celery基于 Celery 的后台任务在 Flask 中使用 Celery异步发送邮件# views.py

2021-04-07 13:40:47 359 1

原创 Python虚拟环境管理

Python中常见的几个虚拟环境包为:virtualenv,virtualenvwrapper,venv,conda,pipenv。virtualenv# 1. 安装virtualenvpip install virtualenv# 2. 创建一个虚拟环境virtualenv myvenv# 指定python解释器版本virtualenv -p /usr/bin/python2.7 myvenv# 如果不想使用系统的包,加上–no-site-packeages参数virtualenv

2021-04-04 14:17:10 506

原创 PEP 3333简介

文章目录1. 什么是PEP?2. PEP 33332.1 Application/Framework端2.2 Server/Gateway端2.3 Middleware:Components that Play Both Sides1. 什么是PEP?PEP是Python Enhancement Proposals的缩写。一个PEP是一份为Python社区提供各种增强功能的技术规格,也是提交新特性,以便让社区指出问题,精确化技术文档的提案。2. PEP 3333PEP3333本文档指定了Web服务

2021-03-05 21:29:16 531

原创 聊一聊 Redis Cluster的实现

文章目录1.Redis集群介绍2.Redis 集群的数据分片3.Redis 集群的主从复制模型4.Redis 一致性保证Redis Cluster 如何故障转移?Redis Cluster 如何重新分片?Redis 集群的目标实现子集在Redis Cluster 协议中的客户端和服务端安全写入可用性性能为什么要避免使用合并操作Redis Cluster中的主要概念键分布模型(key distributed model)键哈希标签(Keys hash tags)集群节点属性集群拓扑(Cluster topol

2020-11-23 00:44:19 180

原创 网关和API网关

文章目录腾讯云大学 网关 & API 网关概述了解没有网关限制下,服务访问会出现的问题了解网关的分类了解腾讯云API网关的优势了解腾讯云API网关的作用和应用场景

2020-10-21 19:58:26 978

原创 IaaS、PaaS、SaaS是个啥?

文章目录IaaS、PaaS和SaaS传统开发模式和基于PaaS的开发模式参考文献IaaS、PaaS和SaaSIaaS。基础设施即服务。是云服务的最底层,主要提供一些基础资源(服务器、存储、网络硬件等),用户需要自己控制底层,实现基础设施的使用逻辑。PaaS。平台即服务。提供软件部署平台(runtime),抽象掉了硬件和操作系统细节,开发者只需要关注自己的业务逻辑,不需要关注底层。SaaS。软件即服务。用户不关心技术问题,可以拿来即用。举个例子,综合的 PaaS 是一个集开发、测试、部署、托管和

2020-09-23 21:46:33 391

原创 简单了解 docker

文章目录1. 前言1.1 什么是Docker?1.2 Docker 的优势1.3 Docker Engine(Docker引擎)1.4 Docker能用来干嘛?2. Docker架构3. 基本概念3.1 Docker daemon(Docker守护进程)3.2 Docker client(Docker客户端)3.3 Docker registries(Docker仓库)3.4 Docker objects(Docker对象)3.5 Images(镜像)3.6 Containers(容器)3.7 Servic

2020-09-13 20:34:40 118

原创 初识 Python asyncio

文章目录1. 前言1. 前言引用廖雪峰老师的话由于我们要解决的问题是CPU高速执行能力和IO设备的龟速严重不匹配,多线程和多进程只是解决这一问题的一种方法。另一种解决IO问题的方法是异步IO。当代码需要执行一个耗时的IO操作时,它只发出IO指令,并不等待IO结果,然后就去执行其他代码了。一段时间后,当IO返回结果时,再通知CPU进行处理。await 关键字的意思是,当遇到await的 awaitable对象,表明需要等待awaitable执行完成之后,才能继续执行此协程的剩余部分。corou

2020-09-12 20:52:38 128

原创 理解 JWT

文章目录1. 前言2. xx参考文献1. 前言2. xx参考文献

2020-09-10 18:02:58 202

原创 OAuth 2.0 是个什么东西?

文章目录1. 前言2. 什么是OAuth 2.0?2.1 说明一下出现的角色3. 协议流程4. 四种授权方式4.1 授权码授权(Authorization Code Grant)4.2 隐式授权(Implicit Grant)4.3 用户密码凭证授权(Resource Owner Password Credentials Grant)4.4 客户端凭证授权(Client Credentials Grant)5. 其他操作5.1 使用access token5.2 更新access token6. 总结7.

2020-09-08 23:02:25 191

原创 初识 Scrapy 高级功能

文章目录1. 前言2. Downloader 中间件3. Spider 中间件4. 扩展5. 核心 API6. 信号7. Item exporters8. 参考文献1. 前言2. Downloader 中间件3. Spider 中间件4. 扩展5. 核心 API6. 信号7. Item exporters8. 参考文献[1] [2] [3] [4] ...

2020-07-06 21:48:08 480

原创 初识 Scrapy

文章目录什么是Scrapy?scrapy BS 和 lxml爬取顺序需要解析的数据过大怎么办?部署 Scrapy 爬虫11创建Scrapy项目什么是Scrapy?Scrapy是一个应用框架,常用于爬取网站和抽取结构化数据。scrapy BS 和 lxmlBeautifulSoup 是解析 HTML 的库lxml 是一个解析 HTML 和 xml 的库scrapy 是爬虫应用框架爬取顺序默认的爬取顺序是DFS,因为默认使用栈来存放爬虫请求。需要解析的数据过大怎么办?在使用XPath选择器解

2020-07-03 16:32:27 294

原创 初识 Scrapy - Item Loader

文章目录使用Item Loader输入和输出处理器声明Item Loader声明 输入/输出处理器Item Loder 上下文嵌套LoaderScrapy并不是直接填充items,而是有自己的机制。items为爬取的数据提供容器,Item Loader为该容器提供了填充机制。使用Item Loaderfrom scrapy.loader import ItemLoaderfrom myproject.items import Productdef parse(self, response):

2020-07-03 16:30:31 241

原创 初识 Scrapy - Feed导出

文章目录序列化格式JSONJSON linesCSVXMLPickleMarshal存储本地文件系统FTPS3标准输出设置在实现scraper时,最经常需要的功能之一是能够正确地存储被抓取的数据,这通常意味着用被抓取的数据(通常称为“导出提要”)生成一个“导出文件”,供其他系统使用。Scrapy通过Feed导出提供了这样一个开箱即用的功能。允许你根据抓取的items使用多种序列化格式和存储后端生成feeds。序列化格式JSONJSON linesCSVXMLPickleMarshal存储

2020-07-03 16:22:45 616

原创 初识 Scrapy - Item Pipeline

文章目录自定义item pipeline示例验证item 字段和删除不合格的item将item写入json文件将item存入MongoDB重复过滤器激活item pipeline组件在一个item被一个spider抓取之后,它被发送到Item Pipeline,该管道通过几个按顺序执行的组件来处理它。每一item pipeline组件都是Python的类。它们接收item,并对它执行操作,还决定该项目是否应继续通过管道,或者是否应删除并不再处理。item pipeline的典型用途有:清理HTML

2020-07-03 16:21:47 258

原创 初识 IO多路复用

文章目录下面的例子来自知乎。 I/O多路复用技术(multiplexing)是什么?下面举一个例子,模拟一个tcp服务器处理30个客户socket。假设你是一个老师,让30个学生解答一道题目,然后检查学生做的是否正确,你有下面几个选择:(a)第一种选择:按顺序逐个检查,先检查A,然后是B,之后是C、D。。。这中间如果有一个学生卡主,全班都会被耽误。这种模式就好比,你用循环挨个处理socket,根本不具有并发能力。(b)第二种选择:你创建30个分身,每个分身检查一个学生的答案是否正确。 这种类似

2020-07-02 12:47:44 153

转载 分布式与集群的区别是什么?

本文转自 分布式与集群的区别是什么?大闲人柴毛毛 下面就正经解释下三种结构的区别吧~单机结构我想大家最最最熟悉的就是单机结构,一个系统业务量很小的时候所有的代码都放在一个项目中就好了,然后这个项目部署在一台服务器上就好了。整个项目所有的服务都由这台服务器提供。这就是单机结构。那么,单机结构有啥缺点呢?我想缺点是显而易见的,单机的处理能力毕竟是有限的,当你的业务增长到一定程度的时候,单机的硬件资源将无法满足你的业务需求。此时便出现了集群模式,往下接着看。集群结构集群模式在程序猿界有各种装逼解释,

2020-07-01 22:38:38 183 2

转载 Redis相关的一些问题

文章目录1. 缓存穿透2. 缓存雪崩3. 缓存击穿4. 缓存并发竞争(并发set)5. 如果master还未将AOF同步给slave就挂了,此时failover将此slave提升为新的master,那么如何保证最终一致性?1. 缓存穿透在高并发下,查询一个不存在的值时,缓存不会被命中,导致大量请求直接落到数据库上,如活动系统里面查询一个不存在的活动。解决方案:布隆过滤器。首先也是对所有可能查询的参数以hash形式存储,当用户想要查询的时候,使用布隆过滤器发现不在集合中,就直接丢弃,不再对持久层查询

2020-07-01 18:05:03 108

转载 记一记 TCP的三握四挥

文章目录转自如下两篇文章:TCP的三次握手与四次挥手理解及面试题(很全面)面试官,不要再问我三次握手和四次挥手每次看了TCP的三次握手和四次挥手,总是过一段时间就忘记了,写此文加深理解和记忆。如下图所示,TCP首部中有很多信息,在这里我们需要关注的是 序号,确认号,ACK, SYN, FIN等标志位。ISN(Initial Sequence Number)ACK(确认字符,Acknowledge Character):占1位,仅当ACK=1时,确认号字段才有效。ACK=0时,确认号无效。

2020-06-30 13:22:01 153

原创 初识 将Redis作为LRU缓存

文章目录1. Maxmemory配置2. 淘汰策略3. 淘汰策略如何工作4. 近似LRU算法5. LFU模式6. 参考文献当 Redis用作缓存时,通常很容易在添加新数据的同时移除旧数据。 此行为在开发者社区中是众所周知的,因为它是memcached system 的默认行为。LRU(Least Recently Used,最近最少使用),将最近最少使用的数据删除掉。从 Redis 4.0 开始引入了LFU(Least Frequntly Used,最不常用)淘汰策略。1. Maxmemory配置

2020-06-29 20:00:21 189

原创 初识 Redis pipelining

使用Redis pipelining可以加速Redis查询1. 请求/响应协议和RTTRedis是一个使用client-server模型和请求/响应协议的TCP服务器。过程如下:client 发送一个请求给server,通常以阻塞的方式从套接字中读取server的响应。server 处理命令并将响应发送回client。Client: INCR XServer: 1Client: INCR XServer: 2Client: INCR XServer: 3Client: INCR

2020-06-29 18:09:40 325

原创 通过FAQ简单了解Redis

文章目录1. Redis与其他的键值对存储有什么不同?2. Redis的内存占用量是多少?3. 我无法拥有比内存更大的数据集。 有什么计划改变这一点吗?4. 将Redis与持久化数据库一起使用是一个好主意吗?5. 有什么办法可以降低Redis的内存使用量?6. 如果Redis内存不足,会发生什么?7. Redis磁盘快照是原子操作吗?8. Redis是单线程的。 如何利用多个CPU /内核?9. 一个Redis实例可以容纳的最大密钥数是多少? 哈希,列表,集合,排序集合中元素的最大数量是多少?10. 为什么

2020-06-29 14:40:14 204 1

原创 Redis 实现分布式锁

文章目录1. 前言2. 实现3. 安全和活动保障为什么基于故障转移的实现还不够单个实例的正确实现Redlock算法1. 前言在许多情形中,不同的进程必须以 互斥 的方式对共享资源进行操作时,这时候分布式锁就非常有用了。本页面试图提供一种更规范的算法来实现Redis的分布式锁。 我们提出了一种称为Redlock的算法,该算法实现了DLM(分布式锁管理器),我们相信它比普通的单实例方法更安全。 我们希望社区能够对其进行分析,提供反馈,并将其用作实现或更复杂或替代设计的起点。2. 实现下面列出已经有的实

2020-06-28 16:50:36 172

原创 初识 Redis 数据分区

文章目录1. 前言1.1 什么是分区?1.2 为什么要用分区?2. 分区基础知识2.1 分区的不同实现2.2 分区的缺点2.3 数据存储还是缓存?2.4 预分片(presharding)3. Redis 分区的实现3.1 Redis 集群3.2 Twemproxy3.3 支持一致哈希的客户端4. 参考文献分区:如何在多个 Redis 实例之间拆分数据。1. 前言1.1 什么是分区?分区是将数据拆分给多个 Redis 实例的过程,因此每个实例将只包含键的一个子集。 本文档的第一部分将向您介绍分区的概念

2020-06-27 21:32:58 187

原创 初识Redis lua脚本

文章目录Lua脚本Lua和Redis数据类型之间的转换Lua脚本的原子性错误处理带宽和EVALSHA脚本命令参看文献Lua脚本Lua是一个高效的轻量级脚本语言,用标准C语言编写并以源代码形式开放, 其设计目的是为了嵌入应用程序中,从而为应用程序提供灵活的扩展和定制功能。Lua 脚本功能是 Reids 2.6 版本的最大亮点, 通过内嵌对Lua环境的支持, Redis 解决了长久以来不能高效地处理 CAS (check-and-set) 命令的缺点, 并且可以通过组合使用多个命令, 轻松实现以前很难实现

2020-06-27 15:21:05 219

原创 Redis事务

目录1. 用法2. 事务中的错误3. 为什么Redis不支持回滚?4. 丢弃事务队列5. 使用 check-and-set 实现乐观锁6. WATCH的原理是啥?7. 使用 WATCH 实现 ZPOP命令8. Redis脚本和事务参考文献相关命令:DISCARD: 清空事务队列EXEC:顺序执行事务队列中的所有命令MULTI:进入事务WATCH:监控某/某些键UNWATCH:解决某/某些/所有键的监控MULTI, EXEC, DISCARD 和 WATCH是Redis事务的基础。它允许我们一步

2020-06-27 14:10:59 120

原创 Redis 的发布/订阅(pub/sub)模式

文章目录

2020-06-27 00:38:01 497

原创 Redis简单了解

文章目录1. redis简介2. 安装redis3. 使用redis4. 总结5. 参考文件1. redis简介2. 安装redis3. 使用redis4. 总结5. 参考文件[1]

2020-06-26 23:32:19 661

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除