![](https://img-blog.csdnimg.cn/20201008092648935.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
进阶之路
文章平均质量分 87
靡不有初 鲜克有终
Supreme_Sir
有道无术,术尚可求也,有术无道,止于术。
展开
-
MySQL5.7与InnoDB架构
一、网络连接层1.1、客户端连接器提供MySQL与应用间的连接功能二、服务层2.1、连接池存储和管理应用与MySQL间的连接2.2、系统管理和控制工具主要功能:数据备份、安全管理、集群管理等2.3、SQL接口接收客户端发送的SQL指令,并返回相应的结果2.4、解析器将SQL解析成“解析树",并检查解析树的合法性2.5、查询优化器将“解析树”转换为执行计划,并与存储引擎交互2.6、缓存用于提高SQL查询效率,如果命中缓存则直接返回结果。缓存主要包括:表缓存、记录缓存、权限缓存、.原创 2021-09-13 00:41:45 · 352 阅读 · 0 评论 -
Kubernetes 集群搭建记录
一、硬件要求CPU ≥ 2核内存 ≥ 3G硬盘 ≥ 50G二、内核修改1. 配置阿里云yum源# 如果你的电脑已经配置了国内 yum 请忽略这个部分# 下载安装wgetyum install -y wget# 备份默认的yummv /etc/yum.repos.d /etc/yum.repos.d.backup# 设置新的yum目录mkdir -p /etc/yum.repos.d# 下载阿里yum配置到该目录中,选择对应版本wget -O /etc/yum.repos.d原创 2021-08-04 02:42:31 · 371 阅读 · 0 评论 -
CentOS安装docker
CentOS 安装 dockerTips:安装 docker 需要使用 root 用户1. 移除老版本 Dockeryum remove docker docker-client docker-client-latest docker-common docker-latest docker-latest-logrotate docker-logrotate docker-engine2. 设置 Docker 仓库# 安装所需软件包yum install -y yum-utils devic原创 2021-07-23 13:53:33 · 265 阅读 · 0 评论 -
Ubuntu安装Docker及常用命令
Ubuntu安装Docker及常用命令原创 2021-07-16 23:42:57 · 1968 阅读 · 4 评论 -
有了Redis缓存就高枕无忧了?可别忘了本地缓存!
一、本地缓存 GuavaCache 介绍Guava 是 Google 提供的一套 Java 工具包,而 Guava Cache 是一套非常完善的本地缓存机制(JVM 缓存)。Guava Cache 的设计来源于 CurrentHashMap,可以按照多种策略来清理存储在其中的缓存值且保持很高的并发读写性能。二、应用场景与优势1、本地缓存的应用场景对性能有非常高的要求不经常变化占用内存不大有访问整个集合的需求数据允许不实时一致2、Guava Cache 的优势原创 2021-04-05 23:34:59 · 450 阅读 · 0 评论 -
RedisCluster 搭建与使用
一、部署环境系统&软件版本VMware Workstation15 ProCentOS-Minimal7.6.1810redis6.0.6Xshell7Xftp7软件列表:redis-6.0.6.tar.gz集群角色:192.168.32.102:7001(主)192.168.32.102:7002(主)192.168.32.102:7003(主)192.168.32.102:7004(从)192.168.32.102原创 2021-04-04 22:54:07 · 377 阅读 · 0 评论 -
FastDFS集群与Http访问部署详解
一、部署环境系统&软件版本VMware Workstation15 ProCentOS7.6.1810fastdfs6.07fastdfs-nginx-module1.22libfastcommon1.0.48nginx1.18.0Xshell7Xftp7二、可能用到的命令# 修改本机ipvim /etc/sysconfig/network-scripts/ifcfg-ens33# 重启网络服务servic原创 2021-03-20 20:06:38 · 830 阅读 · 0 评论 -
MongoDB 分片复制集集群搭建
一、系统环境与集群架构系统&软件版本VMware Workstation15 ProCentOS7.6.1810MongoDB4.4.4准备:将 mongodb-linux-x86_64-rhel70-4.4.4.tgz 导入 /home 并完成解压tar -zxvf mongodb-linux-x86_64-rhel70-4.4.4.tgzmv mongodb-linux-x86_64-rhel70-4.4.4 mongodb集群架构图二、原创 2021-03-18 02:02:35 · 1402 阅读 · 0 评论 -
MHA部署练习流程记录
一、系统环境与软件版本系统&软件版本VMware Workstation15 ProCentOS7.6.1810MySQL5.7.32Xshell7Xftp7Tips: 查看 CentOS 版本cat /etc/redhat-release二、环境架构介绍机器名称IP角色权限MySQL_Master192.168.32.102数据库Master可读写,主库MySQL_Slave1192.16原创 2021-03-06 02:23:49 · 455 阅读 · 2 评论 -
Socket 之 BIO、NIO、Netty 简单实现
一、概念(1)、Socket:套接字(Socket)是通信的基石,是支持 TCP/IP 协议的网络通信的基本操作单元,包含进行网络通信必须的五种信息:连接使用的协议本地主机的IP地址本地进程的协议端口远地主机的IP地址远地进程的协议端口多个 TCP 连接或多个应用程序进程可能需要通过同一个 TCP 协议端口传输数据。为了区别不同的应用程序进程和连接,计算机操作系统为应用程序与 TCP/IP 协议交互提供了 套接字(Socket)接口。应用层可以和传输层通过Socket 接口,区分来自不同应原创 2021-01-16 22:09:40 · 341 阅读 · 0 评论 -
一文搞定动静分离、负载均衡、Session共享
一文搞定动静分离、负载均衡、Session共享原创 2020-12-17 11:51:37 · 411 阅读 · 0 评论 -
打工人也想有个属于自己的 Tomcat
上一篇文章 介绍了作为程序猿必备的 Tomcat 基础知识,这一篇咱们就来说说,如果我想自己写一个简易版的 Servlet 服务器应该怎么做?一、实现思路这个阶段我们要大致把任务进行一下拆分,以便于后面更好的去发现问题、分析问题、解决问题。那么现在静下心想想,Servlet 服务器最需要解决的问题是什么?如何获取请求?获取请求的方式可以选择 Socket,通过监听指定的服务器端口来拦截请求。如何处理请求?反射,肯定是需要用到反射的。项目启动时通过反射去吧 web 项目中的 Servlet原创 2020-12-11 18:04:22 · 238 阅读 · 0 评论 -
程序猿必须知道的关于 Tomcat 的知识点
序身为 Java 程序员,Tomcat 应该算是我们接触的最多的 web 容器了。同时,作为企业生产工具的 “八阿哥” 们,平常只顾着埋头写 BUG,哪有什么时间整理用过的知识点。今天,我将和大家一起梳理一下关于 Tomcat 的相关内容,由浅入深,从入门到放弃。奥利给~!一、HTTP 请求处理流程如上图所示:用户通过浏览器发起请求。浏览器向目标服务器发起 TCP 连接请求。经过三次握手后客户端浏览器与目标服务器成功建立 TCP 连接。(基于 Socket 实现)浏览器生成 HTTP 格原创 2020-12-11 01:35:44 · 439 阅读 · 0 评论 -
一套带走之SSM 逆向工程
序上一篇文章 写了基于 Spring Boot 框架下的 Mybatis、PageHelper、tk.mybatis 以及逆向工程 Mybatis Generator 的使用方法和注意事项。总觉的自己忽略了一部分人,因为有些身处传统行业的同学,是还用不上 Spring Boot 的。所以,今天特意再出一篇基于 SSM 框架下的集成方法,并记录 Mybatis Generator 在 Eclipse 的使用。一、搭建SSM 框架的基本构建应该是每一位 Java 程序猿的必备技能。这里我就不做过多的赘述,原创 2020-11-20 13:51:08 · 424 阅读 · 0 评论 -
开箱即用之Spring Boot
开箱即用之 Spring Boot序对于 Spring Boot 的开箱即用的思想,想必大家也都早有耳闻。相关的各种教程、脚手架也是一抓一大把。而今天博主秉承着删繁就简的思想,记录一下在 Spring Boot 框架下,如何以最快、最简单的方式完成:从数据库逆向工程到持久层、业务层,最后到控制层的实现。一、框架本文中主要用到的框架包括:Spring BootMybatistk.mybatis(通用 Mapper 接口)PageHelper (分页插件)Mybatis Generator原创 2020-11-20 00:17:05 · 490 阅读 · 4 评论 -
仿 Spring 手写 MVC 框架
一、发现问题不知道有没有小伙伴曾经或现在还依然跟我一样,一直迷惑于 Spring MVC 框架是怎么实现只要添加一个 @Controller 就能把普通的类变成 Servlet 的?或者说怎么就把一个请求转进了普通的一个类里的?为什么我的类就必须继承 HttpServlet 还必须配置 @WebService 注解或配置进 web.xml ?如果是我,我该怎么实现?带着这几个疑问,我们一起来梳理一下解决思路。二、思路分析HttpServlet 是不是必须继承的?答:当然是必须的。因为这是 web原创 2020-11-02 11:47:34 · 280 阅读 · 1 评论 -
Spring MVC 复习笔记
一、web.xml 中的注意事项web.xml<!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" "http://java.sun.com/dtd/web-app_2_3.dtd" ><web-app> <display-name>Archetype Created Web Application</display-name>原创 2020-10-29 00:51:16 · 303 阅读 · 0 评论 -
Spring AOP 复习笔记
一、AOP 相关概念AOP 含义:Aspect Oriented Programming ⾯向切⾯编程/⾯向⽅⾯编程。AOP 的应用场景:日志、鉴权、安全等。AOP 实现方式:JDK 动态代理或 cglib 动态代理。JoinPoint(连接点)含义:简单理解就是某方法在被执行前、被执行后(方法顺利执行后)、执行异常时、执行结束时(无论异常与否都执行)。这几个特殊的时机点。即:你的功能增强代码可以放置的位置点。连接点是一种候选点,即:我们可以选择也可以不选择这个连接点。是所有可添加功能增强代码位置原创 2020-10-21 00:33:04 · 180 阅读 · 0 评论 -
Spring-IoC 复习笔记
一、Spring IoC 容器的启动想要学习 Spring IoC 一定是需要先知道怎么把 Spring 容器启动起来。根据开发环境的不同,Spring IoC 容器的启动方式也不同。JavaSE 环境下容器的启动方式有三种,分别为:ClassPathXmlApplicationContext:从 classpath(类的根路径)下加载配置⽂件(推荐使⽤)FileSystemXmlApplicationContext:从磁盘绝对路径上加载配置⽂件(不推荐)AnnotationConfigAppl原创 2020-10-19 17:30:56 · 231 阅读 · 0 评论 -
仿 Spring 手写 IoC、AOP 框架
一、场景还原简单的后台服务方案:创建一个 Bean ----> 来个 BeanDao 再来个 ----> BeanService 里面通过 new BeanDao() 来调用持久层方法,最后来个 ----> BeanServlet 通过 new BeanService() 来调用业务层。相信上面的代码各位大佬都曾写过。那么这些伪代码里都存在哪些问题呢?耦合严重,所有的对象引用都直指具体的实现类。编码繁琐,开发者需编写大量代码去实例化对象被为其属性赋值。修改困难,当面对需求修改原创 2020-10-15 17:00:16 · 391 阅读 · 2 评论 -
CRUD 程序猿的 Mybatis 进阶
一、Mybatis 配置文件 sqlMapConfig.xml<?xml version="1.0" encoding="UTF-8" ?><!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config 3.0//EN" "http://mybatis.org/dtd/mybatis-3-config.dtd"><configuration> <!--propert原创 2020-10-06 23:27:08 · 307 阅读 · 0 评论 -
仿照 Mybatis 手写 ROM 框架
一、问题描述1. 代码片段2. 问题清单:如上图所示,传统的 JDBC 连接存在下列问题:创建数据库连接存在硬编码问题频繁的数据库连接与释放组织查询 SQL 存在硬编码问题SQL 参数个数的变化会导致代码的修改,不易维护封装结果集存在硬编码问题,POJO 属性的修改会带来结果集封装代码的变更,不易维护3. 解决思路将数据库配置信息及 SQL 语句转移至 xml 中(解决硬编码问题)使用数据库连接池来获取数据库连接(解决频繁操作数据库连接问题)通过反射、自省功能对结果集进行封装原创 2020-09-26 23:26:25 · 1144 阅读 · 0 评论