数据传输方式汇总
json
JSON是一种更轻量级的基于文本的编码方式,经常用在client/server端的通讯中。
yaml
YAML类似JSON,新的特性更强大,更适合人类阅读,也更紧凑。
Mysql 基础知识二
一、基础知识
- 表存储引擎必须用InnoDB
- 字符集必须使用utf8mb4 (utf8不是真utf8)
- 禁止使用存储过程、视图、触发器、Event
- 命名规则:库、表、字段列都必须小写,用 _ 分隔
- 表必须有主键,默认推荐使用unsignd整形,命名为id,自增
- 字段必须为not null,原则上每个字段必须有默认值
- 合理建立索引
- 三范式与反范式(业务出发,权衡利弊、适当冗余)
- 分库分表:垂直拆分(分库)、水平拆分(分表) 分表:垂直分割(一表变多表,结构相同)、水平分割(大表拆小表)
- 数据库集群:主从架构
二、事务、锁、索引,数据库性能的死亡三角
A. 事务
Iris 框架
Golang 面试题
Go 基础知识
Go 简介
Go 语言起源 2007 年,并于 2009 年正式对外发布,其是谷歌公司的一个开源项目。Go 语言并不是凭空而造的,而是和 C++、Java 和 C# 一样属于 C 系。
Go 语言本身是由 C 语言开发的,而不是 Go 语言。但 Go 在 1.5 版本开始自举。
队列与栈
队列
|
|
栈
|
|
queue介绍
在python中,多个线程之间的数据是共享的,多个线程进行数据交换的时候,不能够保证数据的安全性和一致性,所以当多个线程需要进行数据交换的时候,队列就出现了,队列可以完美解决线程间的数据交换,保证线程间数据的安全性和一致性
经典案例
php vs go
php 优点
- array 结构无所不能,很强大
php 缺点
- 弱类型语言,同样的逻辑,写法过于多样,导致后期维护成本高。比如参数可定义可不定义,返回值可定义可不定义
- 语言自身没有很好的支持并行运算
go 优点
SQL 面试题
设计模式
设计模式简介
设计模式一套被反复使用,多数人知晓的代码设计经验的总结,实现可重用代码,使代码更容易被理解,保证代码可靠性。
总体来说,设计模式分为三大类:
- 创建型模式(五种):单例模式、工厂模式、抽象工厂模式、创建者模式、原型模式
- 结构型模式(七种):适配器模式、代理模式、装饰器模式、外观模式、桥接模式、组合模式、享元模式
- 行为型模式(十一种):策略模式、模板方法模式、观察者模式、迭代子模式、责任链模式、命令模式、备忘录模式、状态模式、访问者模式、中介者模式、解释器模式。
算法执行的步骤是稳定不变的,但是具体的某些算法可能存在变化的场景。