目录

最新文章

PHP对象 前天

本文是PHP对象的笔记,也论述了一些PHP面向对象实现上的得与失。

PHP模式 前天

本文是PHP常用的设计模式的梳理。

PHP部署 前天

本文主要记录PHP的安装与部署相关知识。

ThinkPHP 前天

ThinkPHP的使用笔记.

任务队列和发布订阅 前天

优先级队列

  • 当一个队列中有许多任务仍然没有来得及被消费者及时消费时,如果出现紧急的消息,则不得不等待队列中的任务被一一取出,因此,需要实现一个优先级队列,当优先级队列不为空时,消费者优先取出优先级队列中的任务去执行。

  • BLPOP命令可以同时接收多个键BLPOP key [key ...] timeout,当所有键(列表类型)都为空时,则阻塞,当其中一个有元素则会从该键返回。==如果多个键都有元素则按照从左到右的顺序取第一个键中的一个元素,因此可以借此特性实现优先级队列

测试与文档 1周前

文章无缩略内容。

15-反射-1-概述 1周前

文章无缩略内容。

15-反射-2-应用 1周前

文章无缩略内容。

02-避坑-1-goroutine 1周前

文章无缩略内容。

LInux下C程序开发 1周前

本文记录我在 Linux 下开发 C 程序用到的知识。

现代操作系统 1周前

本文是《现代操作系统》第 4 版的笔记。

Erlang语言教程 3周前

面向消息、面向并发的语言Erlang!!!

RabbitMQ 3周前

RabbitMQ Client PHP 版

Reflect 3周前

文章无缩略内容。

Docker 3周前

设计模式 3周前

文章无缩略内容。

Context 4周前

最简单的一段取消子任务的代码。

Goroutine 4周前

示范 1 :main goroutin同步阻塞等待 3 个 goroutine 结束:

PHP参考 4周前

PHP常用API参考。

高性能服务器编程 4周前

本文是《Linux 高性能服务器编程》一书的编程笔记。

JetbrainsIDE 2020年8月31日

本文包括CLion PHPStorm GolandIDE的配置。

Go函数 2020年8月31日

Go语言有三种类型的函数:普通带名字的函数、匿名lambda函数、方法。

Go面向对象 2020年8月31日

程序等于 数据 + 算法。算法是一个计算步骤,数据是生产资料,也是生产结果。

如何安排数据?

如果只是写一段几百行的小程序,直接存在全局变量里,谁都可以访问,函数也不需要传参。

文本处理 2020年8月31日

  1. find 查找出需要处理的所有文件

  2. cat 将所有文件拼接,成为起始的stdin

  3. grepstdin流里过滤出,自己想要的行

  4. sedstdin流进行 字符串替换,tr 对流进行单个字符式的替换、去重、删除

  5. cutstdin中每一行,切出指定列,awk 也是切出指定多个列,还是可编程命令

  6. sort对所有行排序,排序好后,可以用uniq -c去除相同的行,再sort -nr到序输出

  7. wc -l统计下行数,或者sed '100,$d' 只取前 100 行

大象Thingking_in_UML 2020年8月31日

本文是《大象 thinking in UML》一书的笔记。

Go安装部署 2020年8月31日

文章无缩略内容。

参考 2020年8月31日

Go 语言官网 golang.org

Go 代码包文档 godoc.org

Go 在线入门教程 A tor of Go 英文版

中文版

Go 官方 Package 实现代码文档

Go 官方博客 英文版

Go 官方收录的各种报告的讲稿

搜索 Go 语言项目

Go 语言入门教程

Go 靠谱书推荐

Go 命令教程

Go程序设计语言

Go语言圣经 中译资料

GoWeb编程:Go语言Web编程基础

Go并发编程实战:非常好的go并发原理解读书籍,但语言组织欠佳

Go语言学习笔记:言简意赅,深入浅出,力荐

Go语言高级编程:深入理解Go必备,

开源文档

https://github.com/overnote OverNote地址:
https://github.com/ruyuejun 笔者的地址:

Golang:详尽的Go领域笔记:Go语法、Go并发编程、GoWeb编程、Go微服务等
大前端:包含JavaScript、Node.js、vue/react、微信开发、Flutter等大前端技术
数据结构与算法:以C/Go实现为主记录数据结构与算法的笔记
服务端架构:分布式与微服务笔记,附Nginx、Mysql、Redis等常用服务端技术
Linux:计算机组成原理、操作系统、计算机网络、编译原理基础学科笔记
大数据:大数据笔记
Python与机器学习:Python相关笔记

概述 2020年8月31日

  • 支持主流Web应用的关键功能:索引 复制 分片 丰富查询 灵活数据模型 速度

  • MongoDB能拓展出来的功能: 二级索引Secondary index 范围查询Range query 排序 聚合aggregation 地理空间索引geospatial index

