git

工作区,暂存区,本地仓库

基本的 Git 工作流程如下:

  1. 在工作目录中修改某些文件。
  2. 对修改后的文件进行快照,然后保存到暂存区域。
  3. 提交更新,将保存在暂存区域的文件快照永久转储到 Git 目录中。

基础使用

  • 初始化一个新的代码仓库,做一些适当配置;- 开始或停止跟踪某些文件;
  • 暂存或提交某些更新。
  • 让 Git 忽略某些文件,或是名称符合特定模式的文件;
  • 如何既快且容易地撤消犯下的小错误;
  • 如何浏览项目的更新历史,查看某两次更新之间的差异;
  • 如何从远程仓库拉数据下来或者推数据上去。

Read More

系统监控-内存

进程与内存

内存空间的5种数据区

代码段: 存放可执行文件的操作指令,是可执行程序在内存中的镜像,代码段需要组织运行时的非法修改,因此是只读的

数据段: 用来存放可执行文件中已经初始化的全局变量,这里的全局变量包含静态分配的变量

BSS段: 包含了程序中未初始化的全局变量,内存中BSS段全部置零

堆(heap): 用于存放进程运行中被动态分配的内存段,大小动态调整不固定,由malloc、free等内存管理函数进行动态调整

栈: 用户存放临时创建的局部变量,函数被调用时,参数会被加入到发起调用的进程中,函数调用结束后,函数的返回值也会存回栈中。可以把栈看成一个寄存、交换临时数据的内存区。

Read More

系统监控-CPU负载

uptime

直接查看系统负载

1
2
fangzongzhou@fangzongzhoudeMacBook-Pro ~ $ uptime
12:33 up 8 days, 12:38, 3 users, load averages: 1.48 2.26 2.26

w

显示负载同时提供登录用户及操作信息

1
2
3
4
5
6
7
fangzongzhou@fangzongzhoudeMacBook-Pro ~ $ w
12:35 up 8 days, 12:40, 4 users, load averages: 1.82 2.04 2.16
USER TTY FROM LOGIN@ IDLE WHAT
fangzongzhou console - 22 718 8days -
fangzongzhou s005 - 12:33 1 ssh relay
fangzongzhou s001 - 10:55 - w
fangzongzhou s012 - 1:17 1:40 -bash

Read More

幂等

幂等(idempotent、idempotence)是一个数学与计算机学概念,常见于抽象代数中。
在编程中.一个幂等操作的特点是其任意多次执行所产生的影响均与一次执行的影响相同。

f(x) = f(f(x))

理解

幂等是对操作的一种要求规范,不是所有的操作都要实现该规范,有些操作由于本身的操作特点就已经决定了这个操作是幂等操作。

实现

从设计上避免非幂等性功能的产生是我认为最好的解决方式。如果一个需求的实现可以通过设计一个简单有效的幂等接口进行实现可以避免很多问题产生.但实际业务场景是不太可能把所有业务场景都设计成幂等的。

Read More

进程

计算机中运行程序的实体,本身不会运行,是线程的容器。进程为现今分时系统的基本运作单位。

进程是资源分配的最小单位

进程出现的原因

  • 资源利用率
  • 公平性
  • 便利性

进程切换

为了控制进程的执行,内核必须有能力挂起正在CPU上运行的进程,并恢复以前挂起的某个进程的执行。这种行为被称为进程切换。

Read More