<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[a2210294的博客]]></title><description><![CDATA[一个新手]]></description><link>https://blog.youkuaiyun.com/a2210294</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; a2210294]]></copyright><item><title><![CDATA[阻塞和非阻塞、同步和异步 、五种IO模型]]></title><link>https://blog.youkuaiyun.com/a2210294/article/details/86761594</link><guid>https://blog.youkuaiyun.com/a2210294/article/details/86761594</guid><author>a2210294</author><pubDate>Sun, 03 Feb 2019 22:28:51 +0800</pubDate><description><![CDATA[
                阻塞和非阻塞，同步和异步1 例子故事：老王烧开水。出场人物：老张，水壶两把（普通水壶，简称水壶；会响的水壶，简称响水壶）。老王想了想，有好几种等待方式1.老王用水壶煮水，并且站在那里，不管水开没开，每隔一定时间看看水开了没。－同步阻塞老王想了想，这种方法不够聪明。2.老王还是用水壶煮水，不再傻傻的站在那里看水开，跑去寝室上网，但是还是会每隔一段时间过来看看水开了没...]]></description><category></category></item><item><title><![CDATA[单点登录原理及简单实现]]></title><link>https://blog.youkuaiyun.com/a2210294/article/details/86265363</link><guid>https://blog.youkuaiyun.com/a2210294/article/details/86265363</guid><author>a2210294</author><pubDate>Fri, 11 Jan 2019 00:08:55 +0800</pubDate><description><![CDATA[@[





	
		
			单点登录原理与简单实现
		
		
		
			(2017-09-22更新)GitHub：https://github.com/sheefee/simple-sso
一、单系统登录机制
1、http无状态协议
　　web应用采用browser/server架构，http作为通信协议。http是无状态协议，浏览器的每一次请求，服务器会独立处理，不与之前或之后的请求产生...]]></description><category></category></item><item><title><![CDATA[redis与Mysql数据同步]]></title><link>https://blog.youkuaiyun.com/a2210294/article/details/85784388</link><guid>https://blog.youkuaiyun.com/a2210294/article/details/85784388</guid><author>a2210294</author><pubDate>Fri, 04 Jan 2019 17:13:32 +0800</pubDate><description><![CDATA[        把表中经常访问的记录放在了Redis中，然后用户查询时先去查询Redis再去查询MySQL，实现读写分离，也就是Redis只做读操作。由于缓存在内存中，所以查询会很快。对于一个sql语句格式的数据请求，首先计算该语句的MD5并据此得到结果集标识符，然后利用该标识符在Redis中查找该结果集。如果Redis中不存在这样一个集合，说明要找的结果集不在Redis中，所以需要执行相应的sq...]]></description><category></category></item><item><title><![CDATA[分布式锁的作用及实现（Redis）]]></title><link>https://blog.youkuaiyun.com/a2210294/article/details/85757233</link><guid>https://blog.youkuaiyun.com/a2210294/article/details/85757233</guid><author>a2210294</author><pubDate>Fri, 04 Jan 2019 09:44:34 +0800</pubDate><description><![CDATA[分布式锁：当多个进程不在同一个系统中，用分布式锁控制多个进程对资源的访问。

一、分布式锁的使用场景

如果是单机情况下（单JVM），线程之间共享内存，只要使用线程锁就可以解决并发问题。

如果是分布式情况下（多JVM），线程A和线程B很可能不是在同一JVM中，这样线程锁就无法起到作用了，这时候就要用到分布式锁来解决。

二、分布式锁的实现（Redis）

分布式锁实现的关键是在分布式的应用服务器...]]></description><category></category></item><item><title><![CDATA[http和https的区别与联系]]></title><link>https://blog.youkuaiyun.com/a2210294/article/details/85641588</link><guid>https://blog.youkuaiyun.com/a2210294/article/details/85641588</guid><author>a2210294</author><pubDate>Wed, 02 Jan 2019 21:28:08 +0800</pubDate><description><![CDATA[感谢原作者，本文转载自http://www.mahaixiang.cn/internet/1233.html

