<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[qq_43059674的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/qq_43059674</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; qq_43059674]]></copyright><item><title><![CDATA[nginx 配置 https协议]]></title><link>https://blog.youkuaiyun.com/qq_43059674/article/details/111502483</link><guid>https://blog.youkuaiyun.com/qq_43059674/article/details/111502483</guid><author>qq_43059674</author><pubDate>Sun, 17 Jan 2021 20:30:47 +0800</pubDate><description><![CDATA[获取https
这个就不过得 逼逼了，获取的方式有很多。通常可以从云服务提供商那搞到（阿里云、腾讯云…）。这个自行百度哈。这些第三方平台通常会给我们提供两个文件 xxx.crt、xxx.key
Nginx配置
1、首先将证书文件上传到服务器上
2、修改 nginx.cnf 配置文件
    server {
        listen 443;
        server_name  你的域名;
        ssl on;
        #配置证书的路径,要与你存放的位置对应，确保能访问到
   ]]></description><category></category></item><item><title><![CDATA[springboot 配置多数据源 ,动态切换时 Hikari  报错]]></title><link>https://blog.youkuaiyun.com/qq_43059674/article/details/112276351</link><guid>https://blog.youkuaiyun.com/qq_43059674/article/details/112276351</guid><author>qq_43059674</author><pubDate>Wed, 06 Jan 2021 15:33:14 +0800</pubDate><description><![CDATA[Bug
异常信息如下：
The configuration of the pool is sealed once started.  Use HikariConfigMXBean for runtime changes.

使用 spring boot 2.0 以上默认使用Hikari连接池，一旦连接池启动，就无法再修改HikariDataSource，所以刷新配置时连带数据源一起刷新，于是报错。
解决方式
解决方法： 在自定义的DataSource上加入注解@RefreshScope，或者使用spring]]></description><category></category></item><item><title><![CDATA[class com.qiniu.http.Client$1 cannot access its superclass okhttp3.EventListener]]></title><link>https://blog.youkuaiyun.com/qq_43059674/article/details/112005837</link><guid>https://blog.youkuaiyun.com/qq_43059674/article/details/112005837</guid><author>qq_43059674</author><pubDate>Thu, 31 Dec 2020 11:44:49 +0800</pubDate><description><![CDATA[七牛云 java SDK 报错：   class com.qiniu.http.Client$1 cannot access its superclass okhttp3.EventListener

pom.xml引入
         &lt;dependency&gt;
            &lt;groupId&gt;com.squareup.okhttp3&lt;/groupId&gt;
            &lt;artifactId&gt;okhttp&lt;/artifactId&g]]></description><category></category></item><item><title><![CDATA[解决 nginx部署vue刷新、访问路由页面404]]></title><link>https://blog.youkuaiyun.com/qq_43059674/article/details/110296807</link><guid>https://blog.youkuaiyun.com/qq_43059674/article/details/110296807</guid><author>qq_43059674</author><pubDate>Sat, 28 Nov 2020 23:50:43 +0800</pubDate><description><![CDATA[Bug
当使用nginx	部署vue项目的时候 当我们刷新页面的时候，或者访问路由配置页面的时候会直接404，这是因为通常我们做的vue项目属于单页面开发。所以只有index.html。解决这个bug也很简单。只需要将访问重定向到index.html这个页面。交由 index.html 去处理对应的路由跳转就好.
修改nginx配置
配置代码：
    server {
        listen   80; # 监听的端口 
        server_name  xx.xx.xxx.xx; # 处理]]></description><category></category></item><item><title><![CDATA[联表更新]]></title><link>https://blog.youkuaiyun.com/qq_43059674/article/details/108677305</link><guid>https://blog.youkuaiyun.com/qq_43059674/article/details/108677305</guid><author>qq_43059674</author><pubDate>Sat, 19 Sep 2020 10:12:12 +0800</pubDate><description><![CDATA[例： 这里我们需要将aaa表中code为空的去bbb表中找到对应的数据做修改
update  aaa a, bbb b  set a.code = b.code
where a.code is null and a.join_id = b.join_id;

删除可以参考： http://www.360doc.com/content/13/0914/10/10639625_314356876.shtml

...]]></description><category></category></item><item><title><![CDATA[MacOS安装 Homebrew]]></title><link>https://blog.youkuaiyun.com/qq_43059674/article/details/107838349</link><guid>https://blog.youkuaiyun.com/qq_43059674/article/details/107838349</guid><author>qq_43059674</author><pubDate>Thu, 06 Aug 2020 14:18:51 +0800</pubDate><description><![CDATA[运行脚步安装：
/bin/zsh -c "$(curl -fsSL https://gitee.com/cunkai/HomebrewCN/raw/master/Homebrew.sh)" 

