计算机系统的软件架构是构建这个系统所需要的一组结构,包括软件元素、它们之间的关系以及两者的属性。其实质是应用程序的架构是将软件分解为元素和这些元素之间的关系。分解的重要性体现在如下2点:

  1. 它促进了劳动和知识的分工,它使具有特定专业知识的人们(团队)能够就应用程序能够高效的协同工作。
  2. 它定义了软件元素的交互方式。

应用程序有2个层面的需求,第一类是功能性需求,它可以通过任意性架构实现,甚至是[……]

阅读全文

今天在docker容器中使用centos7官方镜像启动了一个容器,在安装ssh服务后,想使用systemctl启动服务,结果报下列错误:

[root@eb58e337fdc7 /]# systemctl
Failed to get D-Bus connection: Operation not permitted

百度搜了一下,网上有的文章说加一个--privileged参数即可解决,于是重[……]

阅读全文

协议概述

 两阶段提交协议(two phase commit protocol,2PC)可以保证数据的强一致性,许多分布式关系型数据管理系统采用此协议来完成分布式事务。它是协调所有分布式原子事务参与者,并决定提交或取消(回滚)的分布式算法。同时也是解决一致性问题的一致性算法。该算法能够解决很多的临时性系统故障(包括进程、网络节点、通信等故障),被广泛地使用。但是,它并不能够通过配置来解决所有的故[……]

阅读全文

Bloom Filter是由Bloom在1970年提出的一种多哈希函数映射的快速查找算法。通常应用在一些需要快速判断某个元素是否属于集合,但是并不严格要求100%正确的场合。

Bloom Filter是一种空间效率很高的随机数据结构,它利用位数组很简洁地表示一个集合,并能判断一个元素是否属于这个集合。Bloom Filter的这种高效是有一定代价的:在判断一个元素是否属于某个集合时,有可能会把不[……]

阅读全文

Oracle 数据库的存储结构

高水位:High Water Mark (HWM),是段(Segment)的一个指标,界定了段(Segment)曾经配置过的 block 水位。随着数据的 insert,所使用段(Segment)的数据块(data block)也不断增加,这时候高水位(HWM)也随着上升。当数据被删除后(无论是 delete 还是 truncate table)虽然被占用的数据块[……]

阅读全文

今天试着在centos7中安装nginx-1.16.1,由于是在docker中的centos7容器中安装,因nginx需要编译安装,所以需要先安装一些依赖的编译库,我一口气把需要编译依赖都安装了:

yum install -y gcc gcc-c++ pcre pcre-devel openssl openssl-devel gd gd-devel

解压nginx压缩包

tar -zxvf[......]

阅读全文

查看端口使用情况:netstat -tln
显示tcp,udp的端口和进程等相关情况:netstat -tunlp
查看指定端口号的进程情况:netstat -tunlp|grep 端口号
查看端口被哪个进程占用: lsof -i:8080
重启网络服务:service network restart
剪贴文件:mv sourcefilePath targetfilePath
复制文件夹:cp -[……]

阅读全文

Copy files/folders between a container and the local filesystem
在容器和本地文件系统之间复制文件/文件夹

docker cp

Usage:  docker cp [OPTIONS] CONTAINER:SRC_PATH DEST_PATH|-
从容器中复制文件或目录到执行命令所在机器的指定路径
        docker cp[......]

阅读全文