Docker Note 基本命令 创建容器 >docker run ubuntu:15.10 /bin/echo "Hello world" >以ubuntu15.10镜像创建一个新容器,然后在容器里执行 bin/echo "Hello world"(容器里面运行一个程序),然后输出结果。 >ubuntu:15.10指定要运行的镜像,Docker首先从本地主机上 2023-11-27 K8s和Docker #Docker
Cookie|Session|Token|JWT 概述 认证(Authentication), 就是验证当前用户的身份,证明"你是你自己" 授权(Authorization),用户授予第三方应用访问该用户某些资源的权限 HTTP是无状态协议,需要去维护一个状态,去告诉服务器请求是那个用户的 Cookie cookie是服务器发送到用户浏览器并保存在本地的一小块用户相关的数据,随着每次请求时自动带上,用于服务器对请求做标识 2023-11-25 认证和授权 #认证和授权
mysql常用操作命令和性能优化 mysql常用操作命令 mysql:单进程多线程模型,一个SQL语句无法利用多个cpu core 一:基本命令 0.查看当前连接数 show global status like 'Thread$'; show variables like "%timeout%"; show variables like "log_%"; 1.查看当前连 2023-11-23 数据库 #mysql
Elasticsearch Note 基本概念 索引Index: >一个索引就是相似特征的文档集合,同比预于mysql的表,mongodb的文档(**保存一个文档doc到elasticsearch中的过程也叫索引(indexing)**) 映射mapping: >处理数据的方式和规则(比如: 字段的数据类型,默认值,分析器,是否被索引,包括设置分片数(number_of_shards)和副本数(number_of_rep 2023-11-23 中间件 #Elasticsearch
GIL/进程线程协程切换 GIL Global interperter Lock全局解释器锁,并不是Python特性,CPython引入的概念,python完全可以不依赖GIL 为什么使用GIL? 每个线程在执行过程中都要先获取GIl,保证同一时刻只有一个线程运行,目的是解决多线程之间的数据完整性和状态同步, 并且因为使用引用技术管理内存,所以某个对象的引用计数不能被两个线程同时增加和减少,不然造成内存泄露,GIL对线程 2023-11-22 Python从入门到放弃 #GIL
RabbitMQ Note 什么是MQ AMQP:即Advanced Message Queuing Protocol,是一个应用层标准高级消息队列协议,提供统一消息服务。是应用层协议的一个开放标准,为面向消息的中间件设计。类似于一种FIFO先入先出队列 为啥要用MQ? >1.高并发的流量削峰 >2.应用解耦 >3.处理异步任务 >4.消息分发 常见MQ: RabbitMQ >由erlang 2023-11-20 中间件 #RabbitMQ
Redis Note 概述 REmote DIctionary Server(Redis) 是一个由 Salvatore Sanfilippo 写的 key-value 存储系统,是跨平台的非关系型数据库。 是一个开源的使用 ANSI C 语言编写、遵守 BSD 协议、支持网络、可基于内存、分布式、可选持久性的键值对(Key-Value)存储数据库,并提供多种语言的 API。 单线程: Redis是单线程的(所谓多线 2023-11-19 数据库 #Redis
设计模式Note 设计模式 在 1994 年,由 Erich Gamma、Richard Helm、Ralph Johnson 和 John Vlissides 四人合著出版了一本名为 Design Patterns - Elements of Reusable Object-Oriented Software(中文译名:设计模式 - 可复用的面向对象软件元素) 的书,该书首次提到了软件开发中设计模式的概念 设计 2023-11-14 软件工程与项目管理 #设计模式