常见的brew命令
brew search **  //查找某个软件包
brew list  //列出已经安装的软件的包
brew install ** //安装某个软件包,默认安装的是稳定版本
brew uninstall **//卸载某个软件的包
brew upgrade ** //更新某个软件包
brew in]]></description><category></category></item><item><title><![CDATA[解决vue双向数据绑定无法动态响应问题（深拷贝）]]></title><link>https://blog.youkuaiyun.com/qq_43059674/article/details/107519547</link><guid>https://blog.youkuaiyun.com/qq_43059674/article/details/107519547</guid><author>qq_43059674</author><pubDate>Wed, 22 Jul 2020 18:58:26 +0800</pubDate><description><![CDATA[下面这种情况vue有时候不能动态的去做响应：
this.skuData = [{name: 'zs',  age: 18, sex: 'man'}, {....}, ...]
var item = {name: 'ls',  age: 100, sex: 'worman'}]; 
this.skuData[0] =  item;

使用$set就能解决这个问题
this.skuData = [{name: 'zs',  age: 18, sex: 'man'}, {....}, ...]
var item ]]></description><category></category></item><item><title><![CDATA[JAP出现java.lang.StackOverflowError异常]]></title><link>https://blog.youkuaiyun.com/qq_43059674/article/details/106909774</link><guid>https://blog.youkuaiyun.com/qq_43059674/article/details/106909774</guid><author>qq_43059674</author><pubDate>Mon, 22 Jun 2020 21:09:01 +0800</pubDate><description><![CDATA[JAP出现java.lang.StackOverflowError异常
最终原因是因为toString相互调用的原因，导致出现了这种现象： o
@Entity
@Data
@EqualsAndHashCode(callSuper = true)
@Table(name = "xxx1_table")
public class XXX1Entity extends BaseEntity {
    private static final long serialVersionUID = -4489156326]]></description><category></category></item><item><title><![CDATA[关于java面试我的一些总结和经验]]></title><link>https://blog.youkuaiyun.com/qq_43059674/article/details/106321653</link><guid>https://blog.youkuaiyun.com/qq_43059674/article/details/106321653</guid><author>qq_43059674</author><pubDate>Sun, 24 May 2020 22:41:47 +0800</pubDate><description><![CDATA[前言
今年我打算是在长沙这边找份工作。所以年前就开始准备面试了，希望能拿到一份比较好的offer。因为疫情所以到3月份才开始面试，通常都是先在老家电话面。然后再来一次现场面试。当然也有公司有的公司也回电话面试完就直接给offer。面试的时候踩了很多坑，作了很多死。所以就有了这篇博客，希望或多或少能给大家当个反面教材。
确定目标
目标是非常重要的，有了目标才能有目的性的去准备，没有目标基本上就是没有效率的工作。
第一步就是心里要有B数 就是对自己的综合实力要有一个比较清晰的认知。要清楚自己几斤几两。	这里我就]]></description><category></category></item><item><title><![CDATA[python爬取数据 Unicode 编码转中文]]></title><link>https://blog.youkuaiyun.com/qq_43059674/article/details/103969402</link><guid>https://blog.youkuaiyun.com/qq_43059674/article/details/103969402</guid><author>qq_43059674</author><pubDate>Tue, 14 Jan 2020 10:53:52 +0800</pubDate><description><![CDATA[爬去数据的时候会有这种现象

解决方式
 str= str.text.encode("gb2312").decode('unicode_escape');


]]></description><category></category></item><item><title><![CDATA[Mysql内连接和外连接的区别]]></title><link>https://blog.youkuaiyun.com/qq_43059674/article/details/103915984</link><guid>https://blog.youkuaiyun.com/qq_43059674/article/details/103915984</guid><author>qq_43059674</author><pubDate>Thu, 09 Jan 2020 21:28:49 +0800</pubDate><description><![CDATA[SQL数据库的连接：内连接、和外连接（左外连接、右外连接、和全连接）
本次实验在MySQL数据库中进行，数据库初始表如下
order

