<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[hessenberg的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/hessenberg</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; hessenberg]]></copyright><item><title><![CDATA[微服务网关]]></title><link>https://blog.youkuaiyun.com/hessenberg/article/details/120425715</link><guid>https://blog.youkuaiyun.com/hessenberg/article/details/120425715</guid><author>hessenberg</author><pubDate>Sat, 26 Mar 2022 22:00:48 +0800</pubDate><description><![CDATA[1 什么是网关

如果让客户端直接和各个微服务通信，可能会有很多问题：
（1）客户端会多次请求不同的微服务，增加了客户端的复杂性；
（2）存在跨域请求，在一定场景下处理相对复杂；
（3）认证复杂，每个微服务需要独立认证。
为了解决以上问题，需要在客户端和服务器端之间加一层（网关层），让所有的请求先经过网关，再打到微服务上。

网关实现方式：
Nginx+lua 一般为企业级的网关，zuul和spring cloud gateway 是业务级的网关，用于聚合微服务。
网关在服务架构中的作用：
2 zuul
（]]></description><category></category></item><item><title><![CDATA[【MySQL实战45讲】打卡学习第四天]]></title><link>https://blog.youkuaiyun.com/hessenberg/article/details/118294544</link><guid>https://blog.youkuaiyun.com/hessenberg/article/details/118294544</guid><author>hessenberg</author><pubDate>Mon, 28 Jun 2021 10:24:14 +0800</pubDate><description><![CDATA[1 索引数据结构：哈希表、有序数组和搜索树。
1. 哈希表的链表结构不是有序的，所以哈希索引做区间查询的速度是很慢的。
   哈希表这种结构适用于只有等值查询的场景，比如Memcached及其他一些NoSQL引擎。
    
2.有序数组在等值查询和范围查询场景中的性能就都非常优秀

3.   有序数组索引只适用于静态存储引擎

4. 实际上大多数的数据库存储却并不使用二叉树。其原因是，索引不止存在内存中，还要写到磁盘上。
    N叉树由于在读写上的性能优点，以及适配磁盘的访问模式，已经被广泛应用在数据库]]></description><category></category></item><item><title><![CDATA[【MySQL实战45讲】打卡学习第三天]]></title><link>https://blog.youkuaiyun.com/hessenberg/article/details/118210252</link><guid>https://blog.youkuaiyun.com/hessenberg/article/details/118210252</guid><author>hessenberg</author><pubDate>Fri, 25 Jun 2021 10:19:10 +0800</pubDate><description><![CDATA[1 事务的四大特性
ACID（Atomicity、Consistency、Isolation、Durability，即原子性、一致性、隔离性、持久性）
2 隔离及隔离级别
当数据库上有多个事务同时执行的时候，就可能出现脏读（dirty read）、不可重复读（non-repeatable read）、幻读（phantom read）的问题，为了解决这些问题，就有了“隔离级别”的概念。
事务隔离级别包括：读未提交（read uncommitted）、读提交（read committed）、可重复读（repea]]></description><category></category></item><item><title><![CDATA[【MySQL实战45讲】打卡学习第二天]]></title><link>https://blog.youkuaiyun.com/hessenberg/article/details/118116435</link><guid>https://blog.youkuaiyun.com/hessenberg/article/details/118116435</guid><author>hessenberg</author><pubDate>Wed, 23 Jun 2021 10:19:28 +0800</pubDate><description><![CDATA[1 redo log（重做日志）和 binlog（归档日志）
WAL 的全称是 Write-Ahead Logging，它的关键点就是先写日志，再写磁盘。
当有一条记录需要更新的时候，InnoDB 引擎就会先把记录写到 redo log（粉板）里面，并更新内存，这个时候更新就算完成了。同时，InnoDB 引擎会在适当的时候，将这个操作记录更新到磁盘里面，而这个更新往往是在系统比较空闲的时候做。
InnoDB 的 redo log 是固定大小的

2

mysql&gt; create table T(ID ]]></description><category></category></item><item><title><![CDATA[【MySQL实战45讲】打卡学习第一天]]></title><link>https://blog.youkuaiyun.com/hessenberg/article/details/118094454</link><guid>https://blog.youkuaiyun.com/hessenberg/article/details/118094454</guid><author>hessenberg</author><pubDate>Mon, 21 Jun 2021 22:07:24 +0800</pubDate><description><![CDATA[1 一条sql语句的执行流程；




连接器


分析器
词法分析，语法分析
MySQL解析过程、执行过程


优化器


执行器



2   mysql8 取消查询缓存。为什么取消？

