微服务学习:理念

一、 是什么 一种架构模式,将一个很大的代码库拆分成若干个小模块,一个模块即一个服务,符合单一职责,对外提供服务,服务之间通信基于网络,某一个服务内部的修改不会影响服务调用方的变动。 1.1 优势 编程语言没有限定,不同模块可以使用单独的技术语言; 各个模块独立,升级或者出现问题,不会影响其他模块,不会有扩散性; 易于扩展,可以给某个单独模块提升扩展; 1.2 问题 微服务是基于分布式的系统,

- 阅读全文 -

MySQL查询的执行过程概述

一、MySQL查询时的简要执行过程 连接器 查询缓存 解析器 预处理 优化器 执行器 二、连接器 TCP 三次握手; 校验用户的账号密码; 根据用户分配权限,对用户修改权限不影响当前会话; 三、查询缓存 查询缓存(Query Cache)以 key-value 键值对的形式存储。key 就是 SQL 语句,必须完全对应。同时如果对数据表内的一条数据进行更新,就会导致整张表的查询缓存失效。

- 阅读全文 -

暴力破解到动态规划(一)

题目一 单元测试 package testing import ( "github.com/go-playground/assert/v2" "go_learn/alt/dp/q1/a1" "go_learn/alt/dp/q1/a2" "go_learn/alt/dp/q1/a3" "testing" ) var N = 7 var M = 2 va

- 阅读全文 -

设计原则学习 - Go语言实现

1. 概览 学习设计模式的前提需要先了解设计原则,下面是学习设计模式过程中的学习记录和理解。 对于面向对象软件系统的设计而言,在支持可维护性的同时,提高系统的可复用性是一个至关重要的问题,如何同时提高一个软件系统的可维护性和可复用性是面向对象设计需要解决的核心问题之一。在面向对象设计中,可维护性的复用是以设计原则为基础的。每一个原则都蕴含一些面向对象设计的思想,可以从不同的角度提升一个软件结构的

- 阅读全文 -

Redis 集群 配置概述

起始配置6台 redis,3台 master。 起始配置 配置文件 bind 0.0.0.0 daemonize yes protected-mode no port 6381 logfile "/myredis/cluster/cluster6381.log" pidfile /myredis/cluster6381.pid dir /myredis/cluster dbfilename dum

- 阅读全文 -

MySQL学习 - DML 增删改

DML 增删改 增加 字段顺序一一对应添加 按照字段声明的先后顺序插入 INSERT INTO table_name VALUES(v1,v2,v3...); INSERT INTO empl VALUES(1,'xxcheng','2023-08-01',5000.0); 指定字段名添加 INSERT INTO table_name(field_1,field_2,field3...)

- 阅读全文 -