order_item

一、内连接：结果仅包含符合连接条件的两表中的行。如下

二、外连接：结果包含符合条件的行，同时包含不符合条件的行（分为左外连接、右外连接和全外连接）
1、左外连接：左表全部行+右表匹配的行，如果左表中某行在右表中没有匹配的行，则显示NULL...]]></description><category></category></item><item><title><![CDATA[面试官：你是如何优化MySQL]]></title><link>https://blog.youkuaiyun.com/qq_43059674/article/details/103908285</link><guid>https://blog.youkuaiyun.com/qq_43059674/article/details/103908285</guid><author>qq_43059674</author><pubDate>Thu, 09 Jan 2020 18:41:39 +0800</pubDate><description><![CDATA[概述
为什么要优化：
应用的吞吐量一般出现在数据库处理速度上
随着应用的使用数据量不断增多，数据库处理压力主键增大
关系型数据库的数据存储在磁盘上，读写数据较慢（与内存数据库比较）
优化手段：

第一步是表字段的设计，考虑更优的存储计算
利用好MySQL自身提供的功能，如 存储引擎的选择、索引等
横向扩展：MySQL读写分离
SQL语句的优化（收效甚微）

字段设计

字段类型的选择，设计规范，范...]]></description><category></category></item><item><title><![CDATA[mySql索引详解]]></title><link>https://blog.youkuaiyun.com/qq_43059674/article/details/95298197</link><guid>https://blog.youkuaiyun.com/qq_43059674/article/details/95298197</guid><author>qq_43059674</author><pubDate>Thu, 09 Jan 2020 17:26:38 +0800</pubDate><description><![CDATA[MySQL索引使用的数据结构
BTree索引
MySQL的BTree索引使用的是B树中的B+Tree，但对于主要的两种存储引擎（MyISAM和InnoDB）的实现方式是不同的
哈希索引
哈希索引来说，底层的数据结构就是哈希表，因此在绝大多数需求为单条记录查询的时候，可以选择哈希索引，查询性能最快。其余大部分场景，建议选择BTree索引。
BTree索引在（MyISAM和InnoDB）的不同实现方式...]]></description><category></category></item><item><title><![CDATA[Mysql高性能优化规范建议]]></title><link>https://blog.youkuaiyun.com/qq_43059674/article/details/103842821</link><guid>https://blog.youkuaiyun.com/qq_43059674/article/details/103842821</guid><author>qq_43059674</author><pubDate>Sun, 05 Jan 2020 15:05:40 +0800</pubDate><description><![CDATA[数据库命令规范
1、所有数据库对象名称必须使用小写字母并用下划线分割
2、所有数据库对象名称禁止使用mysql保留关键字（如果表名中包含关键字查询时，需要将其用单引号括起来）
3、数据库对象的命名要能做到见名识意，并且最后不要超过32个字符
4、临时库表必须以tmp_为前缀并以日期为后缀，备份表必须以bak_为前缀并以日期(时间戳)为后缀
5、所有存储相同数据的列名和列类型必须一致（一般作为关联列...]]></description><category></category></item><item><title><![CDATA[MySQL字符集及校对规则的理解]]></title><link>https://blog.youkuaiyun.com/qq_43059674/article/details/103837459</link><guid>https://blog.youkuaiyun.com/qq_43059674/article/details/103837459</guid><author>qq_43059674</author><pubDate>Sat, 04 Jan 2020 21:29:41 +0800</pubDate><description><![CDATA[字符集(Character set)
定义： 是多个字符(英文字符，汉字字符，或者其他国家语言字符)的集合，字符集种类较多，每个字符集包含的字符个数不同。
特点：
ASCII字符集：基于罗马字母表的一套字符集，它采用1个字节的低7位表示字符，高位始终为0。
LATIN1字符集：相对于ASCII字符集做了扩展，仍然使用一个字节表示字符，但启用了高位，扩展了字符集的表示范围。
GBK字符集：支持中文，...]]></description><category></category></item><item><title><![CDATA[Redis缓存穿透和缓存雪崩以及解决方案]]></title><link>https://blog.youkuaiyun.com/qq_43059674/article/details/103777503</link><guid>https://blog.youkuaiyun.com/qq_43059674/article/details/103777503</guid><author>qq_43059674</author><pubDate>Tue, 31 Dec 2019 09:49:06 +0800</pubDate><description><![CDATA[转载：https://www.cnblogs.com/George1994/p/10668889.html
缓存穿透
这个很好理解，就是在访问数据的时候，缓存中没有对应的数据。接着查询数据库也无法查询出结果，导致不会写入到缓存中去。这回导致每次查询都会去请求数据库，造成缓存穿透；

