<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[TSEAHT的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/TSEAHT</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; TSEAHT]]></copyright><item><title><![CDATA[http压测工具-wrk]]></title><link>https://blog.youkuaiyun.com/TSEAHT/article/details/111934764</link><guid>https://blog.youkuaiyun.com/TSEAHT/article/details/111934764</guid><author>TSEAHT</author><pubDate>Tue, 29 Dec 2020 18:29:30 +0800</pubDate><description><![CDATA[https://www.jianshu.com/p/ac185e01cc30

]]></description><category></category></item><item><title><![CDATA[记录几个比较好用的在线工具]]></title><link>https://blog.youkuaiyun.com/TSEAHT/article/details/108405693</link><guid>https://blog.youkuaiyun.com/TSEAHT/article/details/108405693</guid><author>TSEAHT</author><pubDate>Fri, 04 Sep 2020 15:46:53 +0800</pubDate><description><![CDATA[1、正则表达式在线工具 ：https://regex101.com/

]]></description><category></category></item><item><title><![CDATA[docker搭建nacos集群及遇到问题的处理----超详解]]></title><link>https://blog.youkuaiyun.com/TSEAHT/article/details/107530353</link><guid>https://blog.youkuaiyun.com/TSEAHT/article/details/107530353</guid><author>TSEAHT</author><pubDate>Thu, 23 Jul 2020 11:05:29 +0800</pubDate><description><![CDATA[1、pull base镜像
因为nacos启动需要依赖jdk和maven 这里我直接在docker hub上拉去了一个基于jdk1.8 maven3.3.9的centos镜像

2、下载nacos-server
然后https://github.com/alibaba/nacos/releases github上下载nacos-server,这里我选择的版本为1.2.1

如果github上下载很慢这里推荐百度网盘进行下载

3、启动三台docker容器
docker run -itd -p 8850:88]]></description><category></category></item><item><title><![CDATA[Mac下容器内访问宿主机]]></title><link>https://blog.youkuaiyun.com/TSEAHT/article/details/107404408</link><guid>https://blog.youkuaiyun.com/TSEAHT/article/details/107404408</guid><author>TSEAHT</author><pubDate>Fri, 17 Jul 2020 11:29:16 +0800</pubDate><description><![CDATA[mac下Docker容器访问宿主机端口
mac下的docker其实是虚拟机，所以无法直接访问宿主机
网上好多文章说用ifconfig 可以看到docker0网桥，后面就会有连接ip，但这种是不支持mac os的，今天搜到好文，故收藏一下怕以后文章不见了，以下为拷贝内容：（原文链接：https://blog.youkuaiyun.com/one_chao/article/details/98673010）
Docker for Mac v 17.12 to v 18.02
直接使用:  docker.for.mac.ho]]></description><category></category></item><item><title><![CDATA[SpringCloud学习记录二：dubbo集成Springboot demo搭建]]></title><link>https://blog.youkuaiyun.com/TSEAHT/article/details/107178085</link><guid>https://blog.youkuaiyun.com/TSEAHT/article/details/107178085</guid><author>TSEAHT</author><pubDate>Tue, 07 Jul 2020 11:56:09 +0800</pubDate><description><![CDATA[1、
没有注册中心版：
provider
：
项目结构:
sample-api: 提供服务接口  IHelloService
sample-provider: sample-api 接口实现类、项目启动类:
配置文件
整个父模块provider包括两个子模块sample-api、sample-provider
sample-api对外提供服务，需要将sample-api maven-install打成jar包放到本地仓库供sample-provider和consumer使用
consumer
启动类

