<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[qq_44710982的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/qq_44710982</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; qq_44710982]]></copyright><item><title><![CDATA[RabbitMQ--模型四的demo]]></title><link>https://blog.youkuaiyun.com/qq_44710982/article/details/107115245</link><guid>https://blog.youkuaiyun.com/qq_44710982/article/details/107115245</guid><author>qq_44710982</author><pubDate>Fri, 03 Jul 2020 21:00:29 +0800</pubDate><description><![CDATA[模型四


路由键 -&gt; 交换机和队列绑定若干路由键，发布的消息可以指定路由键发送




提供者这边：Provide.Class


//提供者
public class Provide {

    public static void main(String[] args) throws Exception {
        //连接RabbitMQ
        Connection connection = ConnectionUtil.getConnection();

       ]]></description><category></category></item><item><title><![CDATA[RabbitMQ - 消息中间件]]></title><link>https://blog.youkuaiyun.com/qq_44710982/article/details/107113354</link><guid>https://blog.youkuaiyun.com/qq_44710982/article/details/107113354</guid><author>qq_44710982</author><pubDate>Fri, 03 Jul 2020 19:48:29 +0800</pubDate><description><![CDATA[一、引言

什么RabbitMQ？


RabbitMQ是基于amqp协议，实现的一种MQ理念的服务。类似的服务 RocketMQ、ActiveMQ、Kafka等


为什么在分布式项目中需要一款消息中间件？


消息中间件能够实现一些Feign（同步调用）无法实现的效果：

1、服务的异步调用 2、消息的广播（事件总线） 3、消息的延迟处理 4、分布式事务 5、请求削峰（处理高并发）




二、RabbitMQ的Docker安装

1）拉取镜像


docker pull rabbitmq:3.8.5.]]></description><category></category></item><item><title><![CDATA[打死也要掌握的SQL面试题系列]]></title><link>https://blog.youkuaiyun.com/qq_44710982/article/details/107082967</link><guid>https://blog.youkuaiyun.com/qq_44710982/article/details/107082967</guid><author>qq_44710982</author><pubDate>Thu, 02 Jul 2020 14:00:18 +0800</pubDate><description><![CDATA[假设有一张表，有主键ID，其他字段，A,B,C,D.假设两行的记录中，A字段的值相等，则表示两行记录出现重复，现在要求编写SQL，删除重复的记录，只保留一条不重复的记录。
	保留ID最小的记录
		保留ID最大的记录
		注意，需要考虑不要删除了不重复的记录
	

delete from t_repeat where id not in
(select max(id) id from t_repeat group by a)
#出现错误的提示：
#[Err] 1093 - You can't specify]]></description><category></category></item><item><title><![CDATA[框架的一些常见问题]]></title><link>https://blog.youkuaiyun.com/qq_44710982/article/details/107081312</link><guid>https://blog.youkuaiyun.com/qq_44710982/article/details/107081312</guid><author>qq_44710982</author><pubDate>Thu, 02 Jul 2020 11:48:51 +0800</pubDate><description><![CDATA[1，SpringMVC
	1，工作流程（客户端发送一个请求，到服务器响应信息回到客户端）
	DispatcherServlet，会随着容器的启动而启动
		
		
	
	2，SpringMVC+Spring这种开发模式的时候，会有两个容器
	两个容器，SpringMVC容器，Spring容器
	SpringMVC容器管理，controller，Handlermapping，ViewResolver
	Spring容器管理，service，datasource，mapper，dao
	Spring容器是父容器]]></description><category></category></item><item><title><![CDATA[面试感悟----一名3年工作经验的程序员应该具备的技能]]></title><link>https://blog.youkuaiyun.com/qq_44710982/article/details/107081187</link><guid>https://blog.youkuaiyun.com/qq_44710982/article/details/107081187</guid><author>qq_44710982</author><pubDate>Thu, 02 Jul 2020 11:45:10 +0800</pubDate><description><![CDATA[原文地址http://www.cnblogs.com/xrq730/p/5260294.html，转载请注明出处，谢谢！



前言

因为和同事有约定再加上LZ自己也喜欢做完一件事之后进行总结，因此有了这篇文章。这篇文章大部分内容都是面向整个程序员群体的，当然因为LZ本身是做Java开发的，因此有一部分内容也是专门面向咱们Java程序员的。

