<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[sinat_37529938的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/sinat_37529938</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; sinat_37529938]]></copyright><item><title><![CDATA[Laravel + Redis 实现消息队列]]></title><link>https://blog.youkuaiyun.com/sinat_37529938/article/details/114943064</link><guid>https://blog.youkuaiyun.com/sinat_37529938/article/details/114943064</guid><author>sinat_37529938</author><pubDate>Wed, 17 Mar 2021 18:36:17 +0800</pubDate><description><![CDATA[完整的消息队列由消息、队列、处理程序组成。
基本的流程就是由生产者（业务代码）将数据推送到队列中（此处使用的是Redis），然后由消费者（处理程序）从队列中取出数据进行加工处理。
消息队列主要解决异步处理、应用间耦合，流量削锋等问题，实现高性能，高可用，可伸缩和最终一致性架构。例如处理需要异步处理的比较耗时操作（邮件发送、文件上传下载），或者高并发业务（秒杀、消息推送）。
下面列举了一个例子，可以让你更好的理解消息队列是怎么样实现的？
本例是实现添加视频播放数的消息队列。

ps：喜欢的朋友可以关注公众号：]]></description><category></category></item><item><title><![CDATA[Laravel的HTTP响应Response]]></title><link>https://blog.youkuaiyun.com/sinat_37529938/article/details/114896887</link><guid>https://blog.youkuaiyun.com/sinat_37529938/article/details/114896887</guid><author>sinat_37529938</author><pubDate>Tue, 16 Mar 2021 19:44:53 +0800</pubDate><description><![CDATA[PS：喜欢的朋友可以关注公众号：苏小怪的梦呓
前几天分析了 Laravel 框架的相关内容：

Laravel的Request请求类分析
Laravel基于Composer实现自动加载原理分析
Laravel的中间件原理
Laravel的生命周期

今天我们来看看 Laravel中是怎么处理 HTTP 响应的，也就是关于 Response 的代码分析。
找到返回 Response 的代码块
入口文件 public/index.php
首先进入 Laravel 框架的入口文件中可以看到 handle函数中 返]]></description><category></category></item><item><title><![CDATA[Laravel的中间件原理]]></title><link>https://blog.youkuaiyun.com/sinat_37529938/article/details/114269616</link><guid>https://blog.youkuaiyun.com/sinat_37529938/article/details/114269616</guid><author>sinat_37529938</author><pubDate>Mon, 01 Mar 2021 19:16:21 +0800</pubDate><description><![CDATA[在上一篇文章中介绍过 Laravel 的生命周期，这也算是对Laravel 框架入门的一些了解，最近几天也继续探究了下 Laravel 的中间件，出于好奇于是通过查看源码和阅读几篇深度好文，也是对 Laravel 的中间件有了深刻的印象，本篇文章比较长建议结合 IDE 参照源码进行理解。
PS：喜欢的朋友可以关注公众号：苏小怪的梦呓
目录


什么是中间件


创建中间件


array_reduce 函数


中间件源码分析



什么是中间件
中间件在很多框架中有所应用，提供了一种机制方便过滤进入 HT]]></description><category></category></item><item><title><![CDATA[Laravel的生命周期]]></title><link>https://blog.youkuaiyun.com/sinat_37529938/article/details/114100341</link><guid>https://blog.youkuaiyun.com/sinat_37529938/article/details/114100341</guid><author>sinat_37529938</author><pubDate>Thu, 25 Feb 2021 19:01:09 +0800</pubDate><description><![CDATA[目录


简介


一、Composer 自动加载项目依赖


二、创建应用实例


创建容器


绑定内核
HTTP 内核类
Console 内核
绑定异常处理




三、接收请求并响应

解析内核
处理 HTTP 请求
发送响应



四、终止应用程序


五、总结


References


Laravel的生命周期开始于 public/index.php，结束于 public/index.php。
客户端的所有请求都经由Web服务器引导到这个文件中。
以下是public/index.php 文件]]></description><category></category></item><item><title><![CDATA[Hexo的常用命令]]></title><link>https://blog.youkuaiyun.com/sinat_37529938/article/details/111782829</link><guid>https://blog.youkuaiyun.com/sinat_37529938/article/details/111782829</guid><author>sinat_37529938</author><pubDate>Sun, 27 Dec 2020 12:41:43 +0800</pubDate><description><![CDATA[Hexo 常见命令
hexo s
$ hexo s

