<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[tealala的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/tealala</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; tealala]]></copyright><item><title><![CDATA[IDEA无法正常加载已经存在的Java类]]></title><link>https://blog.youkuaiyun.com/tealala/article/details/125604716</link><guid>https://blog.youkuaiyun.com/tealala/article/details/125604716</guid><author>tealala</author><pubDate>Mon, 04 Jul 2022 17:23:09 +0800</pubDate><description><![CDATA[IDEA无法正常加载已经存在的Java类]]></description><category></category></item><item><title><![CDATA[Mac使用本地docker，在IDEA进行本地容器化部署、启动]]></title><link>https://blog.youkuaiyun.com/tealala/article/details/125505686</link><guid>https://blog.youkuaiyun.com/tealala/article/details/125505686</guid><author>tealala</author><pubDate>Tue, 28 Jun 2022 20:13:48 +0800</pubDate><description><![CDATA[Mac使用本地docker，在IDEA进行本地容器化部署、启动]]></description><category></category></item><item><title><![CDATA[docker 中修改Kafka得topic配置，抛出： java.rmi.server.ExportException: Port already in use: 9999]]></title><link>https://blog.youkuaiyun.com/tealala/article/details/125374115</link><guid>https://blog.youkuaiyun.com/tealala/article/details/125374115</guid><author>tealala</author><pubDate>Mon, 20 Jun 2022 15:46:49 +0800</pubDate><description><![CDATA[问题笔记]]></description><category></category></item><item><title><![CDATA[synchronized 中4种锁状态]]></title><link>https://blog.youkuaiyun.com/tealala/article/details/124780082</link><guid>https://blog.youkuaiyun.com/tealala/article/details/124780082</guid><author>tealala</author><pubDate>Sun, 15 May 2022 11:37:57 +0800</pubDate><description><![CDATA[synchronized锁状态]]></description><category></category></item><item><title><![CDATA[Synchronized加锁原理]]></title><link>https://blog.youkuaiyun.com/tealala/article/details/124780051</link><guid>https://blog.youkuaiyun.com/tealala/article/details/124780051</guid><author>tealala</author><pubDate>Sun, 15 May 2022 11:33:18 +0800</pubDate><description><![CDATA[Synchronized]]></description><category></category></item><item><title><![CDATA[Thread基本原理]]></title><link>https://blog.youkuaiyun.com/tealala/article/details/124780009</link><guid>https://blog.youkuaiyun.com/tealala/article/details/124780009</guid><author>tealala</author><pubDate>Sun, 15 May 2022 11:30:43 +0800</pubDate><description><![CDATA[thread原理]]></description><category></category></item><item><title><![CDATA[线程池原理分析]]></title><link>https://blog.youkuaiyun.com/tealala/article/details/106538714</link><guid>https://blog.youkuaiyun.com/tealala/article/details/106538714</guid><author>tealala</author><pubDate>Sun, 15 May 2022 11:08:13 +0800</pubDate><description><![CDATA[Java中提供的线程池的API

Executors中提供了几个线程池的工厂方法：

newFixedThreadPool：该方法返回一个固定数量的线程池，线程数不变，当又一个任务提交时，若线程池中空闲，则立即执行，没有，就被展示缓存到一个任务队列中，等待有空闲到线程去执行。

newSingleThreadPool：创建一个线程的线程池，若空闲则执行，若没有空闲线程则暂缓在任务队列中。

newCachedThreadPool：返回一个可根据实际情况调整线程个数的线程池，不限制最大线程的数量，若有空闲的线]]></description><category></category></item><item><title><![CDATA[Nginx配置]]></title><link>https://blog.youkuaiyun.com/tealala/article/details/113567694</link><guid>https://blog.youkuaiyun.com/tealala/article/details/113567694</guid><author>tealala</author><pubDate>Sat, 14 May 2022 19:30:10 +0800</pubDate><description><![CDATA[nginx]]></description><category></category></item><item><title><![CDATA[了解Spring中常见的设计模式--责任链模式]]></title><link>https://blog.youkuaiyun.com/tealala/article/details/124772230</link><guid>https://blog.youkuaiyun.com/tealala/article/details/124772230</guid><author>tealala</author><pubDate>Sat, 14 May 2022 19:27:13 +0800</pubDate><description><![CDATA[责任链模式--]]></description><category></category></item><item><title><![CDATA[一、JVM内存模型，调优操作]]></title><link>https://blog.youkuaiyun.com/tealala/article/details/114003651</link><guid>https://blog.youkuaiyun.com/tealala/article/details/114003651</guid><author>tealala</author><pubDate>Sun, 09 Jan 2022 13:08:29 +0800</pubDate><description><![CDATA[JDK官网：https://docs.oracle.com/javase/8/



