- 博客(208)
- 资源 (11)
- 收藏
- 关注
原创 【ElasticSearch】Es 源码之 PageCacheRecycler 源码解读
1.概述根据启动流程 【ElasticSearch】Es 启动流程源码分析 在Node初始化的时候将会初始化PageCacheRecycler, PageCacheRecycler 是固定大小页面的回收者。logger.info("初始化 PageCacheRecycler ");PageCacheRecycler pageCacheRecycler = createPageCacheRecycler(settings);BigArrays bigArrays = createBigArrays(
2021-04-30 09:11:07 422
原创 【ElasticSearch】Es 源码之 GatewayModule GatewayService 源码解读
1.概述根据启动流程 【ElasticSearch】Es 启动流程源码分析 在Node初始化的时候将会初始化GatewayModulelogger.info("初始化 GatewayModule ");modules.add(new GatewayModule());2.构造函数public class GatewayModule extends AbstractModule { @Override protected void configure() {
2021-04-30 09:10:29 271 1
原创 【ElasticSearch】Es 源码之 IndicesModule 源码解读
1.概述根据启动流程 【ElasticSearch】Es 启动流程源码分析 在Node初始化的时候将会初始化SearchModule logger.info("初始化 SearchModule ");SearchModule searchModule = new SearchModule(settings, false, pluginsService.filterPlugins(SearchPlugin.class));CircuitBreakerService circuitBreakerSe
2021-04-30 09:09:54 231
原创 【ElasticSearch】Es 源码之 IndicesModule 源码解读
1.概述根据启动流程 【ElasticSearch】Es 启动流程源码分析 在Node初始化的时候将会初始化IndicesModulelogger.info("初始化 IndicesModule MapperRegistry ");IndicesModule indicesModule = new IndicesModule(pluginsService.filterPlugins(MapperPlugin.class));modules.add(indicesModule);这个plug
2021-04-30 09:09:16 194
原创 【ElasticSearch】Es 源码之 MonitorService 源码解读
文章目录1.概述2.构造函数3.JvmGcMonitorService3.1 构造函数3.2 run方法3.3 monitorSlowGc4.OsService4.1 获取cpu信息5. OsStats.Swap6.Cgroup7.相关问题1.概述根据启动流程 【ElasticSearch】Es 启动流程源码分析 在Node初始化的时候将会初始化MonitorServiceModulesBuilder modules = new ModulesBuilder();// plugin module
2021-04-30 09:08:52 262
原创 【ElasticSearch】Es 源码之 IngestService 源码解读
1.概述根据启动流程 【ElasticSearch】Es 启动流程源码分析 在Node初始化的时候将会初始化IngestServicelogger.info("初始化 IngestService");final IngestService ingestService = new IngestService(clusterService, threadPool, this.environment, scriptService, analysisModule.getAnalysisRegistr
2021-04-30 09:08:27 191
原创 【ElasticSearch】Es 源码之 UsageService 源码解读
1.概述根据启动流程 【ElasticSearch】Es 启动流程源码分析 在Node初始化的时候将会初始化UsageServicelogger.info("初始化 UsageService ");final UsageService usageService = new UsageService();2.构造函数构造函数只是new了一个hashmap private final Map<String, BaseRestHandler> handlers; pu
2021-04-30 09:07:48 143
原创 【ElasticSearch】Es 源码之 ClusterService 源码解读
1.概述根据启动流程 【ElasticSearch】Es 启动流程源码分析 在Node初始化的时候将会初始化ClusterServicelogger.info("初始化 ClusterService MasterService ClusterApplierService OperationRouting");List<ClusterPlugin> clusterPlugins = pluginsService.filterPlugins(ClusterPlugin.class);fin
2021-04-30 09:06:38 314
原创 【ElasticSearch】Es 源码之 NetworkService 源码解读
1.概述根据启动流程 【ElasticSearch】Es 启动流程源码分析 在Node初始化的时候将会初始化NetworkServicelogger.info("初始化 NetworkService");final NetworkService networkService = new NetworkService(getCustomNameResolvers(pluginsService.filterPlugins(DiscoveryPlugin.class)));...
2021-04-30 09:05:53 118
原创 【ElasticSearch】Es 源码之 SettingsModule 源码解读
1.概述根据启动流程 【ElasticSearch】Es 启动流程源码分析 在Node初始化的时候将会初始化SettingsModulelogger.info("初始化 SettingsModule");// 配置模块,维护了es的各种配置信息。final SettingsModule settingsModule = new SettingsModule(settings, additionalSettings, additionalSettingsFilter, settingsUpgr
2021-04-30 09:05:20 128
原创 【ElasticSearch】Es 源码之 ScriptModule ScriptService 源码解读
1.概述根据启动流程 【ElasticSearch】Es 启动流程源码分析 在Node初始化的时候将会初始化ScriptModule、ScriptService logger.info("创建 ScriptModule ScriptService"); final ScriptModule scriptModule = new ScriptModule(settings, pluginsService.filterPlugins(ScriptPlugin.class));.
2021-04-29 21:14:37 240
原创 【ElasticSearch】Es 源码之 NodeClient 源码解读
1.概述根据启动流程 【ElasticSearch】Es 启动流程源码分析 在Node初始化的时候将会初始化NodeClient/** 创建 NodeClient*/logger.info("创建 NodeClient 创建 Admin ClusterAdmin 和 IndicesAdmin");client = new NodeClient(settings, threadPool);2.构造函数初始化最终调用如下构造函数public AbstractClient(Settings
2021-04-29 21:13:11 424
原创 【ElasticSearch】es ResourceWatcherService 的 初始化 启动 源码解析
1.概述博文首先参考:【ElasticSearch】Es 启动流程源码分析 在启动的时候对这个进行了初始化2.初始化logger.info("初始化 ResourceWatcherService");final ResourceWatcherService resourceWatcherService = new ResourceWatcherService(settings, threadPool);resourcesToClose.add(resourceWatcherService);/.
2021-04-29 21:12:09 198
原创 80-450-010-原理-MySQL索引
我们平常所说的索引,如果没有特别指明,都是指B树(多路搜索树,并不一-定是二叉的)结构组织的索引。其中聚集索引,次要索引、复合索引,前缀索引,唯一索引默认都是使用B+树索引,统称索引。当然,除了B+树这种类型的索引之外,还有哈稀索引(hash index)等。本文出自 csdn 九师兄,防伪标志,本文由九师兄唯一发布。 MySQL官方对索引的定义为:索引(Index)是帮助MySQL高效获取数据的数据结构。 一般来说索引本身也很大,不可能全部存储在内存中,因此索引往往以索引文件的形式存储的磁盘上。
2021-04-29 21:11:34 186
原创 80-600-020-原理-存储引擎-简介
1.概述Mysql 采用插件式存储引擎架构,可以根据不同的需求为不同的表设置不同点存储引擎。表状态查询语句(以user表为例):USE mysql;SHOW TABLE STATUS LIKE 'user';查询结果:mysql> SHOW TABLE STATUS LIKE 'user'\G;*************************** 1. row *************************** Name: user Eng
2021-04-29 21:11:11 164
原创 80-450-024-原理-索引-索引练习
1.概述2.建表CREATE TABLE test03 (id INT PRIMARY KEY NOT NULL auto_increment,c1 CHAR ( 10 ),c2 CHAR ( 10 ),c3 CHAR ( 10 ),c4 CHAR ( 10 ),c5 CHAR ( 10 ));添加数据insert into test03 values(1,'a1','a2','a3','a4','a5');insert into test03 values(2,'b1','b
2021-04-29 21:10:33 106
原创 80-450-020-原理-索引-索引失效与优化
1.概述1.1 测试数据CREATE TABLE staffs ( id INT PRIMARY KEY auto_INCREMENT, NAME VARCHAR ( 24 ) NOT NULL DEFAULT '' COMMENT '姓名', age INT NOT NULL DEFAULT 0 COMMENT '年龄', pos VARCHAR ( 20 ) NOT NULL DEFAULT '', add_time TIMESTAMP NOT NULL DEFAULT CURR
2021-04-29 21:09:56 174
转载 【java】java boolean 源码分析
1.概述转载:jdk源码分析-------------boolean这篇文章小编只是对boolean类型的几个方法进行一次知识梳理,大家有好的意见可以在留言区留下宝贵的意见,小编会做出相应的调整。1.1 booleanValue() /** * Returns the value of this {@code Boolean} object as a boolean * primitive. * * @return the primitive {@cod
2021-04-29 21:08:38 163
转载 【java】Thread.Sleep 与 Thread.onSpinWait
1.概述转载:【java】Thread.Sleep 与 Thread.onSpinWait2.Thread.Sleep一般情况下,我们让线程等待一段时间都是使用Thread.sleep()命令。比如下面这个demo示例:@Testpublic void test9() throws InterruptedException { new Thread(() -> { System.out.println(Thread.currentThread().getName()
2021-04-29 21:08:00 471
原创 【java】java中文件监控WatchService使用
1.概述1.1 简介这里介绍使用WatchService对本地文件的监控,WatchService是jdk1.7版本引进的,位于nio包下。WatchService是基于本机操作系统实现对文件的监控。2.功能及应用2.1 功能动态获取文件变化,无需重启系统。2.2 应用如动态修改配置文件,无需重启系统。3.关键接口、类和方法3.1 java.nio.file.WatchService接口监听服务, 方法有:WatchKey take():等待下一次的监听结果,没有则等待;Watch.
2021-04-29 21:07:15 590
原创 80-200-040-原理-MySQL服务端架构
1.MySQL Server端架构如果能够在头脑中构建一幅Mysql各组件之间如何协同工作的架构图,就会有助于我们深入的理解Mysql数据库。上面的图有点复杂现在我们只需要记住下面的简图即可,如下图所示:2.分层介绍2.1.连接层最上层是一-些客户端和连接服务,包含本地sock通信和大多数基于客户端/服务端工具实现的类似于tcp/ip的信。主要完成一些类似于 连接处理、授权认证、及相关的安全方案。在该层上引入了线程池的概念,为通过认证安全接入的客户端提供线程。同样在该层上可以实现基于SSL的安全
2021-04-28 21:51:07 262 1
原创 80-040-000-原理-MySQL的 ICP
1.概述1.1 什么是ICP?MySQL5.6引入了**Index Condition Pushdown(ICP)**的特性,进一步优化了查询。Pushdown表示操作下放,某些情况下的条件过滤操作下放到存储引擎。EXPLAIN SELECT * FROM rental WHERE rental_date='2005-05-25' AND customer_id>=300 AND customer_id<=400;在5.6版本之前:优化器首先使用复合索引idx_rental_date
2021-04-28 21:50:28 177
原创 75-100-024-测试-MySQL 双表优化案例
1.建表CREATE TABLE IF NOT EXISTS class( id INT(10) UNSIGNED NOT NULL AUTO_INCREMENT, card INT(10) UNSIGNED NOT NULL, PRIMARY KEY (id));CREATE TABLE IF NOT EXISTS book ( bookid INT(10) UNSIGNED NOT NULL AUTO_INCREMENT, card INT(10) UNSIGNED NOT NULL,
2021-04-28 21:49:33 157
原创 75-100-020-测试-MySQL 单表优化案例
1.建表CREATE TABLE IF NOT EXISTS article ( id INT ( 10 ) UNSIGNED NOT NULL PRIMARY KEY auto_increment, author_id INT ( 10 ) UNSIGNED NOT NULL, category_id INT ( 10 ) UNSIGNED NOT NULL, views INT ( 10 ) UNSIGNED NOT NULL, comments INT ( 10 ) UNSIGNED NO
2021-04-28 21:48:46 143
原创 60-100-030-使用-Docker MySQL 8 主从复制
1.概述因为我只有本地机器,只有一个mac,然后想做主从复制实验,结果没做好,我是使用一个docker mysql ,一个本地mysql.现在尝试一下在两个docker中做主从同步实验。基于二进制日志文件位置(Binary Log File Position)的复制配置本实验使用Root用户操作,mysql:8.0.19 镜像的MySQL版本为8.0.192.Docker镜像# docker search mysql选择STARS数最多的mysql官方镜像`# docker pull mysq
2021-04-28 21:48:07 138 1
原创 40-400-044-运维-优化-MySQL order by 优化
1.概述本篇文章我们将了解ORDER BY语句的优化,在此之前,你需要对索引有基本的了解,不了解的朋友们可以先看一下我之前写过的索引相关文章。现在让我们开始吧。2.MySQL中的两种排序方式通过有序索引顺序扫描直接返回有序数据因为索引的结构是B+树,索引中的数据是按照一定顺序进行排列的,所以在排序查询中如果能利用索引,就能避免额外的排序操作。EXPLAIN分析查询时,Extra显示为Using index。Filesort排序,对返回的数据进行排序所有不是通过索引直接返回排序结果的操作都
2021-04-28 21:47:28 146
原创 【Flink】TypeInfo Flink类型系统TypeIinformation
文章目录1.世界2.概述2.1 Flink类型分类3.各类型3.1 POJO类型的规则3.1.1 案例3.1.2 小技巧3.2 Tuple3.3 辅助类型3.4 泛型和其他类型4.常见问题5.TypeInformation6.创建6.1 Java6.2 Scala6.4 预定义的快捷方式6.5 **自定义 TypeInfo 和 TypeInfoFactory**6.6. 小结7.**TypeSerializer**8.Kryo 序列化9.类型机制的陷阱与缺陷1.世界2.概述在内部,Flink在类型
2021-04-28 21:46:37 455
原创 40-400-020-运维-优化-使用MySQLTunner优化MySQL
1.概述MySQLTuner 是一个 Perl 脚本,可以用来分析您的 MySQL 性能,并且基于收集到的信息给出相应的优化建议。这样子,您就可以调整 my.cnf 从而优化您的 MySQL 设置。官网:http://mysqltuner.com/Mysqltuner 就是一套perl脚本,不需要任何的安装,将下载下来的tar安装包解压下就行了。2. 安装MySQL我的是Mac环境,安装后目录在(base) lcc@lcc MySQLTuner-perl$ vi ~/.bash_profile
2021-04-28 21:46:18 198
原创 20-100-040-安装-Centos 7.5 安装MYSQL
Centos 7.5 安装MYSQLCentos7通过yum安装最新MySQL一:去官网查看最新安装包https://dev.mysql.com/downloads/repo/yum/二:下载MySQL源安装包wget http://dev.mysql.com/get/mysql57-community-release-el7-11.noarch.rpm安装MySql源yum -y install mysql57-community-release-el7-11.noarch.rpm查看
2021-04-28 21:45:41 137
原创 60-420-020-使用-存储过程-使用存储过程和函数插入大数据量
1.概述1.1 准备创建tb_dept_bigdata(部门表)create table tb_dept_bigdata( id int unsigned primary key auto_increment, deptno mediumint unsigned not null default 0, dname varchar(20) not null default '', loc varchar(13) not null default '')engine=innodb de.
2021-04-27 21:06:46 154
原创 60-400-240-使用-binlog-Canal使用文档md
1.世界2.概述3.环境要求3.1. 操作系统a. 纯java开发,windows/linux均可支持b. jdk建议使用1.6.25以上的版本,稳定可靠,目前阿里巴巴使用基本为此版本.3.2 mysql要求当前的canal开源版本支持5.7及以下的版本(阿里内部mysql 5.7.13, 5.6.10, mysql 5.5.18和5.1.40/48),ps. mysql4.x版本没有经过严格测试,理论上是可以兼容canal的原理是基于mysql binlog技术,所以这里一定需
2021-04-27 21:06:17 142
原创 60-400-045-使用-binlog-Maxwell读取MySQL binlog日志到Kafka
启动MySQL创建maxwell的数据库和用户在MySQL中创建一个测试数据库和表前面三个步骤详见 Maxwell读取MySQL binlog日志通过stdout展示启动Zookeeper[hadoop@hadoop001 ~]$ cd $ZK_HOME/bin[hadoop@hadoop001 bin]$ ./zkServer.sh start启动kafka,并创建主题为maxwell的topic[hadoop@hadoop001 bin]$ cd $KAFKA_HOME//查看kaf
2021-04-27 21:05:38 333 1
原创 60-400-040-使用-binlog-MySQL BinLog入门
1.世界2.概述2.1 binlog介绍binlog,即二进制日志,它记录了数据库上的所有改变.改变数据库的SQL语句执行结束时,将在binlog的末尾写入一条记录,同时通知语句解析器,语句执行完毕.2.2 binlog格式基于语句,无法保证所有语句都在从库执行成功,比如update … limit 1;基于行,将每一次改动记为binlog中的一行.在执行一个特别复杂的update或者delete操作时,基于行的格式会有优势.2.3 Binlog相关变量变量名称变量含义相关语句
2021-04-27 21:05:03 206
原创 60-200-072-使用-命令-MySQL使用mysqldumpslow分析慢查询日志文件
1.概述因为直接分析日志文件是个体力活,因此mysql为我们提供了相关工具mysqldumpslow来对慢查询日志文件进行分析。2.mysqldumpslow命令访问次数最多的10条sql语句/usr/local/mysql/bin/mysqldumpslow -s c -t 10 /home/wwwlogs/mysql_slow_querys.log返回记录最多的20条sql语句/usr/local/mysql/bin/mysqldumpslow -s r -t 10 /home/wwwlog
2021-04-27 21:04:28 211
原创 60-200-070-使用-命令-MySQL慢查询日志
1.概述前言:慢查询日志是MySQL提供的一种日志记录,它记录MySQL中响应时间超过阈值的语句,具体指运行时间超过long_query_time值的sql语句,该sql语句会被记录到慢查询日志中。慢查询日志主要与explain进行联合分析。2.如何开启慢查询日志默认情况下,MySQL数据库没有开启慢查询日志,需要我们手动来设置这个参数。如果不是调优需要,一般不建议开启该参数,因为开启慢查询日志或多或少会带来一定的性能影响。2.1 查看是否开启mysql> show variables li
2021-04-27 21:03:01 139
原创 60-200-060-使用-命令-MySQL事务相关命令
1.查询Mysql 中查询/临时修改事务隔离等级查询事务隔离等级show variables like 'tx_isolation';修改事务隔离等级set tx_isolation = 'READ-COMMITTED';
2021-04-27 21:02:29 149
原创 60-200-050-使用-命令-MySQL explain命令
1.explain使用方法mysql> explain select * from article;+----+-------------+---------+------------+------+---------------+------+---------+------+------+----------+-------+| id | select_type | table | partitions | type | possible_keys | key | key_len |
2021-04-27 21:02:03 160
原创 60-200-040-使用-命令-MySQL查看引擎的命令
1.查看存储引擎mysql> show ENGINES;+--------------------+---------+----------------------------------------------------------------+--------------+------+------------+| Engine | Support | Comment
2021-04-27 21:01:21 229
原创 60-100-032-使用-MySQL大小写敏感的解决方法
1.概述参考:https://www.cnblogs.com/developer_chan/p/9247674.html前言:对于MySQL的大小写敏感的影响,笔者在一个小项目中深刻的体会到:当想要查询一条数据时,总是出来两条或多条,后来发现是大小写敏感造成的原因,本文就该问题提出解决方案。2.MySQL大小写敏感的控制mysql是通过lower_case_table_names参数来控制大小写敏感的,该参数在[mysqld]结点下。具体的含义笔者从官网截了一张图。注:关于lower_ca
2021-04-27 21:00:21 182
Eclipse Formatter 模板 Formatter.xml
2020-11-11
eclipse的hadoop插件
2016-09-14
hadoop学习文档
2016-09-14
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人