Vincent Blog

我干了什么 究竟拿了时间换了什么

Transport Layer

[TOC] 运输层 面向通信的最高层,用户功能的最底层 传输层是只在主机才有的层次。像网络核心部分中的路由器,在转发的时候,都只用到下三层的功能。 意义 网络层负责将包发送到主机,为主机之间提供逻辑通信。 传输层负责将包发送到进程,为应用进程之间提供端到端的逻辑通信 “逻辑通信”的意思是:从应用层来看,只要把应用层报文交给下面的运输层,运输层就可以把这报文传送...

oAuth2.0 授权码设计理念

oAuth意义 oAuth是open authorization的缩写。本质是在不暴露用户密码的情况下,授权第三方访问资源。 类比生活中的例子 在生活中,我们经常点外卖。也会遇到外卖小哥在送外卖的时候,被保安拦住,得等保安打电话向业主确认真的有点那家外卖之后,才放行或给予临时钥匙的情况。 在这种情况下,外卖小哥就是想要访问资源的第三方,保安就是authorization server...

Same origin policy

SOP

Same Origin Policy / 同源策略介绍 在同源策略下,只有当A、B网页的origin相同的情况下,浏览器才会允许A网页的scripts去访问B网页的数据。 这个策略防止了某些恶意script通过DOM (Document Object Model) 访问另一个网页的敏感信息 Origin的定义 Origin被定义为 URI scheme + host name + p...

Cookies

Cookie介绍 Cookie 保存在客户端中,按在客户端中的存储位置,可分为内存 Cookie 和硬盘 Cookie。 内存 Cookie : 由浏览器维护,保存在内存中,浏览器关闭即消失,存在时间短暂。 硬盘 Cookie : 保存在硬盘里,有过期时间,除非用户手动清理或到了过期时间,硬盘 Cookie 不会清除,存在时间较长。 所以,...

InnoDB存储引擎

架构 InnoDB的多线程模型 Master Thread : 非常核心的后台线程,主要负责 将缓冲池中的数据异步刷新到磁盘 每一秒将redo log buffer刷新到redo log文件 脏页的刷新、合并插入缓冲(INSERT BUFFER)、UNDO页的回收等 ...

Spring Boot 启动过程源码剖析

Spring Boot 启动过程 其实整个 spring boot的启动过程,目标都是为了实例化 application context new SpringApplication 确定实例化的 application context的类型 用classloaderclass去看是否能load到对应的 load到就代表配置...

context switch

context switch

What is context switch Nowadays, we often use computer for multiple tasks at the same time even it just contains 1 CPU. You might think that each CPU is actually able to execute multiple tasks at ...

Redis introduction

Hello Redis

什么是Redis 内存数据库 非关系型数据库 (数据库不需要被预定义) 有5种独特的数据类型 特性 可持久化 可复制 (扩展读性能 & 提供故障转移) 可客户端分片 (扩展写性能) Redis的好处 为什么 redis 单线程模型也能效率这么高? 纯内存操作 核心是基于非阻塞的 IO...

Hello Netty

Introduction of Netty

When Netty is still not existed What is Netty Netty is an asynchronous event-driven network application framework for rapid development of maintainable high performance protocol servers & ...

Hello Kubernetes

Introduction of Kubernetes

Background 以往的大型单体应用由于无法频繁迭代、独立开发等原因,正逐渐被拆分成小的、可独立运行的组件,我们称之为微服务。 微服务彼此之间解耦,所以具备独立开发、部署、升级、伸缩等优点,使得我们可以对每一个微服务实现快速迭代,并且迭代速度与市场需求变化速度保持一致。 但是随着部署组件的增多,配置、管理并保持系统的正常运行变得越来越困难。手动做所有的事情,显然不太可行。于是我们需...