系统

Docker与KVM的区别

为君一笑 提交于 2020-02-05 13:28:52
一、Docker简介 Docker 项目的目标是实现轻量级的操作系统虚拟化解决方案。 Docker 的基础是 Linux 容器(LXC)等技术。 在 LXC 的基础上 Docker 进行了进一步的封装,让用户不需要去关心容器的管理,使得操作更为简便。用户操作 Docker 的容器就像操作一个快速轻量级的虚拟机一样简单。 下面的图片比较了 Docker 和传统虚拟化方式的不同之处,可见容器是在操作系统层面上实现虚拟化,直接复用本地主机的操作系统,而传统方式则是在硬件层面实现。 二、Docker与KVM对比 作为一种新兴的虚拟化方式,Docker 跟传统的虚拟化方式相比具有众多的优势。 Docker 容器的启动可以在秒级实现,这相比传统的虚拟机方式要快得多。 其次,Docker 对系统资源的利用率很高,一台主机上可以同时运行数千个 Docker 容器。 容器除了运行其中应用外,基本不消耗额外的系统资源,使得应用的性能很高,同时系统的开销尽量小。传统虚拟机方式运行 10 个不同的应用就要起 10 个虚拟机,而Docker 只需要启动 10 个隔离的应用即可。 虚拟化技术依赖物理CPU和内存,是硬件级别的;而docker构建在操作系统上,利用操作系统的containerization技术,所以docker甚至可以在虚拟机上运行。 虚拟化系统一般都是指操作系统镜像,比较复杂,称为“系统”

无U盘 安装纯净win7系统

痴心易碎 提交于 2020-01-31 08:39:57
一.下载微PE工具箱 选择合适的版本下载,此时系统是32位就下载32位的工具箱,系统是64位就下载64位。 1.官网下载 http://www.wepe.com.cn/download.html 2.百度云下载 链接:https://pan.baidu.com/s/1mVV2aFDn4MuEv-nJk6VLFQ 提取码:sjvm 二.下载一个纯净的win7系统 下载地址: 链接:https://pan.baidu.com/s/1rmvJnwR2BdKzbLexFIboLg 提取码:0la9 这个win7的镜像是64位的,里面包含了家庭普通版。家庭高级版,专业版,旗舰版,安装起来非常方便。 查看电脑安装系统能否安装32位还是64位 win+R 输入 systeminfo 或在 命名行输入 systeminfo 找到处理器,出现64说明是64位处理器可以选择安装64位或32位的OS,若出现x86则只能安装32位OS。 三.开始重装系统 目标 :本来的系统是win7旗舰版,重装为win7专业版 1.将PE工具箱,win7 镜像安装在非系统盘,这里安装在D盘。 2.双击安装wepe,选择 “立即安装进系统”。 其他安装方式是安装PE系统到U盘,安装系统到移动硬盘,生成可启动iso(需要刻录光盘)三种方式,这都需要外部存储器。 Win pe全称 Windows Preinstall

Android客户端稳定性测试——Monkey

允我心安 提交于 2020-01-27 03:56:49
修改时间 修改内容 修改人 2016.6.20 创建 刘永志 2016.6.29 完成 刘永志 Monkey 简介: Android SDK 自带的命令行测试工具,向设备发送伪随机事件流,对应用程序进行进行稳定性测试。 Monkey 的优势与缺陷: 优势: 脱离Case的依赖 可封装自动化执行 可封装后作为客户端性能测试的驱动 缺陷: 完全随机,不可控 不支持IOS系统 Monkey 命令及参数: 基本语法如下: $ adb shell monkey [ options ] < event - count > 如果不指定options,Monkey将以无反馈模式启动,并把事件任意发送到安装在目标环境中的全部包。下面是一个更为典型的命令行示例,它启动指定的应用程序,并向其发送500个伪随机事件: $ adb shell monkey - p your . package . name - v 500 一些常用的参数信息。 Category Option Description General --help Prints a simple usage guide. 获取帮助信息。 -v Each -v on the command line will increment the verbosity level. Level 0 (the default) provides little

[分布式数据库]数据分片

