自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(13)
  • 收藏
  • 关注

原创 深入剖析Kubernetes

kubelet创建Pod时,会先创建一个基础容器pause,Pod里面所有的容器共享一个网络名称空间和文件系统。容器设计模式,一组共享了某些资源的容器,Pod里的所有容器,共享同一个Network Namespace,并且可以声明共享同一个Volume。涉及到资源调度问题,如果容器为最小单位,一个Pod里面多个容器,可能会出现node资源不够导致容器无法全部部署在同一个node上。nodeName:一旦Pod该字段赋值,Kubernetes项目就会认为该Pod已经经过了调度,调度的结果就是赋值的节点名字。

2023-08-07 01:51:43 160

原创 Tomcat静态资源缓存

Tomcat对静态资源做了一层封装WebResource(接口),WebResource对文件基础信息的获取进行了包装再调用,同时对io操作进行了封装,方便直接获取文件内容。获取WebResource时先尝试获取CachedResource,CachedResource为空或者已经失效则获取FileResource,FileResource存在则加缓存CachedResource,一个常规的缓存获取和更新操作。checkIfNoneMatch():对应eTag。是否相等,相等则说明文件没有修改,返回。

2023-07-27 01:33:12 641

原创 如何安全的传输你的密码

如何安全的传输你的密码​ 想要安全的传输,最重要的也是唯一的解决方案就是加密。通用意义上的加密技术分为哈希散列,对称加密和非对称加密三种哈希散列(MD5)哈希散列并不能算是严格意义上的加密技术,因此我把它称为通用意义上的加密技术,哈希散列的通用定义是:通过一些不可逆的哈希算法将原本的明文内容转化为散列后的密文内容。 由于散列算法几乎不可逆,因此攻击者几乎无法通过密文猜测到对应的明文内容缺点:特别容易破解弱口令对称加密(AES、DES)通信双方约定一个一样的对称加密密钥,在传输前客户

2021-03-28 21:20:51 616

原创 SSH远程连接

SSH远程连接linux并实现文件上传和下载(Mac)SSH远程连接服务器ssh远程连接服务器demon:~ didi$ ssh root@服务器ip关闭远程连接(exit)保存服务器地址,进行快速连接(shell)利用scp客户端进行文件(夹)上传、下载- 上传文件(scp 本地文件路径 用户名@服务器ip:目标路径)[root@VM-0-8-centos ~]# scp /usr/tmp/test.txt root@42.192.211.250:didi/des

2021-02-01 14:11:17 172

原创 redis-scan

redis的scan命令?redis是单线程的,因此使用一些时间复杂度为0(N)的命令要十分谨慎,容易阻塞使用keys命令查询key容易阻塞没有limit遍历算法,复杂度O(N)scan命令(SCAN cursor [MATCH pattern] [COUNT count])特点有limit参数,可以控制每次返回结果的最大条数复杂度虽然也是0(N),但分次进行,不会阻塞线程结构redis使用hash作为底层实现,数据+链表的结构,数组的大小为2n(n>=0)。每次

2021-01-11 17:01:09 294

原创 Go语言圣经

Go语言圣经入门Go是一门编译型语言,静态编译go run helloworld.gogo build helldworld.goGo语言编译过程没有警告信息Go语言的设计包含的诸多的安全策略,编译时类型检查检查可以发现大多数类型不匹配的操作程序结构声明:var/const/type/funcGo语言中不存在没有初始化的变量简短变量声明用于函数内部声明一个x变量,那么&x表达式(取x变量的内存地址)将产生一个指向该变量的指针p,p指针保存了x变量的内存地址,*p表达

2020-10-16 14:48:02 970 2

原创 大数据学习

数据处理分类OLTP联机事务处理OLTP 是传统关系型数据库的主要应用用来执行一些基本的、日常的事务处理比如数据库记录的增、删、改、查等等OLAP场景:主要用于分布式数据库,存储在不同地方的海量数据,数据价值随着其体量不断地累积也一直增加,获取其中知识进行数据分析,可以帮助企业执行正确的决策联机分析处理OLAP是一种软件技术,它使分析人员能够迅速、一致、交互地从各个方面观察信息,以达到深入理解数据的目的。它具有共享多维信息的快速分析的特征(FASMI)F是快速性,指系统能在数秒内

2020-10-13 19:35:20 153

原创 Git

GitGit基本操作创建新仓库创建新的文件夹,打开执行git init检出仓库创建本地仓库的克隆版本git clone /path/to/repository远端服务器的克隆版本git clone username@host:/path/to/repository工作流本地仓库由git维护的三棵树组成工作目录:持有实际文件暂存区(Index):临时保存你的改动HEAD:最后一次提交的结果添加和提交可以提出更改,添加到暂存区gi

2020-10-13 19:34:35 164

原创 Docker

Docker基本概念世界领先的软件容器平台优点Docker的镜像提供了除内核外完整的运行时环境,确保了运行环境一致性秒级的启动时间磁盘使用空间少,一般为MB,单机支持上千个容器生命周期镜像(一个特殊的文件系统)镜像是一个特殊的文件系统,除了提供容器运行时所需的程序、库、资源、配置等文件外,还包含了一些为运行时准备的一些配置参数(如匿名卷、环境变量、用户等)镜像不包含任何动态数据,其内容在构建之后也不会被改变镜像构建时,会一层层构建,前一层是后一层的基础。每一层构建完就不会再

2020-10-13 19:32:43 116

原创 Linux

Linux基础Linux文件类型普通文件(-) : 用于存储信息和数据, Linux 用户可以根据访问权限对普通文件进行查看、更改和删除。比如:图片、声音、PDF、text、视频、源代码等等目录文件(d,directory file) :目录也是文件的一种,用于表示和管理系统中的文件,目录文件中包含一些文件名和子目录名。打开目录事实上就是打开目录文件符号链接文件(l,symbolic link) :保留了指向文件的地址而不是文件本身字符设备(c,char) :用来访问字符设备比如硬盘设备文件(

2020-10-13 19:31:54 170

原创 Golang:net/http

一个最简单的http服务器package mainimport ( "fmt" "net/http")func Handler(w http.ResponseWriter, r *http.Request) { fmt.Fprintln(w, "hello world")}func main() { http.HandleFunc("/", Handler) http.ListenAndServe(":8000", nil)}client ——> Request —

2020-10-13 19:29:38 226

原创 Restful Web风格

Restful Web风格理解后端不负责数据的渲染,只负责根据请求返回数据,有前端将数据渲染到浏览器,做到前后端分离REST(Representational State Transfer)表现层状态转化REST指的是一组架构约束条件和原则为设计一个功能强、性能好、适宜通信的Web应用如果一个架构符合REST的约束条件和原则,我们就称它为RESTful架构核心概念资源(Resources)互联网上的所有资源(文件、图片、服务等)资源标识:URI统一资源标识符设计原则:易读

2020-08-02 11:02:07 337

原创 GoWeb

常见关键字andler:处理器HandlerFunc:多路复用器接收用户请求之后根据URL判断使用哪个处理器处理请求,找到后重定向到对应处理器来处理请求ListenAndServe:创建路由,监听端口搭建服务器方法一创建处理器函数HandlerHandlerFunc:可以将一个带有正确签名的函数转换为一个带有方法的Handler创建路由方法二(自己创建处理器)创建结构体MyHandler创建方法ServeHTTP结构体实例化Handler创建路由方法三(详.

2020-07-14 19:51:38 153

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除