超文本传输协议HTTP协议被用于在Web浏览器和网站服务器之间传递信息，HTTP协议以明文方式发送内容，不提供任何方式的数据加密，如果攻击者截取了Web浏览器和网站服务器之间的传输报文，就可以直接读懂其中的信息，因此，HTTP协议不适合传输一些敏感信息，比如：信用卡号、密码等支付信息。
...]]></description><category></category></item><item><title><![CDATA[Redis高可用集群-哨兵模式（Redis-Sentinel）搭建【Windows环境】]]></title><link>https://blog.youkuaiyun.com/a2210294/article/details/85338363</link><guid>https://blog.youkuaiyun.com/a2210294/article/details/85338363</guid><author>a2210294</author><pubDate>Sat, 29 Dec 2018 15:07:49 +0800</pubDate><description><![CDATA[简介

Redis 的 Sentinel 系统用于管理多个 Redis 服务器（instance），Redis 的 Sentinel 为Redis提供了高可用性。使用哨兵模式创建一个可以不用人为干预而应对各种故障的Redis部署。本质上是一个特殊的Redis服务器，所以启动方式类似。

该系统执行以下三个任务：

监控（Monitoring）：Sentinel会不断地检查你的主服务器和从服务器是否...]]></description><category></category></item><item><title><![CDATA[Redis主从复制配置]]></title><link>https://blog.youkuaiyun.com/a2210294/article/details/85308604</link><guid>https://blog.youkuaiyun.com/a2210294/article/details/85308604</guid><author>a2210294</author><pubDate>Thu, 27 Dec 2018 21:43:12 +0800</pubDate><description><![CDATA[以配置文件方式启动，只需修改配置文件即可。

既然是主从组成的redis集群，必然有主服务器和从服务器之分。我们设置集群为1主2从。主服务器端口就为默认的6379，从服务器为6380。

1. 修改配置文件

主服务器配置文件大致不需修改。将其端口指定为6379（默认）即可。若需设密码，可在requirepass设置密码。以下为主服务器配置文件redis.windows.conf部分示例。


p...]]></description><category></category></item><item><title><![CDATA[Java利用Redis实现消息队列]]></title><link>https://blog.youkuaiyun.com/a2210294/article/details/85287601</link><guid>https://blog.youkuaiyun.com/a2210294/article/details/85287601</guid><author>a2210294</author><pubDate>Thu, 27 Dec 2018 16:17:47 +0800</pubDate><description><![CDATA[使用jar包：jedis-2.9.0.jar、commons-pool2-2.3.jar

Message 需要传送的实体类(需实现Serializable接口)
	ObjectUtil 将对象和byte数组双向转换的工具类
	Jedis 通过消息队列的先进先出(FIFO)的特点结合Redis的list中的push和pop操作进行封装的工具类
1、消息类


public class Messag...]]></description><category></category></item><item><title><![CDATA[Spring-Data-Redis的使用]]></title><link>https://blog.youkuaiyun.com/a2210294/article/details/85250662</link><guid>https://blog.youkuaiyun.com/a2210294/article/details/85250662</guid><author>a2210294</author><pubDate>Tue, 25 Dec 2018 17:13:18 +0800</pubDate><description><![CDATA[与Spring集成


&amp;lt;dependency&amp;gt;
	&amp;lt;groupId&amp;gt;org.springframework.data&amp;lt;/groupId&amp;gt;
    &amp;lt;artifactId&amp;gt;spring-data-redis&amp;lt;/artifactId&amp;gt;