启动服务器，用于预览主题

hexo s 是 hexo server 的缩写，命令效果一致；
预览的同时可以修改文章内容或者主题的代码，保存后刷新即可
对 Hexo 根目录 _config.yml 的修改，需要重启本地服务器后才能预览效果。


hexo clean
$ hexo clean

清楚缓存文件db.json和已经生成的静态文件public

网站显示异常时可以试试该命令

hexo g
$ hexo g

生成网站的静态文件到默认的设置文件]]></description><category></category></item><item><title><![CDATA[Nginx上安装阿里云免费证书]]></title><link>https://blog.youkuaiyun.com/sinat_37529938/article/details/111569253</link><guid>https://blog.youkuaiyun.com/sinat_37529938/article/details/111569253</guid><author>sinat_37529938</author><pubDate>Tue, 22 Dec 2020 23:09:30 +0800</pubDate><description><![CDATA[最近几天捣鼓了下个人网站，想着给自己的网站也整个https，所以就有了这篇文章，以下是我的阿里云服务器Nginx下安装阿里免费证书的一些操作：

1、购买免费证书

2、Centos8 上安装Nginx

3、Nginx上配置ssl



（1）、登录阿里云控制台，搜索SSL，找到SSL证书（应用安全），注意阿里控制台可能样式上会有些改动，但基本的一些功能大致没怎么变化。





（2）、进入SSL证书（应用安全），点击购买证书，选择单个域名，接着的步骤如下图所示：









（3）、购...]]></description><category></category></item><item><title><![CDATA[Hexo的Icarus博客中添加评论功能]]></title><link>https://blog.youkuaiyun.com/sinat_37529938/article/details/111484179</link><guid>https://blog.youkuaiyun.com/sinat_37529938/article/details/111484179</guid><author>sinat_37529938</author><pubDate>Mon, 21 Dec 2020 18:48:10 +0800</pubDate><description><![CDATA[title: Hexo的Icarus博客中添加评论功能
date: 2020-12-06 12:16:12
tags:

Hexo
categories: 建站教程

我的博客使用的是icarus模板，自带的配置中设置有Disqus相关配置介绍，所以本篇文章介绍的是关于Disqus的安装。
1、打开Disqus ，注册账号并登录，然后点击我想要将Disqus安装到我的站点[I want install Disqus on my site]来创建新的评论服务

2、在创建新站点页面中填写“网站名称”(Webs]]></description><category></category></item><item><title><![CDATA[【Python爬虫】xpath数据解析]]></title><link>https://blog.youkuaiyun.com/sinat_37529938/article/details/110494732</link><guid>https://blog.youkuaiyun.com/sinat_37529938/article/details/110494732</guid><author>sinat_37529938</author><pubDate>Wed, 02 Dec 2020 18:44:35 +0800</pubDate><description><![CDATA[最近学习了xpath相关的知识，以下是学习过程中记录的笔记，喜欢的朋友可以关注公众号：苏小怪的梦呓

一、简介



1、xpath属于xml/html解析数据的一种方式， 基于元素（Element）的树形结构(Node &gt; Element)。选择某一元素时，根据元素的路径选择，如 /html/head/title获取&lt;title&gt;标签。



2、安装&amp;使用



使用lxml解析

安装：pip install lxml

导入库：from lxml import etr...]]></description><category></category></item><item><title><![CDATA[【Python爬虫】urllib的基本介绍]]></title><link>https://blog.youkuaiyun.com/sinat_37529938/article/details/110395625</link><guid>https://blog.youkuaiyun.com/sinat_37529938/article/details/110395625</guid><author>sinat_37529938</author><pubDate>Mon, 30 Nov 2020 19:11:54 +0800</pubDate><description><![CDATA[一、什么是urllib?

urllib 是 Python内置的HTTP请求库

官方文档地址： https://docs.python.org/3/library/urllib.html



二、相关模块

urllib.request 请求模块

urllib.error 异常处理模块，包含urllib.request抛出的异常

urllib.parse url解析模块

urllib.robotparser robots.txt解析模块