Nginx节点 2020年8月31日

参考 Ubuntu 装机指南,获得一个干净的Server后,下面可以将这个Server做成Web应用节点。

搭建TiDB集群 2020年8月31日

文章无缩略内容。

gitlab 2020年8月31日

文章无缩略内容。

Channel 2020年8月31日

性质

  • 向已经关闭的通道发送数据,会引发panic

  • close已经关闭的channel或值为nilchannel,会引发panic

  • 从已关闭接收数据,返回已缓冲数据或零值

  • 无论收发,nil通道都会阻塞

Go类型系统 2020年8月31日

文章无缩略内容。

调试 2020年8月31日

打印变量

Go语言 2020年8月31日

变量的作用域

变量的生存周期:

  • 包一级声明的变量,生存期和整个程序运行周期一致

  • 局部变量,从该变量声明开始,到该变量不再被引用,被自动回收后结束

  • 函数是可以返回局部变量的,因为 Go 编译器会将返回到函数外的局部变量存储在 heap 上。实际上所有变量都是由 Go 编译器决定存储在 heap 或是 stack,这个称为变量逃逸分析

Interface 2020年8月31日

文章无缩略内容。

00-1-并发简略-概述 2020年8月31日

文章无缩略内容。

00-5-并发简略-协程 2020年8月31日

文章无缩略内容。

SHELL 2020年8月31日

SHELL的操作对象是 文件文本行:执行程序,查找文件,删除文件,批量改变文件名,备份文件、列出目录的文件。

awk 可作为 SHELL 操作 文本列 的补充,更细一个粒度。

SHELL中的调用命令分类:

  • 内建命令 : 不会产生子进程,为了效率才内建,比如cd read echo

  • 函数 : 函数可以直接作为命令一样使用

  • 外部命令 : 在PATH里搜寻并且执行的命令,产生子进程

SHELL 脚本的执行被设计为阻塞式的,从上到下,依次执行,遇见创建子进程的外部命令,一定会等待子进程返回后,才继续往下执行。所有命令返回 0 表示执行成功。

JS 2020年8月31日

目前基于 ECMAScript 5.1 版本。

OOP 2020年8月31日

JS不区分类和实例的概念,而是通过原型(prototype)来实现面向对象编程
原型是指当我们想要创建 xiaoming 这个具体的学生时,我们并没有一个 Student 类型可用。那怎么办?恰好有这么一个现成的对象:

Git工作流程 2020年8月31日

文章无缩略内容。

api接口设计 2020年8月31日

最好的方法是限定几个可以访问 api 的域名,其他域名全部拒绝。
但是Access-Control-Allow-Origin只能设置一个值,所以要多端共用,只有header("Access-Control-Allow-Origin:*");

http 2020年8月31日

1 能够提供 web 内容的东西都是 web 资源,比如一个图片文件,一个图书馆公共网关,因特网搜索引擎。

2 MIME type ,用于描述并标记 web 多媒体内容。
比如:html 格式文档由 text/html 标识,ASCII 文本由 text/plain 类型标识,gif :image/gif ,jpeg 标识:image/jpeg

3 URL 统一资源定位符:方案+服务器地址+ 某个具体资源
如:http ://www.joes-hardware.com/specials/saw-blade.gif

4 http 方法

web 优化 2020年8月31日

文章无缩略内容。

xss 2020年8月31日

  • 将 HTML 标签里的 中括号 ,单引号,引号 之类的特殊字符进行实体字符转换编码

Linux的使用 2020年8月31日

本文是我使用Linux的总结,只涉及服务器日常命令操作,不涉及到开发和原理。

OS 2020年8月31日

计算机是如何启动的?
使用 QEMU 搭建 U-boot+Linux

Unix_linux编程实践教程 2020年8月31日

文章无缩略内容。

进程 2020年8月31日

记录自己所学的关于进程的所有知识。

1.基础 2020年8月31日

磁盘 2020年8月31日

PHP字符 2020年7月31日

概念基础 2020年7月31日

跨域 2020年7月31日

html面试 2020年7月31日

优化 2020年7月31日

UbuntuServer 2020年7月31日

linux系统编程 2020年7月31日

传输层 2020年7月31日

应用层 2020年7月31日

物理层 2020年7月31日

网络层 2020年7月31日

链路层 2020年7月31日

网络工具 2020年7月31日

TiDB 2020年7月31日

如何实现一个数据库 2020年7月31日

数据库设计 2020年7月31日

排序 2020年7月31日

Accelerated 2020年7月31日

Primer 2020年7月31日

概述 2020年7月31日

mongo客户端命令 2020年7月31日

2.程序组织结构 2020年7月31日

编码 2020年7月31日