(1) MySQL 查询缓存是查询结果缓存。它将以SEL开头的传入查询与哈希表进行比较，如果匹配，则返回上次执行查询的结果。有一些限制：
查询必须逐字节匹配（查询缓存避免解析）
使用非确定性特征将导致查询不被缓存（包括临时表、用户变量、RAND()、NOW()和UDFs。）
查询缓存旨在不提供陈旧的结果。对基础表的任.]]></description><category></category></item><item><title><![CDATA[JAVA校招基础面试题]]></title><link>https://blog.youkuaiyun.com/hessenberg/article/details/115721148</link><guid>https://blog.youkuaiyun.com/hessenberg/article/details/115721148</guid><author>hessenberg</author><pubDate>Thu, 15 Apr 2021 13:11:15 +0800</pubDate><description><![CDATA[Java校招基础面试题]]></description><category></category></item><item><title><![CDATA[java面试算法题【基础篇】]]></title><link>https://blog.youkuaiyun.com/hessenberg/article/details/115489168</link><guid>https://blog.youkuaiyun.com/hessenberg/article/details/115489168</guid><author>hessenberg</author><pubDate>Wed, 07 Apr 2021 22:58:40 +0800</pubDate><description><![CDATA[面试基础算法]]></description><category></category></item><item><title><![CDATA[链表]]></title><link>https://blog.youkuaiyun.com/hessenberg/article/details/115076402</link><guid>https://blog.youkuaiyun.com/hessenberg/article/details/115076402</guid><author>hessenberg</author><pubDate>Mon, 22 Mar 2021 14:12:13 +0800</pubDate><description><![CDATA[1 链表反转
    //结点类
    public class Node{
        private int val;//数据域
        private Node next;//指针域,指向下一个指针
        public Node(int val){
            this.val=val;
        }
    }

    //反转链表
    public Node ReverseLinkList(Node node){
        if (node==]]></description><category></category></item><item><title><![CDATA[jdbc连接数据库配置文件db.properties]]></title><link>https://blog.youkuaiyun.com/hessenberg/article/details/112556154</link><guid>https://blog.youkuaiyun.com/hessenberg/article/details/112556154</guid><author>hessenberg</author><pubDate>Wed, 13 Jan 2021 11:09:25 +0800</pubDate><description><![CDATA[driver=com.mysql.jdbc.Driver
url = jdbc:mysql://localhost:3306?useUnicode=true&amp;characterEncoding=utf-8
username = root
password = 123456

]]></description><category></category></item><item><title><![CDATA[每个web.xml文件必须有的，且独立放在文档的开头]]></title><link>https://blog.youkuaiyun.com/hessenberg/article/details/112429402</link><guid>https://blog.youkuaiyun.com/hessenberg/article/details/112429402</guid><author>hessenberg</author><pubDate>Sun, 10 Jan 2021 15:36:51 +0800</pubDate><description><![CDATA[&lt;?xml version="1.0" encoding="UTF-8"?&gt;
&lt;web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee
                      http://]]></description><category></category></item><item><title><![CDATA[JAVA常用类和集合]]></title><link>https://blog.youkuaiyun.com/hessenberg/article/details/112315200</link><guid>https://blog.youkuaiyun.com/hessenberg/article/details/112315200</guid><author>hessenberg</author><pubDate>Thu, 07 Jan 2021 15:43:52 +0800</pubDate><description><![CDATA[Math
Math.sqrt(double a), Math.pow(x,a), Math.sin(a)（三角函数）, Math.exp(double a), Math.log(), Math.log10(), Math.PI, Math.E
Arrays
toString（xxx[] a）:返回包含a中元素的一个字符串，这些元素 用中括号包围，并用逗号分隔。
sort（xxx[] a）：对数组 a进行排序
binarySearch（xxx[] a，xxx v）,
binarySearch（xxx[] a，]]></description><category></category></item><item><title><![CDATA[排序和链表面试题]]></title><link>https://blog.youkuaiyun.com/hessenberg/article/details/109156922</link><guid>https://blog.youkuaiyun.com/hessenberg/article/details/109156922</guid><author>hessenberg</author><pubDate>Thu, 22 Oct 2020 22:36:10 +0800</pubDate><description><![CDATA[排序和链表面试题
]]></description><category></category></item><item><title><![CDATA[JAVA控制台输入，算法题输入问题]]></title><link>https://blog.youkuaiyun.com/hessenberg/article/details/109218058</link><guid>https://blog.youkuaiyun.com/hessenberg/article/details/109218058</guid><author>hessenberg</author><pubDate>Thu, 22 Oct 2020 11:11:05 +0800</pubDate><description><![CDATA[java控制台输入输出]]></description><category></category></item><item><title><![CDATA[Java开发学习笔记 - 1]]></title><link>https://blog.youkuaiyun.com/hessenberg/article/details/108909751</link><guid>https://blog.youkuaiyun.com/hessenberg/article/details/108909751</guid><author>hessenberg</author><pubDate>Sat, 03 Oct 2020 15:33:45 +0800</pubDate><description><![CDATA[一  JAVA基础
1 类
格式：
public class 类名称{
//…
}
一个标准的类通常要拥有四个组成部分：
（1）.所有的成员变量都要使用private关键字修饰
（2） 为每一个成员变量编写一对Getter/Setter方法（可以利用IDEA自动生成，code-generate）
（3）编写一个无参数的构造方法（可以利用IDEA自动生成，code-generate）
（4）编写一个全参数的构造方法（可以利用IDEA自动生成，code-generate）
这样标准的类也叫做java Bean
]]></description><category></category></item></channel></rss>