&amp;lt;/dependency&amp;gt;
&amp;lt;dependency&amp;gt;
    &amp;lt;gr]]></description><category></category></item><item><title><![CDATA[Redis学习笔记（4）-持久化、主从配置、哨兵、集群配置]]></title><link>https://blog.youkuaiyun.com/a2210294/article/details/85250514</link><guid>https://blog.youkuaiyun.com/a2210294/article/details/85250514</guid><author>a2210294</author><pubDate>Tue, 25 Dec 2018 16:44:14 +0800</pubDate><description><![CDATA[
								
				版权声明：本文为博主原创文章，未经博主允许不得转载。					https://blog.youkuaiyun.com/qq_29994609/article/details/51760895				&amp;lt;/div&amp;gt;
							            &amp;lt;div id=&quot;content_views&quot; class=&quot;markdown_views prism-atom-o...]]></description><category></category></item><item><title><![CDATA[jedis,spring-redis-data 整合使用，版本问题异常]]></title><link>https://blog.youkuaiyun.com/a2210294/article/details/85249179</link><guid>https://blog.youkuaiyun.com/a2210294/article/details/85249179</guid><author>a2210294</author><pubDate>Tue, 25 Dec 2018 15:50:05 +0800</pubDate><description><![CDATA[jedis,spring-redis-data 整合使用，版本不匹配的时候经常会报一些异常，例如

1： java.lang.NoClassDefFoundError: org/springframework/data/geo/Metric

2：java.lang.NoSuchMethodError: redis.clients.jedis.JedisCluster.set([B[B)Ljava...]]></description><category></category></item><item><title><![CDATA[Spring MVC — @RequestMapping原理讲解-1]]></title><link>https://blog.youkuaiyun.com/a2210294/article/details/85108718</link><guid>https://blog.youkuaiyun.com/a2210294/article/details/85108718</guid><author>a2210294</author><pubDate>Wed, 19 Dec 2018 21:36:52 +0800</pubDate><description><![CDATA[
								            
						
                &amp;nbsp;&amp;nbsp;为了降低文章篇幅，使得文章更目标化，简洁化，我们就不例举各种@RequestMapping的用法等内容了.具体请点击查看@RequestMapping的用法文章主要说明以下问题：Spring怎样处理@RequestMapping（怎样将请求路径映射到控制器类或方法）Spring怎样将请...]]></description><category></category></item><item><title><![CDATA[SpringMVC重要接口HandlerMethodArgumentResolver]]></title><link>https://blog.youkuaiyun.com/a2210294/article/details/85099884</link><guid>https://blog.youkuaiyun.com/a2210294/article/details/85099884</guid><author>a2210294</author><pubDate>Wed, 19 Dec 2018 16:25:16 +0800</pubDate><description><![CDATA[        初学SpringMVC框架时，我就一直有一个疑问，为什么controller方法上竟然可以放这么多的参数，而且都能得到想要的对象，比如HttpServletRequest或HttpServletResponse， 各种注解@RequestParam、@RequestHeader、@RequestBody、@PathVariable、@ModelAttribute等。相信很多初学者都...]]></description><category></category></item><item><title><![CDATA[前后端常见的几种鉴权方式]]></title><link>https://blog.youkuaiyun.com/a2210294/article/details/85095964</link><guid>https://blog.youkuaiyun.com/a2210294/article/details/85095964</guid><author>a2210294</author><pubDate>Wed, 19 Dec 2018 14:17:22 +0800</pubDate><description><![CDATA[目前我们常用的鉴权有四种：

HTTP Basic Authentication
	session-cookie
	Token 验证
	OAuth(开放授权)
一.HTTP Basic Authentication

   这种授权方式是浏览器遵守http协议实现的基本授权方式,HTTP协议进行通信的过程中，HTTP协议定义了基本认证认证允许HTTP服务器对客户端进行用户身份证的方法。

认证过程...]]></description><category></category></item><item><title><![CDATA[redis.windows.conf 参数说明]]></title><link>https://blog.youkuaiyun.com/a2210294/article/details/84942260</link><guid>https://blog.youkuaiyun.com/a2210294/article/details/84942260</guid><author>a2210294</author><pubDate>Mon, 10 Dec 2018 16:36:06 +0800</pubDate><description><![CDATA[1. Redis默认不是以守护进程的方式运行，可以通过该配置项修改，使用yes启用守护进程
    daemonize no

2. 当Redis以守护进程方式运行时，Redis默认会把pid写入/var/run/redis.pid文件，可以通过pidfile指定

    pidfile /var/run/redis.pid