简单先说一下，LZ坐标杭州，13届本科毕业，算上年前在阿里巴巴B2B事业部的面试，一共有面试了有6家公司（因为LZ不想请假，因此只是每个晚上去其他公司面试，所以面.]]></description><category></category></item><item><title><![CDATA[带你逐步深入了解SSM框架——淘淘商城项目之项目总结]]></title><link>https://blog.youkuaiyun.com/qq_44710982/article/details/107080914</link><guid>https://blog.youkuaiyun.com/qq_44710982/article/details/107080914</guid><author>qq_44710982</author><pubDate>Thu, 02 Jul 2020 11:36:52 +0800</pubDate><description><![CDATA[1.项目总结
总结淘淘商城中用到的技术点：

1.1. 项目工程搭建。
1、使用maven构建工程。Maven的继承、聚合、依赖管理。

2、Svn的使用，svn上传下载代码。

1.2. ssm框架整合。
1、mybatis逆向工程。

2、后台管理系统搭建，前台技术使用EasyUI框架。了解easyUI的dategrid的使用方法。

1.3. 实现商品添加。
1、商品类目选择。EasyUI的异步tree的使用方法。

2、图片服务器的搭建。使用ftp+http配合，实现图片服务。ftp服务使用vs..]]></description><category></category></item><item><title><![CDATA[架构演变及优缺点]]></title><link>https://blog.youkuaiyun.com/qq_44710982/article/details/107080782</link><guid>https://blog.youkuaiyun.com/qq_44710982/article/details/107080782</guid><author>qq_44710982</author><pubDate>Thu, 02 Jul 2020 11:29:06 +0800</pubDate><description><![CDATA[单一应用框架(ORM)

当网站流量很小时，只需一个应用，将所有功能如下单支付等都部署在一起，以减少部署节点和成本。
缺点：单一的系统架构，使得在开发过程中，占用的资源越来越多，而且随着流量的增加越来越难以维护。



垂直应用框架(MVC)

垂直应用架构解决了单一应用架构所面临的扩容问题，流量能够分散到各个子系统当中，且系统的体积可控，一定程度上降低了开发人员之间协同以及维护的成本，提升了开发效率。
缺点：但是在垂直架构中相同逻辑代码需要不断的复制，不能复用。



分布式应用架构(RPC)

当垂直应]]></description><category></category></item><item><title><![CDATA[一些常见注解（持续更新）]]></title><link>https://blog.youkuaiyun.com/qq_44710982/article/details/107014227</link><guid>https://blog.youkuaiyun.com/qq_44710982/article/details/107014227</guid><author>qq_44710982</author><pubDate>Mon, 29 Jun 2020 09:57:26 +0800</pubDate><description><![CDATA[@RequestBody

       @RequestBody主要用来接收前端传递给后端的json字符串中的数据的(请求体中的数据的)；GET方式无请求体，所以使用 @RequestBody接收数据时，前端不能使用GET方式提交数据，而是用POST方式进行提交。在后端的同一个接收方法里，@RequestBody与@RequestParam()可以同时使用，@RequestBody最多只能有一个，而@RequestParam()可以有多个。

...]]></description><category></category></item><item><title><![CDATA[微服务声明式调用组件-Feign]]></title><link>https://blog.youkuaiyun.com/qq_44710982/article/details/107003731</link><guid>https://blog.youkuaiyun.com/qq_44710982/article/details/107003731</guid><author>qq_44710982</author><pubDate>Sun, 28 Jun 2020 17:22:34 +0800</pubDate><description><![CDATA[1，目标

声明式REST客户端

采用基于接口的注解方式

注意：是在服务调用方去声明接口，然后跟服务提供方的API进行对应，这样就可以调用了

2，引入依赖


&lt;dependency&gt;
    &lt;groupId&gt;org.springframework.cloud&lt;/groupId&gt;
    &lt;artifactId&gt;spring-cloud-starter-openfeign&lt;/artifactId&gt;
&lt;/dependency&gt;

]]></description><category></category></item><item><title><![CDATA[从面试官的角度，来说说如何准备好一场技术面试]]></title><link>https://blog.youkuaiyun.com/qq_44710982/article/details/107003172</link><guid>https://blog.youkuaiyun.com/qq_44710982/article/details/107003172</guid><author>qq_44710982</author><pubDate>Sun, 28 Jun 2020 16:54:23 +0800</pubDate><description><![CDATA[作者：风清扬
链接：https://zhuanlan.zhihu.com/p/67138761
来源：知乎
著作权归作者所有。商业转载请联系作者获得授权，非商业转载请注明出处。


