Hexo

  • 首页

  • 关于

  • 标签

  • 分类

  • 归档

  • 日程表

  • 阅读排行

  • 搜索

笔记大纲

发表于 2018-12-26 更新于 2019-09-26
本文字数: 436 阅读时长 ≈ 1 分钟
个人总结的笔记大纲目录,帮助大家更好的总结知识,建立属于自己的知识体系。
阅读全文 »

现代操作系统:I/O

发表于 2019-07-17 更新于 2019-09-26 分类于 OS
本文字数: 3.2k 阅读时长 ≈ 6 分钟

IOIO硬件原理IO设备IO设备可以大致分为两类:块设备与字符设备。 块设备将信息存储在固定大小的块中,每个块有自己的地址,所有传输以一个或多个完整的块位单位。每个块可以独立于其他块而读写。硬盘、USB等都是块设备。 字符设备以字符位单位发送或接收一个字符流,而不考虑任何块结构。字符设备不可寻址,也 ...

阅读全文 »

计算机网络:套接字编程

发表于 2019-09-25 更新于 2019-09-26 分类于 计算机网络
本文字数: 4.6k 阅读时长 ≈ 8 分钟

套接字编程简介套接字API可以在两个方向上进行传递:从内核到进程和从进程到内核。 套接字地址简介大多数套接字函数都需要一个指向套接字地址结构的指针作为参数。每个协议族都定义它自己的套接字地址结构。这些结构的名字均以sockaddr_开头,并以对应每个协议族的唯一后缀结尾。 IPv4套接字地址结构IP ...

阅读全文 »

计算机网络:HTTP协议

发表于 2019-02-26 更新于 2019-09-25 分类于 计算机网络
本文字数: 8.2k 阅读时长 ≈ 15 分钟

了解Web及网络基础 Web是建立在何种技术上,HTTP协议是如何诞生并发展的。 Web客户端与服务器是如何通信的,使用HTTP协议访问web。 表示Web内容的资源来自何方。 Web事务是怎样工作的。 HTTP通信所使用的报文格式。 底层TCP网络传输。 不同的HTTP协议变体。 因特网上安装的大 ...

阅读全文 »

RPC:gRPC

发表于 2019-09-25 分类于 架构
本文字数: 4.9k 阅读时长 ≈ 9 分钟

gRPCgRPC是一个高性能、开源和通用的RPC框架,面向移动和HTTP/2设计。 gRPC基于HTTP/2标准设计,带来诸如双向流、流控、头部压缩、单TCP连接上的多复用请求等特。这些特性使得其在移动设备上表现更好,更省电和节省空间占用。 应用适用性有了gRPC,我们可以一次性的在一个.proto ...

阅读全文 »

Linux:常用命令

发表于 2019-08-16 更新于 2019-09-25 分类于 Linux
本文字数: 1.5k 阅读时长 ≈ 3 分钟

Linux常用命令tab键会对Linux命令进行补全。两下tab会以该命令开头的所有命令打印出。 命令基本格式命令提示符 [root@localhost ~]# root:当前登录用户。 localhost:主机名。 ~:当前所在目录。 用户登录的家目录。root用户在/root。 普通用户在/h ...

阅读全文 »

计算机网络:网络层

发表于 2019-04-08 更新于 2019-09-25 分类于 计算机网络
本文字数: 8.6k 阅读时长 ≈ 16 分钟