◇◆丶佛笑我妖孽 提交于 2020-01-14 19:42:51
学生阶段,但凡要做个“系统”,总绕不开的就是数据库。项目中的一些关键数据,通过持久化到数据库,保障系统的可靠性。我们接触最多的就是类似于Oracle、Mysql等数据库。 其实上了班,依旧还是没能绕过数据库,只不过不再单一的将数据存储在关系型数据库,更多的通过其他形式,例如NoSQL,以减少数据库的访问,但是NoSQL依旧无法对关系型数据库致命一击以完全替代关系型数据库,关键的数据持久化依旧还是要存放在数据库。随着国家号召自主可控,Oracle也需要渐渐从主流中剔除(成本和历史的必然)。但是这里还是要说一句,Oracle依旧是关系型数据库中的大佬,别的数据库都只能通过调优的形式去接近Oracle的处理能力却难以超越它。 文章目录 背景介绍 数据分片 垂直分片 水平分片 存在的问题 背景介绍 传统的将数据集中存储至单一数据节点的解决方案,在 性能 、 可用性 和 运维成本 这三方面已经难于满足互联网的海量数据场景。 性能 方面,由于关系型数据库大多采用B+树模型,导致数据量超过阈值的情况下,索引深度的增加导致磁盘IO访问次数增加,导致查询性能下降;同时高并发的访问请求也使得集中式数据库成为系统最大的瓶颈。 可用性 方面,服务化的无状态能达到较小成本的随意扩容,但是导致所有压力都落在数据库,单一架构甚至简单的主从模式已经无力支撑。 运维成本 方面考虑,当数据库达到单一数据库的阈值

vs2010设置堆栈大小

守給你的承諾、 提交于 2020-01-11 15:29:12
在解释原因前我们先看一下一个由C/C++编译的程序占用的内存分为几个部分: 1、 栈区(stack segment) :由编译器自动分配释放,存放函数的参数的值,局部变量的值等。在Windows下,栈是向低地址扩展的数据结构,是一块连续的内存的区域。这句话的意思是栈顶的地址和栈的最大容量是系统预先规定好的,在WINDOWS下,栈的大小是2M(也有的是1M,总之是一个编译时就确定的常数),如果申请的空间超过栈的剩余空间时,将提示overflow。因此,能从栈获得的空间较小。 2、 堆区(heap segment) : 一般由程序员分配释放,若程序员不释放,程序结束时可能由系统回收 。它与数据结构中的堆是两回事。堆是向高地址扩展的数据结构,是不连续的内存区域。这是由于系统是用链表来存储的空闲内存地址的,自然是不连续的,而链表的遍历方向是由低地址向高地址。堆的大小受限于计算机系统中有效的虚拟内存。由此可见,堆获得的空间比较灵活,也比较大。 3、 全局区(静态区)(data segment) :全局变量和静态变量的存储区域是在一起的,程序结束后由系统释放。数据区的大小由系统限定,一般很大。 4、文字常量区:常量字符串就是放在这里的, 程序结束后由系统释放。 5、程序代码区:存放函数体的二进制代码。 综上所述,局部变量空间是很小的,我们开一个a[1000000]就会导致栈溢出

VS2013下OpenCV2.48配置

只愿长相守 提交于 2019-12-29 04:29:17
VS2013+OpenCV2.48配置 一、下载OpenCV OpenCV下载地址 http://opencv.org/ SDK下载链接在页面右侧 根据平台选择相应的SDK下载。在Windows开发下开发,选择下载OpenCV for Windows。 二、安装OpenCVSDK 双击下载的opencv-2.4.8.exe进行SDK安装。 设置opencv sdk解压目录,点击Extract后解压。 解压过程如上图 三、OpenCV SDK文件夹结构简介 解压后再解压目录下有OpenCV目录 在opencv文件夹下有build和sources两个文件夹,build是sdk 包,sources是源码包(里面也有opencv使用例子源码) 在build文件夹下include是C&C++头文件所在文件夹;doc是文档文件夹;java是java开发的库文件夹;python是pathon开发库文件夹;x64和X86是已编译好的C&C++的64位和32位库文件夹,在它里面有vc10、vc11、vc12三个文件夹,分别对应VC++2010、VC++2012和VC++2013。 因不同版本VC++生成的库文件所需的运行时不同,因此配置VC++工程时需要选择相对应的二进制库文件。在vcXX文件夹下bin文件夹是公用的动态链接库,在系统环境变量里配置后,所以opencv工程都能共享他们

monkey常用命令