JVM有两种模式 Client模式和server模式

client模式使用的是轻量级的编译器，server模式使用的是重量级的编译器，server模式下编译器在编译的时候相对而言更加的彻底，服务启动之后性能更高，但是启动的时候比较耗时，速度较慢；

在JDK安装完成之后，输入命令Java -version 就可以查看信息：（默认mixed mode混合模式--由jdk自己进行选择，通常是server模式）


➜  /.]]></description><category></category></item><item><title><![CDATA[二、调优案例分析]]></title><link>https://blog.youkuaiyun.com/tealala/article/details/122384876</link><guid>https://blog.youkuaiyun.com/tealala/article/details/122384876</guid><author>tealala</author><pubDate>Sun, 09 Jan 2022 13:05:58 +0800</pubDate><description><![CDATA[1、高性能的硬件上的程序部署策略

1.1、目前主要有两种方式：

1.1.1、通过64位JDK来使用大内存

利：可以减少FUll GC对频率

    弊：内存回收导致的长时间停顿、相同的程序在64位的JDK中消耗的内存普遍高于32位的JDK（由于指针膨胀和数据类型对齐填充等因素导致）、需要保证程序足够稳定，因为这种应用如果产生了堆溢出几乎无法产生堆转存储快照（因为要产生十几GB乃至更大的Dump文件），就算产生了快照几乎无法进行分析；

1.1.2、使用若干个32位虚拟机建立逻......]]></description><category></category></item><item><title><![CDATA[理解Spring Application]]></title><link>https://blog.youkuaiyun.com/tealala/article/details/122153435</link><guid>https://blog.youkuaiyun.com/tealala/article/details/122153435</guid><author>tealala</author><pubDate>Tue, 28 Dec 2021 10:53:38 +0800</pubDate><description><![CDATA[我们在创建一个Spring boot应用的时候，通常都是使用SpringApplication或者SpringApplicationBuilder API，通过执行run方法进行启动Spring Boot应用；我们可以将整体的生命周期总结为以下几个阶段：

SpringApplication的初始化阶段

SpringApplication的运行阶段

SpringApplication的结束阶段

Spring Boot应用的退出

大致结构如下：





以上几个阶段又有细化的步骤，我们一起来分析下.]]></description><category></category></item><item><title><![CDATA[MySQL --全文索引]]></title><link>https://blog.youkuaiyun.com/tealala/article/details/114670954</link><guid>https://blog.youkuaiyun.com/tealala/article/details/114670954</guid><author>tealala</author><pubDate>Thu, 11 Mar 2021 16:17:49 +0800</pubDate><description><![CDATA[全文索引

官网说明：全文索引

只能在text，char , varchar类型字段上创建全文索引；

创建：


CREATETABLE`article`( 
`id`int(10)unsignedNOTNULLAUTO_INCREMENT, 
`title`varchar(200)DEFAULTNULL, 
`content`text, PRIMARYKEY(`id`), FULLTEXTKEY`fulltext_article`(`title`,...]]></description><category></category></item><item><title><![CDATA[分布式服务治理-dubbo_简单的源码分析1]]></title><link>https://blog.youkuaiyun.com/tealala/article/details/112796969</link><guid>https://blog.youkuaiyun.com/tealala/article/details/112796969</guid><author>tealala</author><pubDate>Thu, 11 Mar 2021 10:40:21 +0800</pubDate><description><![CDATA[一、dubbo 的衍生

随着服务技术架构的发展，大部分公司都从单体架构发展到了分布式架构，而单体架构与分布式架构最大的区别就是分布式架构需要进行服务的远程通讯；然而随着服务的复杂度增大，我们对分布式架构的要求就不仅仅局限于远程通讯，传统的RPC框架已经无法满足现在的需求；我们需要对集群中每个节点的服务进行监控；并且需要对大规模的服务集群进行服务的注册和发现；还需要对大规模的客服端的访问进行请求的分发（负载均衡）；当服务之间产生了网络异常，为了避免大规模的系统故障，还需要增加容错机制。现在很多的公司都有了自]]></description><category></category></item><item><title><![CDATA[MySQL中SQL执行流程与架构]]></title><link>https://blog.youkuaiyun.com/tealala/article/details/109152222</link><guid>https://blog.youkuaiyun.com/tealala/article/details/109152222</guid><author>tealala</author><pubDate>Thu, 11 Mar 2021 10:37:48 +0800</pubDate><description><![CDATA[一、数据SQL的执行流程