link 2020年7月31日

Ansible 2020年7月31日

分布式网站 2020年7月31日

Mutex 2020年7月31日

Zap日志库 2020年6月30日

nginx 2020年6月30日

单链表 2020年6月30日

C 2020年6月30日

类型系统 2020年6月30日

从汇编看C语言 2020年6月30日

database 2020年6月30日

Linux系统原理 2020年6月30日

容器 2020年6月30日

PHP反射 2020年6月30日

PHP数组 2020年6月30日

运维命令 2020年6月30日

打造高效的命令行界面 2020年6月30日

Squid 2020年6月30日

补码 2020年6月30日

Elixir语言教程 2020年6月30日

Go标准库 2020年6月30日

02-标识符与变量 2020年6月30日

06-值类型-2-字符串 2020年6月30日

07-类型转换与别名 2020年6月30日

09-引用类型-2-集合 2020年6月30日

12-接口类型-1-接口的使用 2020年6月30日

04-Go常用命令 2020年6月30日

codekissyoung 2020年5月31日

给产品经理讲技术 2020年5月31日

Lua脚本 2020年5月31日

Schemer语言 2020年5月31日

03-数据类型 2020年5月31日

04-流程控制 2020年5月31日

05-运算符 2020年5月31日

06-值类型-1-数值类型 2020年5月31日

06-值类型-3-数组 2020年5月31日

06-值类型-4-结构体 2020年5月31日

08-常量 2020年5月31日

09-引用类型-1-切片 2020年5月31日

09-引用类型-3-指针 2020年5月31日

10-函数-1-函数简介 2020年5月31日

10-函数-2-闭包 2020年5月31日

11-面向对象-1-构造函数与方法 2020年5月31日

11-面向对象-2-三大特性 2020年5月31日

12-接口类型-2-断言与多态 2020年5月31日

13-文件操作-1-写操作 2020年5月31日

13-文件操作-2-读操作 2020年5月31日

14-时间操作 2020年5月31日

00-2-并发简略-多进程 2020年5月31日

00-3-并发简略-多线程 2020年5月31日

00-4-并发简略-非阻塞IO 2020年5月31日

00-6-并发简略-对比并发模型 2020年5月31日

01-goroutine 2020年5月31日

02-channel 2020年5月31日

03-channel的操作 2020年5月31日

04-channel的应用 2020年5月31日

05-select 2020年5月31日

06-Go协程调度模型-1 2020年5月31日

07-Go协程调度模型-2 2020年5月31日

08-同步1-锁 2020年5月31日

08-同步2-等待组 2020年5月31日

08-同步3-条件变量 2020年5月31日

08-同步4-sync包的其他API 2020年5月31日

08-同步5-原子操作 2020年5月31日

00-Go编程哲学 2020年5月31日

01-包 2020年5月31日

02-gomod 2020年5月31日

03-错误处理 2020年5月31日

05-单元测试 2020年5月31日

06-性能测试与监控 2020年5月31日

07-日志管理 2020年5月31日

08-平滑升级 2020年5月31日

09-交叉编译 2020年5月31日

01-初探web开发 2020年5月31日

02-ServeMux与中间件 2020年5月31日

03-JSON与XML解析 2020年5月31日

04-表单操作 2020年5月31日

05-鉴权 2020年5月31日

06-Go操作数据库 2020年5月31日

07-TCP编程 2020年5月31日

08-Go与WebSocket 2020年5月31日

09-Go与微信开发 2020年5月31日

10-Web安全 2020年5月31日

11-Go与加密算法 2020年5月31日

gin-01-基本使用 2020年5月31日

gin-02-路由 2020年5月31日

gin-03-单元测试 2020年5月31日

gin-04-中间件 2020年5月31日

gin-05-理解gin框架-1 2020年5月31日

gin-05-理解gin框架-2 2020年5月31日

gin-06-源码分析-流程梳理 2020年5月31日

gin-07-源码分析-Egine与Context实现 2020年5月31日

01-微服务概述 2020年5月31日

02-protobuf-1-概述与安装 2020年5月31日

02-protobuf-2-语法与原理 2020年5月31日

02-protobuf-3-go与protobuf 2020年5月31日

03-rpc-1-rpc简介 2020年5月31日

03-rpc-2-go原生rpc实现 2020年5月31日

03-rpc-3-grpc与go实现 2020年5月31日

04-服务发现 2020年5月31日

05-etcd-1-etcd概述 2020年5月31日

05-etcd-2-etcd与服务发现 2020年5月31日

05-etcd-3-go操作etcd基础 2020年5月31日

05-etcd-4-go与etcd租约 2020年5月31日

05-etcd-5-go与etcd监听 2020年5月31日

05-etcd-6-go与etcd-事务 2020年5月31日

