摘要: 啤酒尿布 沃尔玛根据它每天记录的大量的客户消费数据进行分析,发现了,购买了啤酒的顾客更可能同时购买尿布。所以他们把尿布和啤酒放到一块,结果大幅度的提高了这两者的销售额。 购买尿布和购买啤酒看上去毫无关系,但是通过用户购物数据作为样本发现了其中的关联和规律,对于沃尔玛而言无需知道规律背后的本质,只需要 阅读全文
posted @ 2018-02-07 11:43 dy2903 阅读(183) 评论(0) 推荐(0) 编辑
摘要: TCP/IP协议 以太网的出现,给系统的互联带来方便的方式,每个节点安装一块以太网适配器,上层程序只要将发送的数据以及目的MAC地址告诉以太网卡,就可以完成通信过程。 但是实际上,以太网不能直接被应用程序用来收发数据的,因为以太网是一个 没有传输保障的网络。 表现在: 不会对数据帧进行校验纠错。 如 阅读全文
posted @ 2018-02-07 10:22 dy2903 阅读(324) 评论(0) 推荐(0) 编辑
摘要: 任何系统之间,如果需要通信,都需要一套自己的协议系统。这个协议系统一般要定义互相通信的语言,以及硬件。 OSI是被提取抽象出来的系统间通信模型,中文意思是“开放式系统互联”,是描述多个系统之间交流的通用模型。 OSI模型 OSI初步 在讲OSI之间,我们首先看一个例子,PC a向PC b发送数据包的 阅读全文
posted @ 2018-02-06 15:27 dy2903 阅读(401) 评论(0) 推荐(0) 编辑
摘要: 磁盘阵列 JBOD 在过去一台服务器只能放两三块盘,远远不能满足要求,所以可以把盘放到主机的外面。也就是说专门拿一个箱子,所有磁盘都放在机箱里面,而且独立电源和散热,接口方面,内部其实就是一条SCSI线缆,这就形成了 磁盘柜(Just a Bound Of Disk , JBOD) ,顾名思义,实际 阅读全文
posted @ 2018-02-05 15:33 dy2903 阅读(2520) 评论(0) 推荐(0) 编辑
摘要: RAID 上一章介绍了磁盘的基本原理,我们知道一块磁盘的容量和速度是有限的,对于一些应用来说,可能需要几个TB的大小的来存放数据,我们必须要制造更大单盘容量的磁盘吗?实际上,可以使用多块磁盘并行起来解决这个问题,这就是RAID技术。 :独立的磁盘组成具有冗余特性的阵列。Redundant Array 阅读全文
posted @ 2018-02-05 15:33 dy2903 阅读(1250) 评论(0) 推荐(1) 编辑
摘要: 什么时候需要用到数据仓库? 一个公司里面不同项目可能用到不同的数据源,有的存在MySQL里面,又的存在MongoDB里面,甚至还有些要做第三方数据。 但是现在又想把数据整合起来,进行 数据分析 。此时数据仓库(Data Warehouse,DW)就派上用场了。它可以对多种业务数据进行筛选和整合,可以 阅读全文
posted @ 2018-02-05 10:17 dy2903 阅读(323) 评论(0) 推荐(0) 编辑
摘要: Git是什么 Git能解决什么问题 Git能解决什么问题?答曰: 版本控制。 经常写文档的同学应该比较清楚,对某个文档修改了一点以后,又不想直接覆盖,这样的话,后面发现写错了,就恢复不回来。所以就复制出很多文件名不一样,但是内容差不多的文件。 这样也不是不可以,但是问题在于,Copy了很多份,太消耗 阅读全文
posted @ 2018-02-04 11:51 dy2903 阅读(232) 评论(0) 推荐(0) 编辑
摘要: cmder是什么 Windows发展了这么年,UI啊、性能啊做了若干的变化,无奈命令行还是一如既往的差。 这个超级丑陋的界面,我是不能忍的。 而且还不支持 这样的快捷键,反正各种不习惯。 有人说命令行现在谁用呢?那可不一定,首先做开发的一般都会用到,比如说Python,我直接在命令行里面把一些简单的 阅读全文
posted @ 2018-02-03 12:41 dy2903 阅读(13263) 评论(0) 推荐(1) 编辑
摘要: 为什么要文件系统 在这篇 "【大话存储】学习笔记(一),磁盘" 我们说到了硬盘的原理,如果要从硬盘里面取数据,需要告诉控制器从哪里取,取多长等关键信息,如果这个步骤由应用来做,则实在太磨人了。 所以操作系统提供了一个 ,对我们来说,只需要记住文件名和路径,其他的与磁盘块打交道的事情就交给这个中间层来 阅读全文
posted @ 2018-01-27 20:54 dy2903 阅读(539) 评论(0) 推荐(0) 编辑
摘要: 本文为《大话存储》的读书笔记。 计算机的IO世界 总线 总线的概念 计算机中所有的IO都通过共享总线的方式来实现。 总线实际上就是一条或多条的物理导线。密密麻麻的印到电路板上,而且为了避免高频振荡的干扰,一般都会分组印刷到不同的电路板上,然后压合起来。 总线的分类 PCI总线 是目前x86服务器普遍 阅读全文
posted @ 2018-01-27 18:00 dy2903 阅读(1739) 评论(0) 推荐(0) 编辑
摘要: Technorati 标签: 分布式爬虫 Linux环境下安装mysqlsudo apt-get install mysqlserver 然后可以查看是否启动 ps aux | grep mysqld 登录mysql -uroot -proot​ 如何让虚拟机中的mysql被外界访问到。sudo vim /etc/mysql/mysql.conf.d/mysqld.cnf 里面的bind-add... 阅读全文
posted @ 2018-01-27 11:59 dy2903 阅读(183) 评论(0) 推荐(0) 编辑
摘要: 为什么要用正则表达式 对字符串进行操作几乎是每种编程语言中最重要的功能之一。很简单就可以理解,因为人类进行信息传播主要靠的是文字,也就是字符串,但是这么多信息并不完全是我们所要的,所以我们会通过编程来 提取或者验证 字符串的部分。 正则表达式就是用来 匹配字符串 的工具,其实它定义了一套语法,用若干 阅读全文
posted @ 2018-01-27 11:46 dy2903 阅读(293) 评论(0) 推荐(0) 编辑
摘要: 信息系统 现在需要开发一套信息系统, 记录系里的学生、课程、 还有选课信息。比如 学生信息:[学号,姓名,性别,身份证号,入学日期,班级] 课程信息:[课程号,课程名,授课老师] 选课:[学号,课程号,成绩] 可以使用三个独立的文本文件来存储这些信息,比如学生信息: 然后 只需要读写这三个文件就可以 阅读全文
posted @ 2018-01-27 11:41 dy2903 阅读(810) 评论(0) 推荐(0) 编辑
摘要: 范式 为什么要用范式 我们在学习关系型数据库的时候一定有感觉,关系数据库不就是一个二维表格吗,那么数据库有什么用? 数据库看上去像一个表格,其实不然,比如如下的 ,一个订单号X2001对应一个用户,但是还对应了两行产品,非常不规范。 要想把这个表规范化,可以使用 。引入范式的主要目的在于: 解决冗余 阅读全文
posted @ 2018-01-27 11:40 dy2903 阅读(481) 评论(0) 推荐(0) 编辑
摘要: 多CPU架构演进 对称多处理器结构:(SMP,Symmetric Multi Processor) 服务器最开始的时候是单CPU,然后才进化到了双CPU甚至多CPU的SMP架构。所谓 指的是多路CPU无主次,共享内存、总线、操作系统等。 此时每个CPU访问内存任何地址所耗费的时间是相等的。 所以也称 阅读全文
posted @ 2018-01-24 13:42 dy2903 阅读(2000) 评论(0) 推荐(0) 编辑
摘要: 什么是Docker 在 "容器技术" 中,我们讲到了Docker就是一个应用容器引擎,可以将应用及依赖打包,然后发布到Linux上。相对于虚拟机,它开销更小,而且还有一定的隔离性。 Docker基本概念 镜像image 类似于虚拟机镜像,是一个只读的模板,可以通过它来创建Container。 一个镜 阅读全文
posted @ 2018-01-22 21:03 dy2903 阅读(312) 评论(0) 推荐(0) 编辑
摘要: Technorati 标签: 容器 什么是容器 在一台 16 核 32G 内存的虚拟机上,需要跑 500+ 个用户的网站应用,我们当然希望网站的资源相互隔离,这样一个应用崩溃了,也不会影响其他的应用的运行。 要实现资源的隔离,最容易想到的当然是开若干虚拟机,在其上安操作系统,然后搭建应用。然而一台主机上,一般就能开10~15个虚拟机,如果在这台机器上开 500 个虚拟机,这台服务器估计早就不堪重负... 阅读全文
posted @ 2018-01-22 20:36 dy2903 阅读(167) 评论(0) 推荐(0) 编辑
摘要: MemCache是什么? MemCache是一种分布式缓存系统。同样,分布式缓存系统也是为了解决并发量逐日增加的现状的,当大量读写请求涌向 数据库 ,而数据库的文件大都放在磁盘上,速度太慢,难以应对。所以一般而言都是在数据库之间加一层缓存,而且为了分担压力,同样使用多台服务器的内存进行分担,也就出现 阅读全文
posted @ 2018-01-21 15:36 dy2903 阅读(203) 评论(0) 推荐(0) 编辑
摘要: Technorati 标签: 负载均衡 在之前的文章分布式与集群中有提到为什么要负载均衡。下面来谈一下负载均衡的相关技术 为什么需要负载均衡 对一个业务系统来说,如果负载过重,比如说访问量过大的时候,要么选择配置更高性能的服务器,要么使用多台服务器来进行负载。 所以可以将同一个系统部署多份到若干服务器上,然后负载均衡就是让若干台主机上的工作均衡一点,每台主机都帮忙分担一点,而不是让一台主机全部... 阅读全文
posted @ 2018-01-21 14:27 dy2903 阅读(168) 评论(0) 推荐(0) 编辑
摘要: Technorati 标签: 分布式,负载均衡,科普 本文整理自分布式与集群 分布式 有3个系统,他们所做的业务不同,被部署在独立的机器上运行。这三个系统之间可以互相调用,一起来完成公司的业务流程。 那么什么是分布式系统呢?将不同的业务分布在不同的地方就构成了分布式系统。如下图所示,client只通 阅读全文
posted @ 2018-01-21 10:58 dy2903 阅读(171) 评论(0) 推荐(0) 编辑
摘要: Technorati 标签: 微服务 本文根据什么是微服务改编而得。 单体架构的问题 下图是一个单体架构的系统。 所有的业务子模块都集成在一个很重的JVM进程中。好处在于便于管理,所有的代码都在同一个项目中,但是当产品规模变大了以后,问题也来了。 项目过于臃肿: 资源无法隔离:所有功能模块都依赖于同样的数据库、内存等资源,有可能因为一个功能模块对资源使用不当,而造成整个系统的崩溃。 无法灵活... 阅读全文
posted @ 2018-01-19 10:06 dy2903 阅读(212) 评论(0) 推荐(0) 编辑
摘要: Technorati 标签: DevOps 文章由什么是DevOps?总结而成。 传统开发和运维合作的困境 对于运维部门来说,不懂开发逻辑,而且团队内部的侧重不同,有些负责数据库脚本执行,有些负责Web服务器,如果每次上线前都需要把所有的人来过来开会,熟悉操作步骤。 当然最根本的原因在于软件本身太复 阅读全文
posted @ 2018-01-19 09:53 dy2903 阅读(202) 评论(0) 推荐(0) 编辑
摘要: Technorati 标签: TCP,IP,网络 在从输入网址到浏览器返回内容(一),服务器处理篇谈了Web服务器、应用服务器、浏览器在整个过程中都做了什么,本章主要谈一下浏览器与服务器建立连接过程中的TCP,它是HTTP的基础。 第一章 基础概念 1.1 为什么需要封装 我们要寄信,除了信的内容, 阅读全文
posted @ 2018-01-18 16:55 dy2903 阅读(352) 评论(0) 推荐(0) 编辑
摘要: Technorati 标签: 网络,HTTP 本文基于从输入网址到浏览器呈现页面内容,中间发生了什么?整理而得。 从输入网址到浏览器返回内容 浏览器与服务器建立连接 当你在浏览器中输入了网址(www.baidu.com)以后,浏览器首先要把www.baidu.com的IP地址获取到。也就是发一个UD 阅读全文
posted @ 2018-01-17 20:43 dy2903 阅读(325) 评论(0) 推荐(0) 编辑
摘要: Technorati 标签: 操作系统,原理 现代操作系统比如,Linux,Windows等,都是支持“多任务”的操作系统。所谓多任务,指的就是操作系统可以同时运行多个任务。也就是在同一台电脑上,可以同时上网、听歌、使用Word,在过去单核的CPU上都已经可以支持多任务,实现的方式是操作系统让各个任务轮流交替执行。,比如任务1执行0.01秒,切换到任务2,任务2执行0.01秒,再切换到任务3,执行... 阅读全文
posted @ 2018-01-14 11:25 dy2903 阅读(386) 评论(0) 推荐(0) 编辑
摘要: Technorati 标签: 操作系统,原理 第一章 引论 什么是操作系统?对用户而言,操作系统是用户与硬件接口,它将硬件资源抽象出来,方便调用。对硬件而言,它是计算机资源的调度者。所以 操作系统:可以提供给其他程序方便编写并运行的程序。 由程序来运行程序,而不是程序自己来运行,这是操作系统提供的虚 阅读全文
posted @ 2018-01-13 11:44 dy2903 阅读(545) 评论(0) 推荐(0) 编辑
摘要: 第一章 计算机的IO世界 1.1 总线 计算机中所有的IO都通过共享总线的方式来实现。 总线实际上就是一条或多条的物理导线。密密麻麻的印到电路板上,而且为了避免高频振荡的干扰,一般都会分组印刷到不同的电路板上,然后压合起来。 PCI总线是目前PC机与x86服务器普遍使用的南桥与外设连接的总线技术。 阅读全文
posted @ 2018-01-13 09:56 dy2903 阅读(1509) 评论(0) 推荐(0) 编辑
摘要: Technorati 标签: 虚拟化,云计算 H3C CAS为H3C基于KVM开发的云管理平台,主要用于计算虚拟化,本文根据H3C公开资料整理,主要介绍CAS相关技术。 第一章 CAS是什么 CAS是H3C基于KVM开发的云管理平台,那么KVM是什么?CAS相对于KVM又有什么改进。 1.1 为什么 阅读全文
posted @ 2018-01-12 15:26 dy2903 阅读(3093) 评论(0) 推荐(0) 编辑
摘要: Technorati 标签: 云计算,虚拟化 本文基于网上的资料整理而成。 第一章 服务器虚拟化概述 1.1 为什么需要服务器虚拟化 如果物理机上只部署一种业务,资源利用率太低,不利于节约成本。如果说生产区域需要使用物理机来保证稳定性,对于开发测试区使用虚拟机不但可以节约有限的物理机资源,还可以快速 阅读全文
posted @ 2018-01-12 13:31 dy2903 阅读(1981) 评论(0) 推荐(2) 编辑
摘要: Technorati 标签: 存储 第一章 以太网 第二章 共享总线式以太网 2.1.1 连起来 最简单的连接多节点的方法:总线技术。总线就是一个公共的媒介,每个节点都连在上面,所以每个节点的信号,其他节点都会感知到。 早期的Hub就是基于总线模型,它将每台PC连接到一个接口上,所有接口通过集线器的中继电路连接在一起。为什么要使用中继器,为什么不直接物理连接在一起呢? 传输会衰减,从接口收到的b... 阅读全文
posted @ 2018-01-11 20:31 dy2903 阅读(508) 评论(0) 推荐(0) 编辑
摘要: 第一章 数据保护 所谓数据保护是指对当前位置上的数据进行备份,不一定是实时的。这样带来的好处是如果发生磁盘损坏或者说被修改了,可以通过备份数据找回 1.1 文件级备份 文件级备份:将磁盘上所有文件通过调用文件系统接口备份到另一个介质上。也就是把数据以文件形式读出,然后存储在另一个介质上面。 可以看出,备份软件将文件备份到新的介质上,文件很大程度上是连续存放的。正因为如此不会备份元数据,利用新介质进... 阅读全文
posted @ 2018-01-11 20:25 dy2903 阅读(320) 评论(0) 推荐(0) 编辑
摘要: OSI模型 OSI初步 OSI是被提取抽象出来的系统间通信模型,中文意思是“开放式系统互联” PC a向PC b发送数据包的过程: a在内存中通过定义的语言生成数据包 将数据包通过总线传给TCP/IP协议处理单元,告诉对方的IP地址、UDP还是TCP、端口号 TCP/IP处理模块收到包之后,封装,通 阅读全文
posted @ 2018-01-05 10:16 dy2903 阅读(1538) 评论(0) 推荐(0) 编辑
摘要: 定义模块、包 在计算机程序的开发过程中,随着程序代码越写越多,在一个文件里代码就会越来越长,越来越不容易维护。 为了编写可维护的代码,我们把很多函数分组,分别放到不同的文件里, 在Python中,一个.py文件就称之为一个模块(Module)。 使用模块有什么好处? 最大的好处是大大提高了代码的可维 阅读全文
posted @ 2017-10-29 16:24 dy2903 阅读(4175) 评论(0) 推荐(0) 编辑
摘要: Python是一种相当高级的语言。TIOBE排行榜高级编程语言通常都会提供一个比较完善的基础代码库,让你能直接调用,许多大型网站就是用Python开发的,例如YouTube、Instagram,还有国内的豆瓣。Python的哲学就是简单优雅那Python适合开发哪些类型的应用呢? 网络应用,包括网站、后台服务等等; 脚本任务等等; 把其他语言开发的程序再包装起来,方便使用。缺点:运行速度慢:解释型... 阅读全文
posted @ 2017-07-24 18:41 dy2903 阅读(792) 评论(0) 推荐(0) 编辑
摘要: 电脑中对文件进行相关操作:新建,重命名,得到相关信息,名字类型,创建时间,访问权限,可读可执行,复制,删除,双击,创建文件夹,编辑,文件相关操作:创建文件判断文件的权限文件的大小文件创建时间、修改时间、访问时间查看文件的内容修改文件的内容删除文件重命名文件复制、剪切上传和下载文件夹相关操作新建文件夹判断文件夹权限文件夹大小文件夹的创建、修改、访问时间查看文件内容重命名复制、剪切下载获得首层信息需要... 阅读全文
posted @ 2017-07-24 18:31 dy2903 阅读(436) 评论(0) 推荐(0) 编辑
摘要: 系统调用层、内核内核:多任务、硬件管理桌面环境 X 窗口系统:工具包及架构协议xorg是实现了 X 协议规范的一个提供图形用户界面服务的服务器,就像实现了 http 协议提供 web 服务的 Apache。只有服务器也是不能实现一个完整的桌面环境的,还需要一个客户端,我们称为 X Client:KDE,GNOME,XFCE,LXDE,终端终端模拟器:接受用户的输入和显示输出。xfce 桌面环境自带... 阅读全文
posted @ 2017-07-24 15:47 dy2903 阅读(384) 评论(0) 推荐(0) 编辑
摘要: 职责 HTTP:生成针对目标服务器的HTTP报文:请给我某个页面的资源 TCP:为了方便通信,将HTTP切成多个报文段,按照序号进行发送,把每个报文段可靠传给对方。 IP:搜索对方的地址,一边中转,一边传送 URI URI:统一资源标识符, URL:统一资源定位符,资源的地点 绝对定位符: 查询字符串:可以传入参数 片段标识符:可标记出已获取资源的子资源(文档的某个位置) ... 阅读全文
posted @ 2017-07-24 15:45 dy2903 阅读(262) 评论(0) 推荐(0) 编辑