1.6k 1 分钟

# ThreadPoolExecutor 参数说明 ThreadPoolExecutor 构造方法有以下四个,如下图所示: 其中最后一个构造方法有 7 个构造参数,包含了前三个方法的构造参数,这 7 个参数名称如下所示: 12345678public ThreadPoolExecutor(int corePoolSize, int maximumPoolSize, long keepAliveTime, TimeUnit unit, BlockingQueue<Runnable> workQueue, ThreadFactory threadFactory,...
2.5k 2 分钟

# ThreadLocal 内存溢出代码演示 下面我们用代码实现 ThreadLocal 内存溢出的情况,请参考以下代码。 12345678910111213141516171819202122232425262728293031class ThreadLocalTest { static ThreadLocal threadLocal = new ThreadLocal(); static Integer MOCK_MAX = 10000; static Integer THREAD_MAX = 100; public static void main(String[]...
6.7k 6 分钟

# 前言 MySQL 手册 - binary Log # 简介 binLog 日志系统是由一组二进制文件和一个索引文件组成。 binLog 全称是 binary log ,即为二进制日志文件。 binlog 是记录所有数据库表结构变更以及表数据修改的二进制日志。不会记录 Select , show 等操作。 binLog 日志是以事件形式记录,包含了语句执行的消耗时间,正确重现该语句所需的服务器状态信息,错误代码,维护 binlog...
1.2k 1 分钟

本篇文章是我们【深入一点点】部分第一篇文章,既然我们要 “深入一点点”,那么就剥开 MySQL 的外衣~ 先看看 MySQL 的各个 “部位”。 整体来说,MySQL 体系整体分为客户端连接器,服务端,存储引擎三部分。接下来我们就详细的聊聊 MySQL 数据的体系结构这个话题。 本文我们围绕着下面这张图来说。 # 客户端连接器 主要的功能是:负责处理客户端的连接请求,与客户端建立连接。比如我们之前写过的 mysql -p 命令和使用 java 连接数据库的程序就是充当这个角色。 # Server 层 # 连接池 (连接器) 如上图中 connect pool...
2.5k 2 分钟

同学, MySQL 数据库,一般指的 MySQL 服务端。但是 MySQL 自己呢也有一个客户端。就是我们使用 mysql 在 shell 窗口中连接数据库时,其实这就是以一个客户端的身份去连接到 MySQL 的服务端的。 本章,就介绍下常用连接数据库的方式: MySQL client 连接 Java - JDBC 原生的连接 Python 连接 go 连接 # MySQL client 连接数据库 这种连接方式,在上一章 MySQL 数据库的安装中我们已经使用过了。这里呢我们再详细的介绍一下。 首先,我们使用 mysql --help 命令,查看 mysql...
1.5k 1 分钟

官网上有很多种安装方式: https://dev.mysql.com/doc/refman/8.0/en/installing.html 这里我们选择一种比较清晰和简单的安装方式进行安装. # 准备 # MySQL 8.0 的 rpm 安装包 在页面 https://dev.mysql.com/downloads/repo/yum/ 中根据自己的操作系统版本选择需要下载的数据库版本。 (查看操作系统版本使用 uname -a 就可以了,) 这里看到我的操作系统版本是 el7 . 所以我们使用 el7 版本的 数据库就可以了。 下载下来之后,使用下面的命令进行安装数据库: 1rpm -ivh...
8.7k 8 分钟

Kubernetes 容器编排已越来越被大家关注,然而学习 Kubernetes 的门槛却依然很高,主要体现在这几个方面: 集群的安装复杂 Kubernetes 相较于容器,引入了许多新的概念 需要手工编写 YAML 文件 没有好的参考案例可以遵循 今天给大家介绍的这款工具 Kuboard ,是一款免费的 Kubernetes 图形化管理工具, Kuboard 力图帮助用户快速在 Kubernetes 上落地微服务。为了达到此目标, Kuboard 提供了针对上述问题的解决办法: Kuboard 提供 Kubernetes 免费安装文档、免费在线答疑,每天约有 200 位网友参照...
7k 6 分钟

# 服务 (Service) # 解决的问题 Pod 是非永久性资源。 如果你使用 Deployment 来运行你的应用程序,则它可以动态创建和销毁 Pod。 每个 Pod 都有自己的 IP 地址,但是在 Deployment 中,在同一时刻运行的 Pod 集合可能与稍后运行该应用程序的 Pod 集合不同。 这导致了一个问题: 如果一组 Pod (称为 “后端”)为集群内的其他 Pod (称为 “前端”)提供功能, 那么前端如何找出并跟踪要连接的 IP 地址,以便前端可以使用提供工作负载的后端部分? # 定义 Kubernetes Service 定义了这样一种抽象:一个 Pod...
6.1k 6 分钟

# Pod Pod 是可以在 Kubernetes 中创建和管理的、最小的可部署的计算单元。 Pod 是一组容器,一个 pod 的所有容器共享 pod 的网路,存储 以及运行容器的声明。 通常用户需要直接创建 Pod , 而是使用负载资源来替用户管理一组 Pod . 这些负载资源通过配置 控制器 来确保正确类型的、处于运行状态的 Pod 个数是正确的,与用户所指定的状态相一致。 # 控制器 # Replication Controller 和 ReplicaSet ReplicationController(RC)...
9.7k 9 分钟

K8s 中所有的内容都抽象为资源,资源实例化为对象。 # 集群资源的分类 # 名称空间级别 工作负载型资源 ( workload ): Pod 、 ReplicaSet 、 Deployment 、 StatefulSet 、 DaemonSet、Job 、 CronJob ( ReplicationController 在 v1.11 版本被废弃 ) 服务发现及负载均衡型资源 ( ServiceDiscovery LoadBalance ): Service 、 Ingress 、… 配置与存储型资源: Volume (存储卷)、 CSI...