06-gomicro-1-概述 2020年5月31日

06-gomicro-2-集成grpc与etcd 2020年5月31日

06-gomicro-3-集群 2020年5月31日

http 2020年5月31日

io 2020年5月31日

regexp 2020年5月31日

01-内存分区 2020年5月31日

02-逃逸分析 2020年5月31日

03-内存分配器TCMalloc 2020年5月31日

04-Go内存管理器Mspan 2020年5月31日

05-Go的GC机制 2020年5月31日

06-Go运行时入口 2020年5月31日

01-性能优化 2020年5月31日

03-避坑-2-反射 2020年5月31日

04-避坑-3-nil判断 2020年5月31日

05-避坑-4-map多键索引 2020年5月31日

06-避坑-5-TCP粘包 2020年5月31日

常见样式 2020年5月31日

网页布局 2020年5月31日

16位CPU汇编语言 2020年5月31日

32位CPU汇编语言 2020年5月31日

64位CPU汇编语言 2020年5月31日

编程学习路径 2020年3月31日

CPP_PrimerPlus 2020年3月31日

Effective 2020年3月31日

STL 2020年3月31日

语言导学 2020年3月31日

语言的设计与演化 2020年3月31日

C可变参数函数原理 2020年3月31日

C开发环境 2020年3月31日

C速记卡片 2020年3月31日

GDB调试器 2020年3月31日

Make构建工具 2020年3月31日

字符编码 2020年3月31日

微软c编程 2020年3月31日

有品位的C代码 2020年3月31日

运行环境 2020年3月31日

预处理器 2020年3月31日

MongoDB安全 2020年3月31日

PHP7.2操作MongoDB 2020年3月31日

PHP会话 2020年3月31日

PHP函数 2020年3月31日

PHP异常 2020年3月31日

PHP规范 2020年3月31日

PHP语言 2020年3月31日

Redis-Sentinel 2020年3月31日

redis-cli 2020年3月31日

事务 2020年3月31日

数据类型 2020年3月31日

概述 2020年3月31日

生产环境部署redis 2020年3月31日

配置 2020年3月31日

正则表达式 2020年3月31日

GoMicro 2020年3月31日

K8s_in_action中文版 2020年3月31日

K8s和jenkins 2020年3月31日

MySQL节点 2020年3月31日

PHP节点 2020年3月31日

Prometheus 2020年3月31日

Rsync 2020年3月31日

SRE 2020年3月31日

scss 2020年3月31日

网页加载顺序 2020年3月31日

网页文字 2020年3月31日

规范书写 2020年3月31日

配色表 2020年3月31日

JSON 2020年3月31日

cookie-js 2020年3月31日

jquery 2020年3月31日

js对象类型检测 2020年3月31日

js模块化 2020年3月31日

上传文件 2020年3月31日

事件处理 2020年3月31日

内置对象 2020年3月31日

函数 2020年3月31日

基础 2020年3月31日

对象 2020年3月31日

正则 2020年3月31日

闭包 2020年3月31日

RUSTful 2020年3月31日

css面试 2020年3月31日

数字签名算法RSA 2020年3月31日

Apache 2020年3月31日

AutoTools 2020年3月31日

BeyondCompare 2020年3月31日

ab并发测试工具 2020年3月31日

cmake 2020年3月31日

git 2020年3月31日

ssh 2020年3月31日

线程 2020年3月31日

MySQL使用军规 2020年3月31日

MySQL或Maria DB 管理 2020年3月31日

MySQL技术内幕 2020年3月31日

SQLite 2020年3月31日

SQL注入攻击与防御 2020年3月31日

mysql sql 2020年3月31日

mysqlserver 2020年3月31日

phpmyadmin 2020年3月31日

事务 2020年3月31日

深入理解SQL 2020年3月31日

索引 2020年3月31日

Code-review 2020年3月31日

DDos 2020年3月31日

Virus 2020年3月31日

Worm 2020年3月31日

中间人攻击 2020年3月31日

书籍推荐 2020年3月31日

嗅探 2020年3月31日

架构文章 2020年3月31日

深入理解构建系统 2020年3月31日

程序员的思维修炼 2020年3月31日

端点假冒 2020年3月31日

Game Server 2020年3月31日

服务端架构整理 2020年3月31日

概述 2020年3月31日

游戏服务端开发面试 2020年3月31日

网络游戏服务器开发框架 2020年3月31日

AVL树 2020年3月31日

B+树 2020年3月31日

B树 2020年3月31日

大话数据结构 2020年3月31日

字符串 2020年3月31日

散列 2020年3月31日

数列 2020年3月31日

算法 2020年3月31日

算法竞赛入门经典 2020年3月31日

红黑树 2020年3月31日

跳表 2020年3月31日

CSAPP 2020年3月31日