配置]]></description><category></category></item><item><title><![CDATA[SpringCloud学习记录一：SpringBoot自动装配原理及Starter实现]]></title><link>https://blog.youkuaiyun.com/TSEAHT/article/details/107081535</link><guid>https://blog.youkuaiyun.com/TSEAHT/article/details/107081535</guid><author>TSEAHT</author><pubDate>Thu, 02 Jul 2020 14:52:59 +0800</pubDate><description><![CDATA[springboot通过默认配置了很多框架的使用方式帮我们大大简化了项目初始搭建以及开发过程
springboot帮我们做了什么
通常搭建一个基于spring的web应用，我们需要做以下工作：
1、pom文件中引入相关jar包，包括spring、springmvc、redis、mybaits、log4j、mysql-connector-java 等等相关jar …
2、配置web.xml，Listener配置、Filter配置、Servlet配置、log4j配置、error配置 …
3、配置数据库连接、配置]]></description><category></category></item><item><title><![CDATA[JVM学习记录七：栈帧内部结构]]></title><link>https://blog.youkuaiyun.com/TSEAHT/article/details/107021589</link><guid>https://blog.youkuaiyun.com/TSEAHT/article/details/107021589</guid><author>TSEAHT</author><pubDate>Mon, 29 Jun 2020 18:14:07 +0800</pubDate><description><![CDATA[局部变量表
：定义为一个数字数组，最基本的存储单元：槽 slot
存放基本数据类型、引用类型、returnAddress   32以内占用两个slot   64位占两个slot
slot重复利用问题，局部变量b变量作用域过了，销毁掉了，下一个变量c会重复利用这个slot


操作数栈



操作数栈用于存放栈帧中的执行中间结果：
解析：实例方法以及反编译指令集如下：

1、

2、

3、

4、

5、

6、

7、


...]]></description><category></category></item><item><title><![CDATA[JVM学习记录六：运行时数据区-虚拟机栈]]></title><link>https://blog.youkuaiyun.com/TSEAHT/article/details/106733347</link><guid>https://blog.youkuaiyun.com/TSEAHT/article/details/106733347</guid><author>TSEAHT</author><pubDate>Sat, 13 Jun 2020 16:12:13 +0800</pubDate><description><![CDATA[栈是运行时的单位，堆是存储的单位
虚拟机栈内部保存一个个栈帧，对应一次次方法的调用
线程私有，生命周期和线程一致，展示一种快速分配存储的方式，访问速度仅次于程序计数器，不存在垃圾回收问题
主管java程序的运行，保存方法的局部变量（基本数据类型，对象的引用地址）
jvm虚拟机规范允许java栈的大小是动态的或者是固定不变的
固定不变的：每一个线程的虚拟机栈容量可以在线程创建的时候独立选定，如果超过了这个虚拟机栈允许的最大容量JVM就会抛出StackOverFlowError
动态扩展： 在尝试扩展的时候无法]]></description><category></category></item><item><title><![CDATA[JVM学习记录五：运行时数据区-程序计数器(PC寄存器)]]></title><link>https://blog.youkuaiyun.com/TSEAHT/article/details/106730270</link><guid>https://blog.youkuaiyun.com/TSEAHT/article/details/106730270</guid><author>TSEAHT</author><pubDate>Sat, 13 Jun 2020 14:22:27 +0800</pubDate><description><![CDATA[PC寄存器：程序计数器（Program Counter Register）是一块较小的内存空间，它可以看做是当前线程所执行的字节码的行号指示器。在虚拟机的概念模型里（仅是概念模型，各种虚拟机可能会通过一些更高效的方式去实现），字节码解释器工作时就是通过改变这个计数器的值来选取下一条需要执行的字节码指令，分支、循环、跳转、异常处理、线程恢复等基础功能都需要依赖这个计数器来完成。
线程私有
为什么是线程私有？
Java虚拟机的多线程是通过线程轮流切换并分配处理器执行时间的方式来实现，也就是说，在同一时刻一个处理]]></description><category></category></item><item><title><![CDATA[K8S学习记录一:容器化基础]]></title><link>https://blog.youkuaiyun.com/TSEAHT/article/details/106690188</link><guid>https://blog.youkuaiyun.com/TSEAHT/article/details/106690188</guid><author>TSEAHT</author><pubDate>Thu, 11 Jun 2020 17:20:12 +0800</pubDate><description><![CDATA[一个很好地k8s介绍视频：https://www.bilibili.com/video/BV18t411u7kX?t=1504
k8s可以简单理解为一个使用了数据库的web服务