我们操作数据库的方式：在服务器中中使用命令行来操作，数据库工具Navicat，JDBC API或者ORM框架

在这些操作方式向服务器发起数据操作的之后，MySQL服务器又是如何执行接收到的SQL语句呢？

SQL语句在MySQL中的执行流程：



1、通信方式

MySQL 支持多种的通信协议，支持长连接和短连接，支持同步/异步的方式；

查看当前的连接数量：


show global status like 'Thread%'

查询的结果为：


+---------.]]></description><category></category></item><item><title><![CDATA[MySQL 数据为NULL造成的问题]]></title><link>https://blog.youkuaiyun.com/tealala/article/details/114654590</link><guid>https://blog.youkuaiyun.com/tealala/article/details/114654590</guid><author>tealala</author><pubDate>Thu, 11 Mar 2021 10:35:52 +0800</pubDate><description><![CDATA[如果表table中某列 column_nam存在null值；other_name不存在null值；

1、count()

  在进行count(column_name) 会存在数据丢失的问题，解决方案使用：count(*)进行统计

count(*) 会统计值为 NULL 的行，而 count(列名) 不会统计此列为 NULL 值的行。

2、distinct

  distinct(column_name，other_name) 数据丢失；other_name 10条数据，结果distinct输....]]></description><category></category></item><item><title><![CDATA[ZooKeeper基本概念和基本操作]]></title><link>https://blog.youkuaiyun.com/tealala/article/details/111723316</link><guid>https://blog.youkuaiyun.com/tealala/article/details/111723316</guid><author>tealala</author><pubDate>Sun, 27 Dec 2020 22:51:33 +0800</pubDate><description><![CDATA[一、Zookeeper的应用场景

1、维护配置信息

2、分布式锁服务

3、集群管理

4、生成分布式唯一ID



二、Zookeeper的数据结构：树状节点组成，如下图所示：



节点可以分为临时节点和持久化节点，

临时节点只存在创建的会话有效期内，并且当服务器停掉之后，临时节点也会消失

持久化节点：在创建之后，即便是会话结束，服务器停掉了，节点也不会消失，直到使用删除命令进行删除

三、操作节点

创建节点

持久化节点：create /Hadoop "test"

持久化有序节点：cr..]]></description><category></category></item><item><title><![CDATA[Java 工程脚手架（阿里云）]]></title><link>https://blog.youkuaiyun.com/tealala/article/details/108770250</link><guid>https://blog.youkuaiyun.com/tealala/article/details/108770250</guid><author>tealala</author><pubDate>Thu, 24 Sep 2020 13:49:44 +0800</pubDate><description><![CDATA[访问地址：

https://start.aliyun.com/




]]></description><category></category></item><item><title><![CDATA[Docker基本架构，概念，相关命令操作]]></title><link>https://blog.youkuaiyun.com/tealala/article/details/108342748</link><guid>https://blog.youkuaiyun.com/tealala/article/details/108342748</guid><author>tealala</author><pubDate>Wed, 23 Sep 2020 17:00:58 +0800</pubDate><description><![CDATA[使用Replica Set 的方式部署mongodb，这里我们部署一个primary，两个secondary，一个client：

首先搭建一个network bridge


docker network create mongo-network

然后再运行3个mongo容器，创建的集群名称是：mongo-rep


docker run --rm -itd --name mongo-primary --net=mongo-network mongo --replSet mongo-rep
doc...]]></description><category></category></item><item><title><![CDATA[使用docker进行mongodb集群部署]]></title><link>https://blog.youkuaiyun.com/tealala/article/details/108756679</link><guid>https://blog.youkuaiyun.com/tealala/article/details/108756679</guid><author>tealala</author><pubDate>Wed, 23 Sep 2020 17:00:01 +0800</pubDate><description><![CDATA[使用Replica Set 的方式部署mongodb，这里我们部署一个primary，两个secondary，一个client：

首先搭建一个network bridge


docker network create mongo-network

然后再运行3个mongo容器，创建的集群名称是：mongo-rep


docker run --rm -itd --name mongo-primary --net=mongo-network mongo --replSet mongo-rep
docker]]></description><category></category></item></channel></rss>