Unix IO 模型分为五种
- 同步模型 synchronous IO
- 阻塞 IO-bloking IO
- 非阻塞 IO-non-blocking IO
- 多路复用IO multiplexing IO
- 信号驱动式IO signal-driven IO
- 异步IO asynchronous IO
注:由于 信号驱动IO 在实际中并不常用,所以这里只提及剩下的四种IO模型。
Unix IO 模型分为五种
当我们在某个分支开发一半的时候,突然想切换到其他分支,但是又不想把进行一半的工作状态进行提交。又想后续回到这个状态。
这个时候就是使用git stash命令的时候。
“暂存“可以获取你工作目录的中间状态——也就是你修改过的被追踪的文件和暂存的变更——并将它保存到一个未完结变更的堆栈中,随时可以重新应用。
简单来说 src 就是 “我想加载这个资源”,而 href 就是 “我想和这个资源建立关联”
src 主要用于元素替换,href 用于和相关文档和外部资源建立相关链接。
href 属性说明本地Web资源和定义的资源建立了链接。
如:1
<link href="style.css" rel="stylesheet"/>
这篇文章主要说一下rebase的黄金法则问题,本篇博文是基于上一篇文章出现的,很多场景都是基于上一篇。建议大家先阅读上一篇。
git 整合来自不同分支的修改主要有两种方法:merge 操作和rebase操作,
merge初学者可能很熟悉。我们今天来主要说一下 rebase 操作,文章结尾会简单说一下 merge 操作的 –no-ff 参数问题。
先简单说一下常见的git 分支管理策略
虽然JAVA程序不用像C和C++程序员一样自己处理内存问题。但是作为一名合格的JAVA程序员还是很有必要去了解一下JVM的内存划分和使用情况的。特别是当你遇到内存溢出的情况时候,你就会发现不掌握JVM的内存知识是玩儿不转滴!
我认为的微服务架构是将系统中的每个服务或者功能独立成一个单独的可独立部署的应用。一般我们都是根据业务的边界来确定服务的边界,并根据单一职责原则保证每个服务都有很强的自治性。服务之间通过网络进行通信,以避免耦合。说白了微服务架构想要达到的目的和软件工程里面的解藕原则是一回事儿。
单一职责原则:把因相同原因而变化的东西聚合到一起,把因不同原因而变化的东西分离开来。
最近在做日志分析工作,日志分析的第一步就是要收集日志,我们选择的使用Flume进行收集。收集之后将日志存储到HDFS上,然后跑Hadoop任务。
我使用的Hadoop和Flume版本分别时2.7.3和1.7。
如果要想把Flume收集到的日志信息存储到HDFS上,Flume需要一些jar包,在Flume安装目录下新建一个plugins.d文件夹,按照Flume的约定,第三方扩展jar包都放在这个目录下,在该目录下新建custom-hadoop目录,在该目录下建立 lib,libext, native
并将以下jar包放到lib目录下