<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[qq_53663722的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/qq_53663722</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; qq_53663722]]></copyright><item><title><![CDATA[Python接口安全全攻略：从HTTP到OAuth2.0]]></title><link>https://blog.youkuaiyun.com/qq_53663722/article/details/155748715</link><guid>https://blog.youkuaiyun.com/qq_53663722/article/details/155748715</guid><author>qq_53663722</author><pubDate>Wed, 10 Dec 2025 17:33:13 +0800</pubDate><description><![CDATA[作为新手小白，刚接触接口调用时很容易被一堆专业术语搞晕：HTTP、Token、OAuth2.0、JWT、RSA256…… 为啥调用不同接口要用不同的安全方式？这些知识点之间到底啥关系？为啥有的接口只需要拼个参数，有的却要搞一堆签名、令牌？本文专门为新手设计，用 “大白话 + 生活案例 + 表格对比” 的方式，从最基础的 HTTP 协议讲起，逐层拆解所有接口安全相关知识点，重点讲清知识点的定义、具体作用、相互区别、关联关系。]]></description><category></category></item><item><title><![CDATA[Python GIL机制详解：性能瓶颈与优化策略]]></title><link>https://blog.youkuaiyun.com/qq_53663722/article/details/155597838</link><guid>https://blog.youkuaiyun.com/qq_53663722/article/details/155597838</guid><author>qq_53663722</author><pubDate>Fri, 05 Dec 2025 15:07:40 +0800</pubDate><description><![CDATA[GIL（全局解释器锁）是CPython解释器的核心机制，通过互斥锁确保同一时间只有一个线程执行Python字节码。它解决了引用计数和垃圾回收的线程安全问题，但限制了多核CPU的并行能力。GIL会在I/O操作和C扩展执行时释放，使得I/O密集型任务仍可从多线程获益，而CPU密集型任务需改用多进程或C扩展。GIL不影响异步编程(asyncio)，与多进程互补。理解GIL特性有助于针对不同任务类型选择合适的并发方案：I/O密集型用多线程/异步，CPU密集型用多进程/C扩展。]]></description><category></category></item><item><title><![CDATA[JS声明变量和等于号“=”]]></title><link>https://blog.youkuaiyun.com/qq_53663722/article/details/145279960</link><guid>https://blog.youkuaiyun.com/qq_53663722/article/details/145279960</guid><author>qq_53663722</author><pubDate>Tue, 21 Jan 2025 15:07:16 +0800</pubDate><description><![CDATA[使用场景建议var：在旧代码中可能会经常看到，但在新代码中，除非有特殊的作用域需求，否则尽量避免使用，因为它的函数作用域和变量提升可能会导致意外的行为。let：当你需要一个块级作用域的变量，并且该变量的值会改变时，使用let。例如在for循环中使用let声明迭代变量，可以避免闭包问题。const：当你需要声明一个常量，其值不会改变时使用const。对于对象和数组，虽然可以修改内部属性或元素，但不能重新赋值，适合存储一些不应该被整体替换的对象或数组。]]></description><category></category></item><item><title><![CDATA[PyCharm使用GitLab，Git常用命令，Git提交规范]]></title><link>https://blog.youkuaiyun.com/qq_53663722/article/details/134693127</link><guid>https://blog.youkuaiyun.com/qq_53663722/article/details/134693127</guid><author>qq_53663722</author><pubDate>Wed, 29 Nov 2023 18:04:10 +0800</pubDate><description><![CDATA[git reset 或者git reset .   (git add后撤销：“file”是撤销某个文件，“.”是撤销暂存区的全部文件)git branch -m branch_0.1 branch_1.0 将branch_0.1重命名为branch_1.0。git commit -a -a是代表add，把所有的change加到git index里然后再commit。git diff --cached 或 $ git diff --staged 查看尚未提交的更新。]]></description><category></category></item><item><title><![CDATA[数据同步工具Sqoop，DataX，Maxwell区别]]></title><link>https://blog.youkuaiyun.com/qq_53663722/article/details/132628895</link><guid>https://blog.youkuaiyun.com/qq_53663722/article/details/132628895</guid><author>qq_53663722</author><pubDate>Wed, 25 Oct 2023 16:25:29 +0800</pubDate><description><![CDATA[这些工具之间的主要区别在于它们的应用场景和支持的数据源和目的地类型。Sqoop主要用于Hadoop与传统关系型数据库之间的数据传输，DataX是一个通用的数据传输工具，支持多种数据源和目的地的数据传输，而Maxwell主要用于实时捕获和传输MySQL数据库的变更操作。]]></description><category></category></item><item><title><![CDATA[Spark启动报JAVA_HOME is not set]]></title><link>https://blog.youkuaiyun.com/qq_53663722/article/details/132982275</link><guid>https://blog.youkuaiyun.com/qq_53663722/article/details/132982275</guid><author>qq_53663722</author><pubDate>Mon, 18 Sep 2023 15:52:42 +0800</pubDate><description><![CDATA[报错如下：