常常听到面试者说，不好意思因为紧张，头脑一片空白。
这里面，我认为要分两个方面来分析，第一种情况：你已经掌握的固化知识
比如你所负责的项目模块是怎么实现的，你简历上写的某个的擅长技术细节是怎么回事，这些如果出现答不对题，那属于掌握得不够扎实，跟紧张关系不大，这个锅不应该让一个叫紧张的人来背。

我补充一个例子，大家看看自己是否.]]></description><category></category></item><item><title><![CDATA[Docker是什么？]]></title><link>https://blog.youkuaiyun.com/qq_44710982/article/details/107002933</link><guid>https://blog.youkuaiyun.com/qq_44710982/article/details/107002933</guid><author>qq_44710982</author><pubDate>Sun, 28 Jun 2020 16:50:02 +0800</pubDate><description><![CDATA[1，没用容器化方式部署时，我们部署项目的一般流程

举个例子，假设我们要部署一个SSM项目，那么首先我们需要购买一台云服务器，然后安装JDK，tomcat，mysql等依赖的关键组件，然后再把项目打包上线部署，运行调试，验证程序运行结果。一切看起来都挺好的，但是问题来了，如果我们把这个项目做集群部署10台服务器，那么就意味着什么？上述的一系列安装依赖环境的动作，我们都需要重复做一遍。

另外一个问题，相信大家在工作中也会经常遇到，就是本地环境没问题，测试环境没问题，生产环境却出现问题，这样情况常常是因...]]></description><category></category></item><item><title><![CDATA[微服务注册中心-Eureka]]></title><link>https://blog.youkuaiyun.com/qq_44710982/article/details/107002215</link><guid>https://blog.youkuaiyun.com/qq_44710982/article/details/107002215</guid><author>qq_44710982</author><pubDate>Sun, 28 Jun 2020 16:40:59 +0800</pubDate><description><![CDATA[1，服务注册中心概览

1，背景

当我们的服务提供者有多个时，比如product-service（商品服务）部署了多台之后，

那么服务调用方要调用商品服务的时候要达到负载均衡的效果，该如何做到？

1.1，需要一个注册中心，实现服务的注册与发现，并且监控服务提供方的健康状态

1.2，需要一个负载均衡调用策略的实现



2，服务注册中心有哪些？

2.1，zookeeper

zookeeper它是一个分布式服务框架，是Apache Hadoop 的一个子项目，它主要是用来解决分布式应用中经常...]]></description><category></category></item><item><title><![CDATA[谈谈单体架构和微服务架构的区别？一般依据怎样的原则进行微服务的拆分？]]></title><link>https://blog.youkuaiyun.com/qq_44710982/article/details/106931119</link><guid>https://blog.youkuaiyun.com/qq_44710982/article/details/106931119</guid><author>qq_44710982</author><pubDate>Tue, 23 Jun 2020 20:09:44 +0800</pubDate><description><![CDATA[这是一道高频的面试题，下面，我们一起来看看如何回答会更好。

首先，微服务架构并非就一定比单体架构好，我一直反对这种没有独立思考的人云亦云的答案，每种架构都有其适用场景。



第一，我们来看看单体架构适用的场景

单体架构特别适合初创公司的初创项目，可以小成本快速试错，且系统模块之间的调用，是进程内的通信，所以整体的性能表现会非常好，所以这类型的项目，我推荐采用单体架构足以，在市场还没有打开之前，采用各类看似高大上的技术，除非是为了卖弄技术，否则毫无意义。

做产品，需要考虑MVP模式，架构除了考虑技术.]]></description><category></category></item><item><title><![CDATA[Spring框架]]></title><link>https://blog.youkuaiyun.com/qq_44710982/article/details/106927431</link><guid>https://blog.youkuaiyun.com/qq_44710982/article/details/106927431</guid><author>qq_44710982</author><pubDate>Tue, 23 Jun 2020 17:09:47 +0800</pubDate><description><![CDATA[两大核心IOC和AOP：



IOC（控制反转） -&gt;

       将一个对象创建的权力反转给第三方容器，当我们需要组合某个对象时，只需要从第三方容器获取即可。