1、k8s相关组件介绍：

a). kubectl : kubectl相当于客户端，是操作k8s的入口，是k8s定制化的curl命令行，相当于请求地址
b). etcd : etcd是这个“web服务的键值数据库”,用于存储，用于存储容器健康状态、pod信息等
c). API server ：API server 相当于“web服]]></description><category></category></item><item><title><![CDATA[JVM学习记录四:类加载子系统]]></title><link>https://blog.youkuaiyun.com/TSEAHT/article/details/106641693</link><guid>https://blog.youkuaiyun.com/TSEAHT/article/details/106641693</guid><author>TSEAHT</author><pubDate>Tue, 09 Jun 2020 15:55:19 +0800</pubDate><description><![CDATA[类加载子系统包括: 加载-》链接-》初始化

1、加载：加载class字节码文件，加载器：(引导类加载器、扩展类加载器、系统类加载器)
2、链接：链接阶段分为三个步骤：验证（验证字节码文件是否符合JVM规范）、准备（给类变量设置内存、赋初始值、如果类变量被final修饰则直接在准备阶段初始化）、解析（将常量池中的符号引用转换成直接引用）
3、初始化：初始化阶段就是执行类构造器方法() 方法，他会将类变量赋值动作、以及静态代码块中的语句合并，按代码顺序执行如果没有静态变量和静态代码块则不存在clinit方法，]]></description><category></category></item><item><title><![CDATA[maven打war包将第三方jar包放入war包下的lib目录下]]></title><link>https://blog.youkuaiyun.com/TSEAHT/article/details/106570968</link><guid>https://blog.youkuaiyun.com/TSEAHT/article/details/106570968</guid><author>TSEAHT</author><pubDate>Fri, 05 Jun 2020 15:09:29 +0800</pubDate><description><![CDATA[&lt;dependency&gt;
            &lt;groupId&gt;com.aspose&lt;/groupId&gt;
            &lt;artifactId&gt;aspose-cad&lt;/artifactId&gt;
            &lt;version&gt;19.9&lt;/version&gt;
            &lt;scope&gt;system&lt;/scope&gt;
            &lt;systemPath&gt]]></description><category></category></item><item><title><![CDATA[JVM学习记录三：JVM内存结构概述]]></title><link>https://blog.youkuaiyun.com/TSEAHT/article/details/106442244</link><guid>https://blog.youkuaiyun.com/TSEAHT/article/details/106442244</guid><author>TSEAHT</author><pubDate>Sat, 30 May 2020 15:37:51 +0800</pubDate><description><![CDATA[这里放一个尚硅谷宋红康JVM画的图便于理解整个架构

]]></description><category></category></item><item><title><![CDATA[JVM学习记录二：JVM解释器与JIT即时编译器]]></title><link>https://blog.youkuaiyun.com/TSEAHT/article/details/106441036</link><guid>https://blog.youkuaiyun.com/TSEAHT/article/details/106441036</guid><author>TSEAHT</author><pubDate>Sat, 30 May 2020 15:25:53 +0800</pubDate><description><![CDATA[解释器 ：响应快，逐行解释字节码，执行机器指令，但执行时间长，执行效率低
即时编译器（JIT）: 反复执行的热点代码即时编译成本地机器指令，存入方法区缓存codeCache，响应慢，执行效率高
JVM类型 ：
SUN Classic VM : 使用解释器  可以外挂即时编译器（JIT）一旦使用JIT则由JIT接管，解释器就不能使用了
Exact VM : 能够知道内存中某个位置的数据具体是什么类型，具备现代高性能虚拟机的雏形，热点探测、编译器和解释器混合工作模式
HotSpot ： 解释器与即时编译器混合使]]></description><category></category></item><item><title><![CDATA[JVM学习记录一：栈的指令集与寄存器指令集]]></title><link>https://blog.youkuaiyun.com/TSEAHT/article/details/106430002</link><guid>https://blog.youkuaiyun.com/TSEAHT/article/details/106430002</guid><author>TSEAHT</author><pubDate>Fri, 29 May 2020 17:51:35 +0800</pubDate><description><![CDATA[public class Test01 {                                               
                                                                    
    public static void main(String[] args) {                        
        int i = 1;                               ]]></description><category></category></item><item><title><![CDATA[今天开始学习JVM基础知识]]></title><link>https://blog.youkuaiyun.com/TSEAHT/article/details/106422637</link><guid>https://blog.youkuaiyun.com/TSEAHT/article/details/106422637</guid><author>TSEAHT</author><pubDate>Fri, 29 May 2020 11:53:08 +0800</pubDate><description><![CDATA[]]></description><category></category></item><item><title><![CDATA[通过反射创建对象，执行对象中的方法]]></title><link>https://blog.youkuaiyun.com/TSEAHT/article/details/106422501</link><guid>https://blog.youkuaiyun.com/TSEAHT/article/details/106422501</guid><author>TSEAHT</author><pubDate>Fri, 29 May 2020 11:49:11 +0800</pubDate><description><![CDATA[public class Test04 {
    public static void main(String[] args) throws NoSuchFieldException, ClassNotFoundException, NoSuchMethodException, IllegalAccessException, InvocationTargetException, InstantiationException {
        //通过反射创建对象
        Class&lt;?&g]]></description><category></category></item><item><title><![CDATA[框架原理:通过反射获取注解信息(实例)]]></title><link>https://blog.youkuaiyun.com/TSEAHT/article/details/106362071</link><guid>https://blog.youkuaiyun.com/TSEAHT/article/details/106362071</guid><author>TSEAHT</author><pubDate>Tue, 26 May 2020 18:23:35 +0800</pubDate><description><![CDATA[package Reflection;