最后都变了- 提交于 2019-12-28 15:03:10
1、参数:-p ,用于指定一个或者多个包,指定包之后,monkey将只允许系统启动指定的APP,如果不指定包,将允许系统启动设备中的所有APP。 * 指定一个包: adb shell monkey -p com.huihu * 指定多个包:adb shell monkey -p com.huihu –p com.huikao * 不指定包:adb shell monkey 2、参数:-v ,用于指定反馈信息级别(信息级别就是日志的详细程度),总共分3个级别,分别对应的参数如下表所示 eg: adb shell monkey -p com.huihu –v 100 说明 缺省值,仅提供启动提示、测试完成和最终结果等少量信息 eg: adb shell monkey -p com.huihu –v -v 100 说明 提供较为详细的日志,包括每个发送到Activity的事件信息 eg: adb shell monkey -p com.huihu –v -v –v 100 说明 最详细的日志,包括了测试中选中/未选中的Activity信息 3、参数:–throttle<毫秒> ,用于指定用户操作之间的时延,单位是毫秒。 adb shell monkey -p com.huihu --throttle 5000 100 4、参数:–ignore crashes ,即使程序崩溃,仍执行时间

软件设计原则——GRASP

浪尽此生 提交于 2019-12-27 03:42:12
【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>> Craig Larman氏在《Applying UML and Patterns》一书中提出了GRASP设计模式的概念。作者称其为设计模式,其实,更好的理解应该为设计原则。因为,与GoF等设计模式不同的是,GoF等设计模式是针对特定问题而提出的解决方法,而GRASP则是站在面向对象设计的角度,告诉我们怎么样设计问题空间中的类与它们的行为责任,以及明确类之间的相互关系等等。GRASP可以说是GoF等设计模式的基础。 GRASP是General Responsibility Assignment Software patterns(通用职责分配软件模式)的简称,它的核心思想是“职责分配(Responsibility Assignment)”,用职责设计对象:"Designing Objects with Responsibilities"。它包含了9个基本模式: 1 专家模式(Expert) 解决方案:将职责分配给具有履行职责所需要的信息的类 通俗点就是:该干嘛干嘛去,别管别人的闲事或者我的职责就是搞这个,别的事不管。 举个简单的例子,如果有一个类是专门处理字符串相关的类,那么这个类只能有字符串处理相关的方法,而不要将日期处理的方法加进来。也就是提高软件高内聚一种原则。 2 创建者(Creator) 解决方案

Windows事件ID及解释大全

孤人 提交于 2019-12-10 22:29:59
0 操作成功完成。    1 函数不正确。    2 系统找不到指定的文件。    3 系统找不到指定的路径。    4 系统无法打开文件。    5 拒绝访问。    6 句柄无效。    7 存储控制块被损坏。    8 存储空间不足,无法处理此命令。    9 存储控制块地址无效。    10 环境不正确。    11 试图加载格式不正确的程序。    12 访问码无效。    13 数据无效。    14 存储空间不足,无法完成此操作。    15 系统找不到指定的驱动器。    16 无法删除目录。    17 系统无法将文件移到不同的驱动器。    18 没有更多文件。    19 介质受写入保护。    20 系统找不到指定的设备。    21 设备未就绪。    22 设备不识别此命令。    23 数据错误 ( 循环冗余检查 ) 。    24 程序发出命令,但命令长度不正确。    25 驱动器找不到磁盘上特定区域或磁道。    26 无法访问指定的磁盘或软盘。    27 驱动器找不到请求的扇区。    28 打印机缺纸。    29 系统无法写入指定的设备。    30 系统无法从指定的设备上读取。    31 连到系统上的设备没有发挥作用。    32 另一个程序正在使用此文件,进程无法访问。    33 另一个程序已锁定文件的一部分,进程无法访问。   

U盘启动安装mac正版OSX EI系统系统

最后都变了- 提交于 2019-12-10 03:12:19
第一步:启动盘的制作 (1)在制作启动盘之前就要先下载OSX的正版系统下载地址在 http://bbs.feng.com/forum.php?mod=viewthread&tid=9566923&page=1找到的,使用迅雷下载比较快,官网有点慢 这个网址就可以 网速好的话几个小时就可以下载下来 (2)下载下来之后双击打开,和安装其他软件一样(一定要把程序拖到Launchpad里面,不然后期往U盘里面拷贝的时候回找不到镜像)。 (3)格式化优盘打开磁盘工具,确保选中外置U盘(首先要格式化苹果电脑内置的硬盘(不格式化苹果电脑内的系统硬盘 后期装系统时 ,有时会报错),然后在再格式化U盘) 设置格式(后期U盘安装好之后名字会自动变成别的,名称就不要强迫症了 完全按照上面的来就行) (4)镜像导入U盘,打开终端输入: sudo /Applications/Install\ OS\ X\ El\ Capitan.app/Contents/Resources/createinstallmedia --volume /Volumes/Capitan --applicationpath /Applications/Install\ OS\ X\ El\ Capitan.app --nointeraction 中途会让你输入一次开机密码(密码不会显示 只管输入进去按回车就可以) Erasing