三、【重点】核心的...]]></description><category></category></item><item><title><![CDATA[【资料篇】关于图片类资料]]></title><link>https://blog.youkuaiyun.com/sinat_37529938/article/details/110357174</link><guid>https://blog.youkuaiyun.com/sinat_37529938/article/details/110357174</guid><author>sinat_37529938</author><pubDate>Sun, 29 Nov 2020 23:09:36 +0800</pubDate><description><![CDATA[生活中常常会用到一些图片，但是又怕侵权，或者是需要对某些图片进行处理等，所以希望以下分享能够帮到大家。

喜欢的朋友可以关注微信公众号：苏小怪的梦呓

一、图片压缩

https://tinypng.com/

https://compressor.io/compress（gif,gpeg,png,svg）

https://kraken.io/web-interface (支持zip 不同格式进行压缩)

http://optimizilla.com/ （批量上传和批量压缩图片，一次可以上传20张图片；）]]></description><category></category></item><item><title><![CDATA[Windows安装MySQL]]></title><link>https://blog.youkuaiyun.com/sinat_37529938/article/details/109308064</link><guid>https://blog.youkuaiyun.com/sinat_37529938/article/details/109308064</guid><author>sinat_37529938</author><pubDate>Tue, 27 Oct 2020 11:54:43 +0800</pubDate><description><![CDATA[1、下载MySQL安装包: https://dev.mysql.com/downloads/mysql/





2、解压安装包，以下是我存放的位置：



3、配置MySQL的环境：
变量名：MYSQL_HOME
变量值：D:\mysoft\mysql

4、用管理员身份打开命令行：

进入 D:\mysoft\mysql\mysql-8.0.22-winx64\bin
在bin的同级目录中生成data目录，执行命令：mysqld --initialize-insecure --user=mysql

]]></description><category></category></item><item><title><![CDATA[小程序 [“subpackages“][4][“root“] 字段需为 目录]]></title><link>https://blog.youkuaiyun.com/sinat_37529938/article/details/109218896</link><guid>https://blog.youkuaiyun.com/sinat_37529938/article/details/109218896</guid><author>sinat_37529938</author><pubDate>Thu, 22 Oct 2020 11:43:38 +0800</pubDate><description><![CDATA[测试时可以运行正常，但是上传代码时提示以下错误。



以上问题很可能是开发者工具的bug ，所以重新打开开发者工具后，又可以运行了！
]]></description><category></category></item><item><title><![CDATA[阿里云服务器CentOS7安装python3、pip3、node、npm]]></title><link>https://blog.youkuaiyun.com/sinat_37529938/article/details/108577791</link><guid>https://blog.youkuaiyun.com/sinat_37529938/article/details/108577791</guid><author>sinat_37529938</author><pubDate>Mon, 14 Sep 2020 14:16:55 +0800</pubDate><description><![CDATA[一、安装Python3

1、安装依赖库


yum -y install wget gcc zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gdbm-devel db4-devel libpcap-devel xz-devel libffi-devel

由于运行以上命令出现：Error: Unable to find a match: db4-devel libpcap-dev]]></description><category></category></item><item><title><![CDATA[pip3更新：WARNING: You are using pip version 19.2.3, however version 20.0.2 is available.]]></title><link>https://blog.youkuaiyun.com/sinat_37529938/article/details/105045511</link><guid>https://blog.youkuaiyun.com/sinat_37529938/article/details/105045511</guid><author>sinat_37529938</author><pubDate>Mon, 23 Mar 2020 11:57:30 +0800</pubDate><description><![CDATA[按照提示输入命令：

python -m pip install –upgrade pip

如果不行再输入：
python -m pip install -U pip
]]></description><category></category></item><item><title><![CDATA[Xshell设置UTF-8格式编码]]></title><link>https://blog.youkuaiyun.com/sinat_37529938/article/details/103854708</link><guid>https://blog.youkuaiyun.com/sinat_37529938/article/details/103854708</guid><author>sinat_37529938</author><pubDate>Mon, 06 Jan 2020 11:48:44 +0800</pubDate><description><![CDATA[进入 文件 &gt; 属性 &gt; 终端 选择编码为UTF-8
]]></description><category></category></item><item><title><![CDATA[微信H5背景音乐自动播放的问题]]></title><link>https://blog.youkuaiyun.com/sinat_37529938/article/details/103854136</link><guid>https://blog.youkuaiyun.com/sinat_37529938/article/details/103854136</guid><author>sinat_37529938</author><pubDate>Mon, 06 Jan 2020 11:26:42 +0800</pubDate><description><![CDATA[话不多说，直接上代码吧！
&lt;audio loop src="./dist/images/capo.mp3" id="audio" autoplay preload="auto"&gt;该浏览器不支持audio属性&lt;/audio&gt;