3. 指定Redis监听端口，默认端口为6379，因为6379在手机...]]></description><category></category></item><item><title><![CDATA[长期有效的 webstorm/Idea license server 2018]]></title><link>https://blog.youkuaiyun.com/a2210294/article/details/84099566</link><guid>https://blog.youkuaiyun.com/a2210294/article/details/84099566</guid><author>a2210294</author><pubDate>Thu, 15 Nov 2018 10:19:28 +0800</pubDate><description><![CDATA[第一步   ： 复制下方activation code，直接粘贴在webstorm的activation code栏上，

切记先不要点ok，切记先不要点ok，切记先不要点ok ，等第二步执行完之后再点OK。

 


G91XMO9AVI-eyJsaWNlbnNlSWQiOiJHOTFYTU85QVZJIiwibGljZW5zZWVOYW1lIjoic29uZyB3YW5nIiwiYXNzaWd...]]></description><category></category></item><item><title><![CDATA[SpringMvc 请求无法到达controller，出现404错误的原因]]></title><link>https://blog.youkuaiyun.com/a2210294/article/details/83752702</link><guid>https://blog.youkuaiyun.com/a2210294/article/details/83752702</guid><author>a2210294</author><pubDate>Mon, 05 Nov 2018 17:18:28 +0800</pubDate><description><![CDATA[最近做ssm项目集成的时候遇到一个问题，项目搭起来以后，http请求怎么都进不到controller中，耗费了半天弄这个问题，最后发现还是自己对spring的配置文件和各种注解不熟，其实这个问题就是因为注解没配好。

1、首先是web.xml中配置：


	&amp;lt;!-- spring核心监听器 --&amp;gt;
	&amp;lt;context-param&amp;gt;
		&amp;lt;param-name&amp;gt;c...]]></description><category></category></item><item><title><![CDATA[不同版本（2.3-3.1）web.xml文件的schema头部声明]]></title><link>https://blog.youkuaiyun.com/a2210294/article/details/83716917</link><guid>https://blog.youkuaiyun.com/a2210294/article/details/83716917</guid><author>a2210294</author><pubDate>Sun, 04 Nov 2018 16:18:17 +0800</pubDate><description><![CDATA[1. Servlet 3.1

Java EE 7 XML schema，命名空间是 http://xmlns.jcp.org/xml/ns/javaee/

 



 


	&amp;lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?&amp;gt;
	
	
	&amp;lt;web-app xmlns=&quot;http://xmlns.jcp.org/xml/ns/javaee&quot; 
	
	
...]]></description><category></category></item><item><title><![CDATA[MySQL版本对应mysql-connector-java]]></title><link>https://blog.youkuaiyun.com/a2210294/article/details/83542939</link><guid>https://blog.youkuaiyun.com/a2210294/article/details/83542939</guid><author>a2210294</author><pubDate>Tue, 30 Oct 2018 15:41:35 +0800</pubDate><description><![CDATA[报错：

 [See nested exception: java.sql.SQLException: Connections could not be acquired from the underlying database!]]

用的MySQL8.0，然后连接数据库连不上，检查了很多遍配置文件和mysql服务。

解决办法：最后把mysql-connector-java-5.1.30换成了...]]></description><category></category></item><item><title><![CDATA[Eclipse中tomcat不识别web项目，导致无法部署运行的解决方法]]></title><link>https://blog.youkuaiyun.com/a2210294/article/details/83449437</link><guid>https://blog.youkuaiyun.com/a2210294/article/details/83449437</guid><author>a2210294</author><pubDate>Sat, 27 Oct 2018 20:32:20 +0800</pubDate><description><![CDATA[1、在该项目中，找到.project文件，打开：

找到&amp;lt;natures&amp;gt;，在标签内部添加如下内容并保存。

&amp;lt;nature&amp;gt;org.eclipse.jem.workbench.JavaEMFNature&amp;lt;/nature&amp;gt;

&amp;lt;nature&amp;gt;org.eclipse.wst.common.modulecore.ModuleCoreNature&amp;lt;/...]]></description><category></category></item></channel></rss>