解决：

vim/opt/software/spark/spark-3.0.0/sbin/spark-config.sh


添加java环境变量

#JAVA_HOME
export JAVA_HOME=/usr/local/java/jdk1.8
export PATH=$JAVA_HOME/bin:$PATH




重新启动spark

cd /opt/software/spark/spark-3.0.0/sbin

./start-all.sh



]]></description><category></category></item><item><title><![CDATA[DBeaver连接Hive建表时报错：Storage schema reading not supported]]></title><link>https://blog.youkuaiyun.com/qq_53663722/article/details/132887666</link><guid>https://blog.youkuaiyun.com/qq_53663722/article/details/132887666</guid><author>qq_53663722</author><pubDate>Thu, 14 Sep 2023 17:52:18 +0800</pubDate><description><![CDATA[重新启动hiverserver2，重新连接DBeaver。]]></description><category></category></item><item><title><![CDATA[Hive3.1.2 on Spark 3.0.0报错]]></title><link>https://blog.youkuaiyun.com/qq_53663722/article/details/132863991</link><guid>https://blog.youkuaiyun.com/qq_53663722/article/details/132863991</guid><author>qq_53663722</author><pubDate>Wed, 13 Sep 2023 20:47:58 +0800</pubDate><description><![CDATA[解决：在/opt/software/hadoop/hadoop-3.1.3/etc/hadoop目录下创建resource-types.xml文件。1、到spark的/opt/software/spark/spark-3.0.0/conf目录下修改配置文件。在/opt/software/spark/spark-3.0.0/sbin路径下启动spark。hive on spark环境下在hive中创建表成功，但是执行插入数据语句报错。3、在hive/conf/hive-site.xml中增加。]]></description><category></category></item><item><title><![CDATA[namenode重新格式化、hive重新初始化]]></title><link>https://blog.youkuaiyun.com/qq_53663722/article/details/132826776</link><guid>https://blog.youkuaiyun.com/qq_53663722/article/details/132826776</guid><author>qq_53663722</author><pubDate>Tue, 12 Sep 2023 11:07:52 +0800</pubDate><description><![CDATA[需要对namenode进行重新格式化时，需要把每一台服务器/opt/software/hadoop/hdfs下面的目录：name/data/tmp/journalnode都清空。启动zookeeper。]]></description><category></category></item><item><title><![CDATA[启动ZKFC时报错ERROR org.apache.hadoop.ha.ZKFailoverController: Unable to start failover controller. Paren]]></title><link>https://blog.youkuaiyun.com/qq_53663722/article/details/132609258</link><guid>https://blog.youkuaiyun.com/qq_53663722/article/details/132609258</guid><author>qq_53663722</author><pubDate>Thu, 31 Aug 2023 18:41:55 +0800</pubDate><description><![CDATA[执行以下命令之前需要先把所有机器的zookeeper启动起来。按照报错日志提示在该机器上执行命令，]]></description><category></category></item><item><title><![CDATA[Maxwell启动历史数据全量maxwell-bootstrap报错No appropriate protocol (protocol is disabled or cipher suites are]]></title><link>https://blog.youkuaiyun.com/qq_53663722/article/details/132591799</link><guid>https://blog.youkuaiyun.com/qq_53663722/article/details/132591799</guid><author>qq_53663722</author><pubDate>Wed, 30 Aug 2023 22:45:02 +0800</pubDate><description><![CDATA[删除jdk.tls.disabledAlgorithms后面的TLSv1和TLSv1.1，然后保存退出。重新启动maxwell-bootstrap之前需要先启动maxwell，不然会报数据阻塞，如下所示。启动maxwell-bootstrap。]]></description><category></category></item><item><title><![CDATA[Scala]]></title><link>https://blog.youkuaiyun.com/qq_53663722/article/details/131704084</link><guid>https://blog.youkuaiyun.com/qq_53663722/article/details/131704084</guid><author>qq_53663722</author><pubDate>Mon, 28 Aug 2023 11:17:15 +0800</pubDate><description><![CDATA[Scala基础知识点，Scala和Java的区别]]></description><category></category></item><item><title><![CDATA[flume]]></title><link>https://blog.youkuaiyun.com/qq_53663722/article/details/132523674</link><guid>https://blog.youkuaiyun.com/qq_53663722/article/details/132523674</guid><author>qq_53663722</author><pubDate>Sun, 27 Aug 2023 15:05:53 +0800</pubDate><description><![CDATA[Flume 是一个可靠、可扩展且分布式的日志收集和聚合系统。它被广泛用于大规模数据流的采集、传输和存储。Flume 提供了一种简单的方式来收集和移动大量的日志数据，使其能够方便地进入数据处理和分析系统。]]></description><category></category></item><item><title><![CDATA[启动historyserver日志服务的时候报错UnknownHostException: mycluster]]></title><link>https://blog.youkuaiyun.com/qq_53663722/article/details/132457398</link><guid>https://blog.youkuaiyun.com/qq_53663722/article/details/132457398</guid><author>qq_53663722</author><pubDate>Wed, 23 Aug 2023 18:06:36 +0800</pubDate><description><![CDATA[或者：mapred --daemon start historyserver。在配置好历史服务以后，检查了几遍都没错，就是一直报错。原因：我开始用的启动命令是。后面换一种命令就成功了。]]></description><category></category></item><item><title><![CDATA[Ubuntu搭建Hadoop3.X分布式和高可用集群，一步步深入]]></title><link>https://blog.youkuaiyun.com/qq_53663722/article/details/132362997</link><guid>https://blog.youkuaiyun.com/qq_53663722/article/details/132362997</guid><author>qq_53663722</author><pubDate>Tue, 22 Aug 2023 19:00:58 +0800</pubDate><description><![CDATA[本文介绍了在Ubuntu操作系统上搭建Hadoop 3.x分布式和高可用环境的步骤。首先解释了Hadoop 3.x的架构和核心组件。然后，详细讲解了如何配置Ubuntu网络和主机名，安装Java和SSH，并生成SSH密钥。接下来，引导用户通过安装和配置Hadoop的各个组件（如HDFS、YARN和MapReduce）来搭建分布式集群。通过本文的指导，读者将能够快速地在Ubuntu上搭建Hadoop 3.x分布式和高可用环境。]]></description><category></category></item><item><title><![CDATA[Ubuntu安装MySQL]]></title><link>https://blog.youkuaiyun.com/qq_53663722/article/details/132431363</link><guid>https://blog.youkuaiyun.com/qq_53663722/article/details/132431363</guid><author>qq_53663722</author><pubDate>Tue, 22 Aug 2023 18:41:16 +0800</pubDate><description><![CDATA[CREATE USER '新用户名'@'localhost' IDENTIFIED WITH mysql_native_password BY '新密码';ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '新密码';1. 在安装MySQL之前，应该始终确保apt-get包管理器是最新的版本。安装过程中会提示设置root用户的密码，请记住这个密码，因为会在之后使用它来登录到MySQL服务器。]]></description><category></category></item><item><title><![CDATA[安装zookeeper启动时报错zkServer.sh: command not found]]></title><link>https://blog.youkuaiyun.com/qq_53663722/article/details/132413024</link><guid>https://blog.youkuaiyun.com/qq_53663722/article/details/132413024</guid><author>qq_53663722</author><pubDate>Mon, 21 Aug 2023 17:29:58 +0800</pubDate><description><![CDATA[我是四台服务器，第一台zookeeper配置好，环境变量配置好然后使用scp命令分发到其它三台的，然后启动时发现第一台zkServer.sh: command not found，而其它三台正常启动。使用第一个命令发现没有，然后四台都使用第二个命令发现就第一台没有zookeeper的环境变量，但是我查看环境变量里面是存在的，不知为什么，反正是回车换了一行然后保存退出的。3. 路径错误：如果通过上述命令找到了`zkServer.sh`，请确保在运行命令时使用了正确的路径。]]></description><category></category></item><item><title><![CDATA[Scrapy爬虫框架]]></title><link>https://blog.youkuaiyun.com/qq_53663722/article/details/132037727</link><guid>https://blog.youkuaiyun.com/qq_53663722/article/details/132037727</guid><author>qq_53663722</author><pubDate>Wed, 02 Aug 2023 20:01:34 +0800</pubDate><description><![CDATA[scrapy框架，爬取b站]]></description><category></category></item><item><title><![CDATA[Spark实现WordCount]]></title><link>https://blog.youkuaiyun.com/qq_53663722/article/details/131683168</link><guid>https://blog.youkuaiyun.com/qq_53663722/article/details/131683168</guid><author>qq_53663722</author><pubDate>Wed, 12 Jul 2023 15:47:13 +0800</pubDate><description><![CDATA[Spark实现WordCount]]></description><category></category></item></channel></rss>