&lt;script type="text/javascript"&gt;
  // 音乐自动播放
  $(document).ready(...]]></description><category></category></item><item><title><![CDATA[GitHub 拉取远程仓库到本地错误：The authenticity of host 'github.com (13.229.188.59)' can't be established.]]></title><link>https://blog.youkuaiyun.com/sinat_37529938/article/details/103655238</link><guid>https://blog.youkuaiyun.com/sinat_37529938/article/details/103655238</guid><author>sinat_37529938</author><pubDate>Sun, 22 Dec 2019 17:58:59 +0800</pubDate><description><![CDATA[1.在 github 上创建了个人仓库 通过 git 同步到本地时发生了以下错误：



原因是连接 Git 时使用的是 SSH 进行连接，因此第一次连接时需要验证 GitHub 服务器上的 Key，这时需要我们在本地生成 Key 并配置到 GitHub 服务器中。

2. 使用以下命令

2.1 ls -al ~/.ssh



2.2 ssh-keygen -t rsa -C "git...]]></description><category></category></item><item><title><![CDATA[PHP面试题：网站安全相关]]></title><link>https://blog.youkuaiyun.com/sinat_37529938/article/details/94738631</link><guid>https://blog.youkuaiyun.com/sinat_37529938/article/details/94738631</guid><author>sinat_37529938</author><pubDate>Fri, 05 Jul 2019 16:02:01 +0800</pubDate><description><![CDATA[**MySQL数据库作发布系统的存储，一天五万条以上的增量，预计运维三年,怎么优化？**

a. 设计良好的数据库结构，允许部分数据冗余，尽量避免join查询，提高效率。b. 选择合适的表字段数据类型和存储引擎，适当的添加索引。c. mysql库主从读写分离。d. 找规律分表，减少单表中的数据量提高查询速度。e。添加缓存机制，比如memcached，apc等。f. 不经常改动的页面，生成静态页面。...]]></description><category></category></item><item><title><![CDATA[什么是 openAPI ?]]></title><link>https://blog.youkuaiyun.com/sinat_37529938/article/details/89098454</link><guid>https://blog.youkuaiyun.com/sinat_37529938/article/details/89098454</guid><author>sinat_37529938</author><pubDate>Mon, 08 Apr 2019 17:40:30 +0800</pubDate><description><![CDATA[什么是openapi?
在互联网时代，把网站的服务封装成一系列计算机易识别的数据接口开放出去，供第三方开发者使用，这种行为就叫做开放网站的API，与之对应的，所开放的API就被称作openAPI。

举个例子：
现在的互联网充满了一个又一个信息孤岛和大量的碎片化的数据，用户想知道一些资讯，必须在不同的网站上跑来跑去.比如看电影，首先去google map查看周围的电影院，然后去大众点评网查看对这...]]></description><category></category></item><item><title><![CDATA[常见HTTP状态码大全]]></title><link>https://blog.youkuaiyun.com/sinat_37529938/article/details/88847476</link><guid>https://blog.youkuaiyun.com/sinat_37529938/article/details/88847476</guid><author>sinat_37529938</author><pubDate>Wed, 27 Mar 2019 16:00:20 +0800</pubDate><description><![CDATA[常见HTTP状态码大全
1xx（临时响应） 

	表示临时响应并需要请求者继续执行操作的状态代码。 
	代码 说明 
	
	100 （继续） 请求者应当继续提出请求。 服务器返回此代码表示已收到请求的第一部分，正在等待其余部分。 
	
   	101 （切换协议） 请求者已要求服务器切换协议，服务器已确认并准备切换。 
  
2xx （成功） 

	表示成功处理了请求的状态代码。 代码 说明 
	...]]></description><category></category></item></channel></rss>