为什么需要控制反转？自己new对象有什么不好？

   直接在一个类中，new另外一个类的对象，我们称之为硬编码耦合，这种方式会导致，如果另一个类的对象的构造形式发生变化时，会直接导致当前所有引用了这个类的其他类报错，增加开发者的维护成本。ioc宗旨就是消除这种耦合性，让两个类之间的构造形式不产生直...]]></description><category></category></item><item><title><![CDATA[Mysql数据库的一些常识]]></title><link>https://blog.youkuaiyun.com/qq_44710982/article/details/106904823</link><guid>https://blog.youkuaiyun.com/qq_44710982/article/details/106904823</guid><author>qq_44710982</author><pubDate>Mon, 22 Jun 2020 16:41:40 +0800</pubDate><description><![CDATA[视图

     就是一张特殊的表，它可以将实际的表结构隐藏起来。

触发器：

      就是针对某类sql触发执行





存储过程：

    存储过程就是运行在数据库端的一个方法。存储过程内部可以封装一个很复杂的业务逻辑，当程序需要执行这个逻辑时，只需要调用存储过程就行了，这样可以减少和数据库交互的次数，从而提高性能。另外，存储过程是放在数据库端的代码，所以数据库只会编译一次，后面执行就不用重新编译了。

Mysql优化：

     按照我们原来的...]]></description><category></category></item><item><title><![CDATA[常见的一些sql查询语句]]></title><link>https://blog.youkuaiyun.com/qq_44710982/article/details/106904513</link><guid>https://blog.youkuaiyun.com/qq_44710982/article/details/106904513</guid><author>qq_44710982</author><pubDate>Mon, 22 Jun 2020 16:35:18 +0800</pubDate><description><![CDATA[sql查询的执行顺序

   select * from stu

   先执行from stu再执行 select *



对结果去重distinct

   select count(dustubct name) from student where age = 18

   查询年龄18岁姓名不重复的学生数量



where条件查询



  比较运算符

  等于: =  大于: &gt;  大于等于: &gt;=...]]></description><category></category></item><item><title><![CDATA[Java面试题突击！（11-20）]]></title><link>https://blog.youkuaiyun.com/qq_44710982/article/details/106855928</link><guid>https://blog.youkuaiyun.com/qq_44710982/article/details/106855928</guid><author>qq_44710982</author><pubDate>Fri, 19 Jun 2020 19:26:44 +0800</pubDate><description><![CDATA[11，方法的重写和重载的区别

一般出现在（笔试题-选择题）

重载：发生在一个类里面，方法名相同，参数列表不同（混淆点：跟返回类型没关系）

  以下不构成重载
   public double add(int a,int b)
   public int add(int a,int b)​

 重写：发生在父类子类之间的，方法名相同，参数列表相同



12，算法题-冒泡排序

排序算法，一般来说，让面试者当场手写还是挺考验功底的。


        int[] array ...]]></description><category></category></item><item><title><![CDATA[Java面试题突击！(1-10)]]></title><link>https://blog.youkuaiyun.com/qq_44710982/article/details/106849305</link><guid>https://blog.youkuaiyun.com/qq_44710982/article/details/106849305</guid><author>qq_44710982</author><pubDate>Fri, 19 Jun 2020 14:08:04 +0800</pubDate><description><![CDATA[1，JDK，JRE，JVM有什么区别？



JDK：Java Development Kit，

        Java开发工具包，提供了Java的开发环境和运行环境。包含了编译Java源文件的编译器Javac，还有调试和分析的工具。

JRE：Java Runtime Environment，Java运行环境，包含Java虚拟机及一些基础类库

JVM：Java Virtual Machine，Java虚拟机，提供执行字节码文件的能力



所以，如果只是运行Java程序，只需要安...]]></description><category></category></item><item><title><![CDATA[谈谈互联网常见的负载均衡]]></title><link>https://blog.youkuaiyun.com/qq_44710982/article/details/106848925</link><guid>https://blog.youkuaiyun.com/qq_44710982/article/details/106848925</guid><author>qq_44710982</author><pubDate>Fri, 19 Jun 2020 08:55:47 +0800</pubDate><description><![CDATA[负载均衡是我们对应高并发流量的一种常见处理方式
我们分两个方面来聊这个问题，一个是负载均衡的分类，一个是负载均衡的常见算法。
一：负载均衡的分类
基本我们可以分为客户端负载均衡和服务端负载均衡
1，服务端负载均衡，表示其负载均衡算法是在服务端实现的，比如我们常见的nginx，通过nginx我们可以来管理背后的多台tomcat服务器，从而实现多台tomcat服务共同对外提供服务的效果，如图所示：

2，客户端负载均衡：
就是表示其负载均衡算法是由调用者来维护，比如Dubbo的Proxy，SpringCloud]]></description><category></category></item></channel></rss>