Linux系统诊断-内存基础
果是特权进程(privileged),会减分(-)进程如果对硬件设备进行直接访问,会减分(-)3.在哪儿可以看到进程的打分?/proc/
果是特权进程(privileged),会减分(-)进程如果对硬件设备进行直接访问,会减分(-)3.在哪儿可以看到进程的打分?/proc/
monit status # 查看所有服务状态 monit status nginx # 查看nginx服务状态 monit stop all # 停止所有服务 monit stop nginx # 停止nginx服务 monit start all # 启动所有服务 monit start nginx # 启动nginx服务 monit -V # 查看版本 配置文件 使用yum安装默认配置文件在: /etc/monitrc # 主配置文件 /etc/monit.d/ # 单独配置各项服务 为了保护控制文件和密码的安全性,monitrc必须具有读写权限不超过0700(u=xrw,g=,o=)。 主配置文件主要配置全局:/etc/monitrc ## Global section set daemon...阅读全文
,不要使用JS生成。所有用户生成内容(UGC)中的链接加nofollow属性。栏目、产品/文章页面主图加ALT文字,如没有人工填写,可与页面Title相同。禁止使用任何隐藏文字或链接。尽量避免使用表格(table),尤其是嵌套表格。 页面打开速度相关 在不明显影响视觉效果前提下,所有图片均需要最大程度压缩处理后才能使用。不要使用超出实际显示尺寸的图片(不要上传大尺寸图片,然后缩小尺寸显示)。页面纯文字代码(包括HTML、JS、CSS)不超过500K。特殊页面如首页可适当放宽。删除未使用的CSS代码。尽量合并CSS文件。慎用、少用JS。在主流浏览器测试JS是否拖慢页面打开速度。使用主流浏览器实际测试页面打开速度,应不超过3秒。条件允许的话,从多省市测试。 功能使用及代码 除非另行要求,网站所有页...阅读全文
制将在编译期检测。func f1(out chan<- int) {} func f2(out chan<- int, in <-chan int){} 在调用f1或f2的时候,传入的chan类型参数会自动隐式转换为chan<- int 和<-chan int类型,这种转换只是单向的,没有单向channel类型转换为chan类型。因为关闭操作只用于断言不再向channel发送新的数据,所以只有在发送者所在的goroutine才会调用close函数,因此对一个只接收的channel调用close将是一个编译错误。带缓存的channel带缓存的Channel内部持有一个元素队列。队列的最大容量是在调用make函数创建channel时通过第二个参数指定的。通过内置函数cap() 可以获得...阅读全文
开源项目的增多,以及商业社会对于 GPL 协议的担心导致的,我们细细掰扯。 GPL 协议与商业社会 我知道我要说的可能会激怒一些 GPL 粉,所以在你们开始喷之前,我想说明的是:我支持 GPL,我也是 GPL 粉丝。 我写过的所有软件都使用的是 GPL 协议,我也是一直是积极出资支持 自由软件基金会 以及 软件自由保护组织 以及他们的工作的,我支持使用 GPL 协议。我在这说的无关 GPL 的合法性或者 GPL 的巨大价值 —— 毫无疑问这是一个好协议 —— 我在这要说的是业内对于这个协议的看法。 大概四年之前,我参加了一个叫做开源智库(Open Source Think Tank)的峰会。这个峰会是一个私人小型峰会,每年都会把各大开源企业的管理人员请到加利福尼亚的酒庄。这个峰会聚焦于建立关...阅读全文
常是对产品供应商有利,而非客户。如果软件停止运行,或者如果供应商要求支付更多的费用,你甚至无法起诉供应商的不当行为。而像 GPL 一类的开源许可证就是为保护客户专门设计的,而不是供应商,它确保你按照自己的需求使用软件,而没有专制限制。 由于它们的广泛使用,GPL 及其衍生许可的含义被广泛理解。 例如,许可证允许你现有(开源或闭源)基础设施通过定义良好的 API 与其连接,对时间或用户数量没有限制,并且不会强制你打开配置或知识产权 财产(如公司标志)。但有一个问题就是,有一些开源内核混合了 GPL 和专有软件的条款,这违反了许可证规定,会将客户置于危险境地。 使用专有软件意味着你需要面对严苛的法规遵从性条款,还有承担高额罚款的风险。...阅读全文
。 2.托管和部署: PHP 应用程序可以在包括 Nginx 和 Apache 以及 Windows 和 Linux 平台在内的任何服务器上运行,这使得部署过程变得更容易,而 Node.js,则需要具有 SSH 访问权限的虚拟服务器。因此,在没有任何控制台命令和 Secure Shell(SSH)知识的情况下,用 PHP 部署小型企业和个人应用会更好。 3.外部依赖: Node.js 依赖关系较少,用几行代码就可以设置一个 Web 服务器。但运行 PHP 应用程序,就需要外部服务器软件。用 Node.js 的开发人员只需要 NPM(节点包管理器)就可以下载 Node 模块,这些模块可以轻松地集成到应用程序中,提供额外的功能。 4. CPU 扩展任务: Node.js 可能在高吞吐量方面表现优异...阅读全文
Android 从来都不存在一样,Arm 也希望 RISC-V 不存在。” Riordan 如此说道。 2019 年可能是 Arm 的转折点。这家英国公司对客户(主要是半导体公司)的微处理器 IP 许可进行了一系列重大更改,目的是提供更好的访问以及更灵活的芯片设计选项。今年早些时候,Arm 推出了 Arm 灵活访问权限(Arm Flexible Access)—— 通过它客户可以以较低的费用访问公司的广泛技术组合,而没有购买完整许可证的义务。 在本周于圣何塞举行的 Arm TechCon 年度技术会议上,Arm 首席执行官 Simon Segars 宣布将自定义指令(Custom Instructions)添加到以 IoT 为重点的 Cortex-M 处理器系列中,并从 2020 年上半年的 Arm...阅读全文
Linux 、FreeBSD 、NetBSD、 OpenBSD、 OS X、 OpenSolaris、 AIX、 HP-UX、 Android 以及 Windows。在这个教程,我们将使用 Ubuntu 16 ,你需要拥有这台电脑的 sudo 或 root 权限。我们将完整的进行安装和 Fio 的使用。 在 Debian 系统安装 Fio 对于 Debian 来说, Fio 已经在主仓库内。我们可以很容易的使用 apt-get 的包管理器安装。你只需要简单的执行下述命令: sudo apt-get install fio 当然,你可以可以使用源代码,自己编译安装最新的版本。我们需要从 GitHub 上克隆最新的代码,安装所需的依赖,然后从源码构建应用。首先,确保我们安装了 Git , sudo...阅读全文
」。 Debian 多媒体源 一些多媒体软件因牵涉到版权问题,包括硬件解码器,Debian 官方并未收录,有一网站专门填补该空缺,见 http://www.deb-multimedia.org。 最后忠告:不要同时启用多个源,同一仓库的源启用一个即可,否则容易引起混乱。以下实例便是列有多套而仅启用一套。...阅读全文
用 Python3 安装sudo python3 -m pip install --upgrade trzsz 用 Python2 安装sudo python2 -m pip install --upgrade trzsz 用 Homebrew 安装brew update brew install trzsz 用 Node.js 安装sudo npm install -g trzsz 或者安装用 Go 写的 trzsz参考 https://github.com/trzsz/trzsz-go 没有 sudo 权限也可以安装,只要将安装路径 ( 可能是 ~/.local/bin ) 添加到 PATH 环境变量中即可。支持的终端iTerm2 – 参考 Trzsz-iTerm2 安装文档。tabby...阅读全文
练的开发人员、强大的技术管理,开放和平等的文化,风险回报权衡管理、客观回顾失败以及有专注力的小团队。 Facebook 的准连续部署系统具备这几个优点:没有推送热补丁的手工开销,对分布式工程师团队有更好的支持,为工程师提供了更快的反馈循环。...阅读全文
且也是显而易见的。 这同样也适用于个人。如果你所从事的工作具有可替代性,那么你最终就会被薪资要求更低的人所取代。 增强竞争力的最佳方式就是建立话语权。例如,你可以利用好个人关系,打造强大的个人品牌,或是在不同领域的交叉点建立起自己的个人优势。当然增强竞争力的方式还有很多,但不论采取什么方式,关键是你必须要做到这一点。 大多数人会模仿身边人的做法,但这种方式并不可取,如果一味模仿他人,那你还有什么竞争优势可言呢? 11 建立人际网络 出色的工作需要团队合作。打造既可密切合作又可轻松相处的优质人际网络是事业成功的必要因素。拥有优秀人才的人际网络的规模会决定你能成功的上限。 建立人际网络的有效方法之一是尽可能多帮助他人。长期以来,这种行为方式给我带来了最佳职场机遇以及四项最佳投资中的三项。我总是惊...阅读全文
做文字输入,按ESC键可回到命令模式。 3) 底行模式(last line mode) 将文件保存或退出vi,也可以设置编辑环境,如寻找字符串、列出行号。 不过一般我们在使用时把vi简化成两个模式,就是将底行模式也算入命令模式。 一、打开文件、保存、关闭文件(vi命令模式下使用) vi filename //打开filename文件 :w //保存文件 :w debian.cn //保存为当前目录下的文件"debian.cn" :q //退出编辑器,如果文件已修改请使用下面的命令 :q! //退出编辑器,且不保存 :wq //退出编辑器,且保存文件 :x! //退出编辑器,且保存文件,忽略是否对文件具有写权限 二、插入文本或行(vi命令模式下使用,执行下面命令后将进入插入模式,按ESC键可退...阅读全文
的,而虚拟机对于像运行 LAMP 堆栈这样的单一应用程序使用情况是更好的。 Linux 容器 vs 虚拟机 – 安全性 与容器相比,虚拟机提供了更多的安全性。这并不是说容器不能被保护,而是说,默认的虚拟机提供了更大的隔离。请记住,容器可以共享系统资源而虚拟机不行。 在运行容器时,可以采取一些措施来降低风险,包括避免超级用户权限,确保从可信来源获取容器,并且保持最新状态。有些容器是数字签名的,这有助于确定您可以从可信来源获取容器。 最后,你需要保持容器的单一功能职责。一旦你开始在一个容器下结合软件职责,你会发现还是使用虚拟机最好。重申一下,容器是用于单一用途的应用程序,虚拟机用于多用途的应用程序。坚持这种做法,你将在安全性和整体功能方面处于更好的状况。 Linux 容器 vs 虚拟机 – 选择...阅读全文
InfoQ 此前的粗略统计,仅 2019 年 2 月份,就发生了六起数据泄漏事件,而原因均是:Elasticsearch 服务器没有密码保护。即便是使用云端服务,企业也不可将数据安全的责任全部押到云厂商身上,云厂商只可以在有限的权限范围内提供安全防护,企业还是需要具备安全意识。 Elasticsearch 中文社区深圳分会杨振涛此前在接受 InfoQ 采访时表示:“不少开发人员及其团队在认知上更多地把 Elasticsearch 看成是与 MySQL 同等的存储系统,所以在部署以后并没有太多地关心其访问控制策略和数据安全。而且 Elastisearch 开箱即用的特点也让开发和运维人员放松了对安全的重视。” 对于避免 Elasticsearch 在使用时发生数据泄露,杨振涛给出了几个最基本的低成本措...阅读全文
需要到网页版OCBC 申请开通,App 没入口账户用途最方便的用途应该是开通长桥证券之类的,用来炒美股。刚好最近长桥证券有一个活动,开户入金3000新币,港美股永久免佣+72新币股票现金卡+5US期权券。72新币大约385人民币。...阅读全文
序迁出,就很难总结出共同的部分。 工作流也很脆弱。原生工作流有很多关于生产状态的隐性假设,这会导致不可预期的故障。要避免错误,我们添加了前提条件:金丝雀集群是否服务于真实流量?底层有没有运行中断?但是因为我们需要扩展到数十个基础架构提供者和上百个服务,这些Web的前提条件变得非常tricky。每个工作流都需要知道其他工作流的状态。 交互变成了N²问题,这里N是组成服务基础架构的asset数量。当你更新单个asset时,需要考虑它可能带给别的asset或者工作流的影响。比如,现在是否能够重启缓存,或者是否需要等待另一个缓存稳定了之后?如果需要手动变更某个在线的工作流,有没有哪些别的工作流也需要操作的? — 3 — 我们的方案:Prodspec和Annealing 手动设计每个工作流变得不太可能...阅读全文
虚拟内存对进程的”欺骗”,每个进程都认为自己获取的内存是一块连续的地址。我们在编写应用程序时,就不用考虑大块地址的分配,总是认为系统有足够的大块内存即可。 安全:由于进程访问内存时,都要通过页表来寻址,操作系统在页表的各个项目上添加各种访问权限标识位,就可以实现内存的权限控制。 数据共享 通过虚拟内存更容易实现内存和数据的共享。 在进程加载系统库时,总是先分配一块内存,将磁盘中的库文件加载到这块内存中,在直接使用物理内存时,由于物理内存地址唯一,即使系统发现同一个库在系统内加载了两次,但每个进程指定的加载内存不一样,系统也无能为力。 而在使用虚拟内存时,系统只需要将进程的虚拟内存地址指向库文件所在的物理内存地址即可。如上文图中所示,进程 P1 和 P2 的 B 地址都指向了物理地址 C。 而...阅读全文
版本 weights document 索引权重值,数值在 1 到 99,999 之间,表示该索引相对于其他索引字段的得分权重 default_language string 对于文本索引,该参数决定了停用词及词干和词器的规则的列表。 默认为英语 language_override string 对于文本索引,该参数指定了包含在文档中的字段名,语言覆盖默认的language,默认值为 language MongoDB聚合 MongoDB聚合(aggregate)主要用于处理数据(诸如统级平均值、求和等), 并返回计算后的数据结果。有点类似sql语句中的count(*) aggregate() 方法 语法 db.COLLECTION_NAME.aggregate...阅读全文
拖再拖。我举一个典型的例子:rsync,其维护者完全出于个人的喜好拒绝我的补丁包使用debhelper。 赋予个人维护者如此大的自由,导致我们无法开展提高构建Debian软件包抽象级别的项目,这反过来又让工具更加困难。 更好的方式是什么? 作为一个项目,我们应该努力实现更多的统一。统一性并不能完全去除实验,它只是改变了两者的平衡,从简单的实验和难度较高的自动化变成了难度较高的实验和简单的自动化。我们的文化需要从“这个包归我管,你不能碰”转变为共同的所有权意识,项目中的任何人都可以很容易地贡献(经过审查的)变更,而不必凡事都要通过个人维护者。 支离破碎的工作流程和基础设施 Debian似乎更倾向于采用分散式的方法,而不是集中式的方法。例如,每个包都保存在单独的代码库中(而不是在一个统一的代码库...阅读全文
this message!