网络层提出问题 主机到主机通信服务的真实情况是什么?是什么使得它工作起来的呢? 概述网络层实现主机到主机的通信服务,在每一台路由器与主机上都有一个网络层部分。 网络层有多种构造网络层分组交付的方法,比较重要的有:数据报模式和虚电路模式。 三个重要组件:IP协议、路由选择、ICMP协议(报告数据报中 ...

阅读全文 »

计算机网络:运输层

发表于 2019-04-08 更新于 2019-09-24 分类于 计算机网络
本文字数: 8.8k 阅读时长 ≈ 16 分钟

运输层提出问题 两个实体怎么样才能在一种会丢失或损坏数据的媒体上建立可靠的通信。 是什么运输层与网络层的关系 网络层提供了主机之间逻辑通信,运输层为运行在不同主机上的进程之间提供了逻辑通信。运输层协议只工作在端系统中,将来自应用进程的报文移动到网络边缘 网络层只把分组发送到目的主机,但是真正通信的 ...

阅读全文 »

分布式:负载均衡

发表于 2019-09-24 分类于 架构
本文字数: 2.5k 阅读时长 ≈ 4 分钟

LVS背景应用服务器应该设计成无状态的,即应用服务器不存储请求上下文信息,如果将部署有相同应用的服务器组成一个集群,每次用户请求都可以发送到集群中任意一台服务器上去处理,任何一台服务器的处理结果都是相同的。这样只要能将用户请求按照某种规则分发到集群的不同服务器上,就可以构成一个应用服务器集群,每个用 ...

阅读全文 »

分布式:分布式锁

发表于 2019-04-15 更新于 2019-09-24 分类于 架构
本文字数: 6.1k 阅读时长 ≈ 11 分钟

分布式锁为什么需要 效率:使用分布式锁可以避免不同节点重复相同的工作,这些工作会浪费资源。比如用户付了钱之后有可能不同节点会发出多封短信。 数据一致性:不同的机器对共享的数据进行访问,会导致数据的不一致性。而分布式锁可以实现数据的最终一致性。 该模型与并发模型一致,但由于在不同的机器上,因此加锁的难 ...

阅读全文 »

消息队列:RabbitMQ概述

发表于 2018-10-02 更新于 2019-09-24 分类于 架构
本文字数: 11k 阅读时长 ≈ 20 分钟

RabbitMQRabbitMQ是一个消息代理。它的核心思想非常简单:接收并转发消息。你可以把它想象成一个邮局:当你把邮件丢进邮箱时,你非常确定邮递员先生会把它送到收件人手中。在这个比喻中,RabbitMQ就是邮箱、邮局和邮递员。 概述是什么RabbitMQ是流行的开源消息队列系统,用erlang语 ...

阅读全文 »

消息队列:RabbitMQ实战

发表于 2019-09-24 分类于 架构
本文字数: 42k 阅读时长 ≈ 1:17

Hello World使用Java进行实现。 会写两个Java程序。一个发送一条消息的producer和一个接收消息并打印出来的consumer。因为只是刚刚起步,我们会忽略一些Java API的细节,只把精力集中在简单的事情上。消息的内容是“Hello World”。 先决条件假定RabbitMQ ...

阅读全文 »

消息队列:RabbitMQ进阶

发表于 2019-08-26 更新于 2019-09-24 分类于 架构
本文字数: 49 阅读时长 ≈ 1 分钟

RabbitMQ配置集群跨越集群的界限存储机制高阶特性内存、磁盘告警流控镜像队列网络分区参考

阅读全文 »

Redis:数据结构与对象

发表于 2019-03-04 更新于 2019-09-23 分类于 数据库
本文字数: 8k 阅读时长 ≈ 15 分钟

数据结构与对象Redis数据库里面的每个键值对都是由对象组成的: 数据库键总是一个字符串对象。 数据库值是一个对象,对象的实现可以是各种数据结构。 字符串对象: int、raw、embstr。 列表对象: ziplist、linkedlist。 哈希对象: ziplist、hashtabl ...

阅读全文 »

JavaBase:IO

发表于 2019-04-01 更新于 2019-09-23 分类于 Java
本文字数: 9.9k 阅读时长 ≈ 18 分钟
AIO、BIO、NIO
阅读全文 »

JavaBase:泛型

发表于 2018-10-17 更新于 2019-09-22 分类于 Java
本文字数: 2.2k 阅读时长 ≈ 4 分钟
泛型的使用
阅读全文 »

架构:大型网站架构演化

发表于 2019-04-11 更新于 2019-09-22 分类于 架构
本文字数: 8.3k 阅读时长 ≈ 15 分钟

概述如何打造一个高性能、高可用、易扩展、可伸缩且安全的网站。 如何让网站随应用所需灵活变动。 随着互联网的发展,网站应用的规模不断扩大,常规的垂直应用架构已无法应对,分布式服务架构以及流动计算架构势在必行,亟需一个治理系统确保架构有条不紊的演进。 架构单一应用架构当网站流量很小时,只需一个应用,将 ...

阅读全文 »

MySQL:数据库原理

发表于 2019-05-09 更新于 2019-09-19 分类于 数据库
本文字数: 6.6k 阅读时长 ≈ 12 分钟

MySQL数据类型串串数据类型存储串。并有定长串与变长串两种类型。串值需要在引号内(单引号最好)。 定长串:接受长度固定的字符串,长度在建表时指定。(处理定长列速度很快): CHAR:1-255个字符定长串,默认长度为1。 变长串:存储可变长度的文本。有些变长数据类型具有最大的定长,有些完全变长 ...

阅读全文 »

JavaBase:流

发表于 2019-07-28 更新于 2019-09-16 分类于 Java
本文字数: 5.9k 阅读时长 ≈ 11 分钟

流提出问题集合是Java中的重要API,但是集合操作却远远算不上完美。 很多业务逻辑都涉及到类似数据库的操作,例如对菜品按类别进行分组。利用SQL可以声明式地进行这些操作,但是在集合当中,我们只能用迭代器进行操作。 要处理大量元素时,为了提高性能需要并行处理,使用多核架构,但是并行比迭代器还要复杂 ...

阅读全文 »

分布式:分布式事务

发表于 2019-08-17 更新于 2019-09-16 分类于 架构
本文字数: 10k 阅读时长 ≈ 19 分钟

分布式事务提出问题数据的一致性: 数据的并发访问、修改。 多个服务共同完成一个业务请求,保证都完成或失败。发生异常时的数据回滚。 在分布式系统中,为了保证数据的高可用,通常,我们会将数据保留多个副本(replica),这些副本会放置在不同的物理机器上。为了对用户提供正确的CRUD等语义,我们需要保 ...

阅读全文 »

Redis:独立功能的实现

发表于 2019-03-04 更新于 2019-09-12 分类于 数据库
本文字数: 16k 阅读时长 ≈ 30 分钟

主从复制7-5 主从模式: 主、从节点都可以挂从节点。 最终一致性。 广播模式: 全量同步: 传递RDB文件&restore命令重建kv。 传递在RDB dump过程中的写入数据。 部分同步: 根据offset传递积压缓存中的部分数据。 基础Redis中用户可以通过执行SL ...

阅读全文 »

Redis:单机数据库的实现

发表于 2019-03-04 更新于 2019-09-12 分类于 数据库
本文字数: 14k 阅读时长 ≈ 25 分钟

数据库 Redis服务器的数据库实现: 服务器保存数据库的方法。 客户端切换数据库的方法。 数据库保存键值对的方法。 数据库的增删改查的实现方法。 服务器保存键的过期时间的方法。 服务器自动删除过期键的方法。 Redis2.8数据库通知功能的实现。 服务器中的数据库Redis服务器将所有数据库 ...

阅读全文 »

MySQL:InnoDB-锁与事务

发表于 2019-08-14 更新于 2019-09-11 分类于 数据库
本文字数: 13k 阅读时长 ≈ 24 分钟

锁讨论InnoDB如何实现事务的隔离性的。 最大程度地利用数据库的并发访问 确保每个用户能以一致的方式读取和修改数据 将介绍InnoDB存储引擎对表中的数据的锁定,同时分析InnoDB存储引擎会以怎样的粒度锁定数据。 人们认为行级锁的一个神话:人们认为行级锁总会增加开销。实际上,只有当实现本身会 ...

阅读全文 »

Java并发:JUC-Lock

发表于 2019-03-21 更新于 2019-09-10 分类于 Java
本文字数: 10k 阅读时长 ≈ 18 分钟

Lock当内置加锁机制不适用时,作为一种可选的高级功能 Lock ReentrantLock Condition ReadWriteLock LockSupport 概述Lock提供了一种无条件的、可轮询的、定时的以及可中断的锁获取操作,所有加锁和解锁的方法都是显式的。在Lock的实现中必须 ...

阅读全文 »

未命名

发表于 2019-08-10 更新于 2019-09-10 分类于 Java
本文字数: 11k 阅读时长 ≈ 20 分钟

J.U.C - AQS提出问题 synchronized提供了便捷性的隐式获取锁释放锁机制(基于JVM机制),但是它却缺少了获取锁与释放锁的可操作性,可中断、超时获取锁,且它为独占式在高并发场景下性能大打折扣。 是什么java.util.concurrent(J.U.C)大大提高了并发性能,AQS ...

阅读全文 »

Java并发:JMM-并发机制的原理

发表于 2019-07-31 更新于 2019-09-10 分类于 Java
本文字数: 4.7k 阅读时长 ≈ 9 分钟

并发编程volatile当声明共享变量为volatile后,对这个变量的读/写将会很特别。JMM堆volatile专门定义了一些特殊的访问规则。如果一个字段被声明成volatile,Java线程内存模型确保所有线程看到这个变量的值是一致的。 概述 轻量级synchronized 在使用恰当情况下,比 ...

阅读全文 »

Redis:概述

发表于 2019-03-04 更新于 2019-09-09 分类于 数据库
本文字数: 4.9k 阅读时长 ≈ 9 分钟

Redis起源:为了实现一个访客信息追踪网站,展示网站最近的n条访问记录。而当时数据库在负载高时无法很好满足。 概述 高性能Key-Value服务器。分布式内存key-value的数据库。 多种数据结构。 丰富的功能。慢查询、发布订阅等 高可用分布式支持。 Redis具有复制特性扩展读性能,使用 ...

阅读全文 »

Elasticsearch:概述

发表于 2019-08-28 更新于 2019-09-09 分类于 架构
本文字数: 18k 阅读时长 ≈ 33 分钟

Elasticsearch应用适用性 不适合用在那些数据价值不高、对写入性能有要求、数据量大而成本受限的场景中。 缺陷 字段类型无法修改。在需要添加新数据与新字段的时候,如果elasticSearch进行搜索是可能需要重新修改格式。之前的数据需要重新同步,对数据的管理有很多困难。一旦数据格式出现改 ...

阅读全文 »

消息队列:概述

发表于 2018-10-02 更新于 2019-09-09 分类于 架构
本文字数: 6.2k 阅读时长 ≈ 11 分钟

消息队列介绍消息队列特性 业务无关,只做消息分发 FIFO先投递先到达 容灾:节点的动态增删和消息的持久化 性能:吞吐量提升,系统内部通信效率会提高 概述是什么消息是指在应用间传递数据,可以是简单的字符串、JSON等,也可以是内嵌对象。 MQ是指利用高效可靠的消息传递机制进行与平台无关的数据交流 ...

阅读全文 »

计算机操作系统:协程

发表于 2019-03-22 更新于 2019-09-09 分类于 OS
本文字数: 1.2k 阅读时长 ≈ 2 分钟

协程生产者消费者模式1.定义了一个生产者类,一个消费者类。 2.生产者类循环100次,向同步队列当中插入数据。 3.消费者循环监听同步队列,当队列有数据时拉取数据。 4.如果队列满了(达到5个元素),生产者阻塞。 5.如果队列空了,消费者阻塞。 该生产者/消费者模式,但是却并不是一个高性能的实现。为 ...

阅读全文 »
12…7
Heper

Heper

To be awesome
209 日志
17 分类
42 标签
© 2019 Heper | 站点总字数: 1.4m | 站点阅读时长 ≈ 40:56
由 Hexo 强力驱动 v3.9.0
|
主题 – NexT.Gemini v7.2.0