import java.lang.annotation.*;
import java.lang.reflect.Field;

/**
 * @author jiangwentao
 * @date 2020/5/26
 */
public class Test04 {
    public static void main(String[] args) throws NoSuchFieldException {
        Student student = ]]></description><category></category></item><item><title><![CDATA[A表的a字段 关联 B表的b字段(主键)  b字段对应c字段现在要把c字段同步更新到A表里面去]]></title><link>https://blog.youkuaiyun.com/TSEAHT/article/details/106142197</link><guid>https://blog.youkuaiyun.com/TSEAHT/article/details/106142197</guid><author>TSEAHT</author><pubDate>Fri, 15 May 2020 14:56:07 +0800</pubDate><description><![CDATA[场景:
有个资源发布表 release 存了年级id (grade_id)
有个年级学段对应表 grade (id, school_type_id)
现在要把school_type_id同步更新到release表
ALTER TABLE release ADD school_type_id BIGINT ( 20 ) UNSIGNED DEFAULT NULL COMMENT ‘学段ID’ AFTER path;
UPDATE release r
INNER JOIN grade g ON r.grade_]]></description><category></category></item><item><title><![CDATA[网络编程下实现多线程聊天demo]]></title><link>https://blog.youkuaiyun.com/TSEAHT/article/details/105845913</link><guid>https://blog.youkuaiyun.com/TSEAHT/article/details/105845913</guid><author>TSEAHT</author><pubDate>Wed, 29 Apr 2020 18:19:31 +0800</pubDate><description><![CDATA[1、写一个接收消息的类
public class ReceiveMsg implements Runnable{

    DatagramSocket socket = null;

    private int port;

    private String roleType;

    public ReceiveMsg(int port, String roleType) {
   ...]]></description><category></category></item></channel></rss>