解决方案
布隆过滤：对所有可能查询的参数以hash形式存储，在控制层先进行校验，不符合则丢弃，从而避免了对底层存储系...]]></description><category></category></item><item><title><![CDATA[SrpingCloud微服务项目的理解]]></title><link>https://blog.youkuaiyun.com/qq_43059674/article/details/103741111</link><guid>https://blog.youkuaiyun.com/qq_43059674/article/details/103741111</guid><author>qq_43059674</author><pubDate>Sat, 28 Dec 2019 14:08:52 +0800</pubDate><description><![CDATA[这是本人做分布式项目的总结，新得体会。如果你与更好的方案欢迎指出

对微服务项目的个人理解
微服务与 SOA/ESB 的异同
微服务和 SOA 都是一回事，强调把整个系统，按照多个服务的方式去组合及通信，而不是揉合在一起，但它们的内涵有很大的区别。
SOA 诞生在早期企业级的应用，其业务复杂、技术体系多样，SOA 强调的是各个服务之间，尤其是异构系统、遗留系统之间，建立起一套统一的协议和通信 (...]]></description><category></category></item><item><title><![CDATA[项目优化设计（拒绝硬编码）]]></title><link>https://blog.youkuaiyun.com/qq_43059674/article/details/103738822</link><guid>https://blog.youkuaiyun.com/qq_43059674/article/details/103738822</guid><author>qq_43059674</author><pubDate>Sat, 28 Dec 2019 09:11:29 +0800</pubDate><description><![CDATA[Controller  层返回值封装
对返回结果封装能够有效的减少硬编码。提升开发效率，方便维护。以前如果我们不对返回结构进行封装就是直接 return 一个状态码啥的。实在不雅观
Result
这是对返回结果封装的一个类
package com.javaxl.miaosha_02.result;

/**
 * 这是类是对返回结果进行处理的类主要的目的是同样返回的结果
 * @param &lt...]]></description><category></category></item><item><title><![CDATA[springboot整合rabbitMQ]]></title><link>https://blog.youkuaiyun.com/qq_43059674/article/details/103459454</link><guid>https://blog.youkuaiyun.com/qq_43059674/article/details/103459454</guid><author>qq_43059674</author><pubDate>Mon, 09 Dec 2019 16:50:02 +0800</pubDate><description><![CDATA[项目结构

rabbitmq-common子项目
rabbitmq-common 就是一个普通的maven项目
这个项目中我就只创建了 Order这个实体类，  主要是拿这个实体类当消息传输来用的。特别注意一点，此类一定要实现 Serializable  这个接口，因为当我们要传输消息的时候是将对象序列化后进行传输的 、接收消息就是反序列化
package com.cpc.rabbitmqcomm...]]></description><category></category></item><item><title><![CDATA[消息模式2（消费端限流、消息的ACK与重回队列、TTL消息、TTL消息）]]></title><link>https://blog.youkuaiyun.com/qq_43059674/article/details/103432738</link><guid>https://blog.youkuaiyun.com/qq_43059674/article/details/103432738</guid><author>qq_43059674</author><pubDate>Sat, 07 Dec 2019 11:12:56 +0800</pubDate><description><![CDATA[消费端限流
为什么需要消费端的限流？


假设一个场景，我们Rabbitmq服务器有上万条未处理的消息，我们随便打开一个消费者客户端，会出现这种情况：巨量的消息瞬间全部推送过来，但是我们单个客户端无法同时处理这么多数据!此时很有可能导致服务器崩溃，严重的可能导致线上的故障。


除了这种场景，还有一些其他的场景，比如说单个生产者一分钟生产出了几百条数据，但是单个消费者一分钟可能只能处理60条数据，...]]></description><category></category></item></channel></rss>