InfraPub 为您找到相关结果 402

DNSCrypt简明教程

文可见:DNSCrypt简明教程 - Jiajun的编程随想我们入 jiajunhuang.com 之后,浏览器是需要将 jiajunhuang.com 翻译成IP,然后才能建立TCP连接的。而将域名翻译成IP地址, 就是DNS服务器的事情,但是有一个小问题,DNS是明文的。也就是说,尽管你使用了HTTPS,由于在建立TLS连接之前,你得先查询域名所对应的IP,因此,还是可以通过监控你的DNS来推测你准备 访问什么流量,更坏一点的情况,可以给你伪造一个响应,返回错误的地址,这种情况就叫做“DNS污染”。所以我们需要使用DNSCrypt来加密我们的DNS通信:$ sudo pacman -S dnscrypt-proxy然后编辑 /etc/dnscrypt-proxy/dnscrypt...阅读全文

博文 2021-02-06 19:55:08 知乎

当 Atom 遇见 VSCode:微软将对 GitHub 做的 6 件事

独立性和身份。 在交易结束后将成为 GitHub CEO 的 Nat Friedman 也重申,GitHub 致力于成为一个开放平台,任何人都可以上和贡献代码。 Wanstrath 和 Friedman 就差明确表示,开发者担心微软搞乱 GitHub 风气的问题不会存在。 3、领导班子重组 微软 CFO Amy Hood 表示,该公司将在美国和欧盟监管机构的监管和批准下,尽量在年底前完成此次交易。届时,Wanstrath 将担任微软的技术院士,并向微软的 AI、云计算和首席开发工程师 Scott Guthrie 汇报工作。 Friedman 将接任 GitHub CEO ,同样向 Guthrie 汇报工作。 4、云平台集成 Nadella 时期的微软新口号是 “ intelligent...阅读全文

博文 2018-06-06 11:08:17 debian.cn

腾讯在贵州有个山洞:放置腾讯业务最核心数据

干嘛的?“如果把腾讯比作一个工厂,那么数据中心就是车间,信息需要在这里集中处理、存储、交换。”腾讯技术工程事业群任职数据中心技术总监朱华说。 那个名叫T-block的技术,是腾讯数据中心自主研发的第四代技术。 腾讯数据中心的技术发展,总共经历四个阶段: 第一代(2006-2009),基本是沿用了统电信机房的解决方案(厂房改造,风冷,N+1冗余),只在局部做了点优化,比如冷热通道隔离; 第二代(2007-2011),从天津开启数据中心的大而全模式,10万量级、大型离心冷水机组、10KV Switch Gear、变压器上楼、中压油机、UPS、STS、AHU、MAU、封闭热通道、预作用水消防、水侧Free cooling、Air side economizer; 第三代TMDC(2011...阅读全文

博文 2018-04-06 08:44:38 debian.cn

Redis 命令、特性介绍与性能调优

field对应对象的field即可。 Hash的优点包括: 可以实现二元查找,如”查找ID为1000的用户的年龄” 比起将整个对象序列化后作为String存储的方法,Hash能够有效地减少网络的消耗 当使用Hash维护一个集合时,提供了比List效率高得多的随机访问命令 与Hash相关的常用命令: HSET:将key对应的Hash中的field设置为value。如果该Hash不存在,会自动创建一个。时间复杂度O(1) HGET:返回指定Hash中field字段的值,时间复杂度O(1) HMSET/HMGET:同HSET和HGET,可以批量操作同一个key下的多个field,时间复杂度:O(N),N为一次操作的field数量 HSETNX:同HSET,但如field已经存在,HSETNX不会进行任...阅读全文

博文 2018-10-27 10:37:55 debian.cn

Gitlab CI 配置文件 .gitlab

only no 定义一列git分支,并为其创建job except no 定义一列git分支,不创建job tags no 定义一列tags,用来指定选择哪个Runner(同时Runner也要设置tags) allow_failure no 允许job失败。失败的job不影响commit状态 when no 定义何时开始job。可以是on_success,on_failure,always或者manual dependencies no 定义job依赖关系,这样他们就可以互相递artifacts cache no 定义应在后续运行之间缓存的文件列表 before_script no 重写一组在作业前执行的命令 after_script no 重写一组在作业后执行的命令 environment...阅读全文

博文 2018-12-12 21:01:19 ci.yaml 详解(上)

译:Kubernetes 最佳实践

的 AKS(Azure Kubernetes 服务)或 Amazon Web Services 上的 EKS(亚马逊弹性 Kubernetes 服务)。利用这一点意味着底基础设施将由云服务商管理,并且可以更轻松地完成有关扩展集群的任务,例如添加和删除节点,而让工程师管理 K8s 集群上运行的内容本身。升级Kubernetes版本除了引入新功能外,新的 K8s 版本还包括漏洞和安全修复,这使得在集群上运行最新版本的 K8s 非常重要。对旧版本的支持可能不如新版本好。然而,迁移到新版本时应谨慎对待,因为某些功能可能会被废弃,也可能会添加新功能。此外,在升级之前,应检查集群上运行的应用程序是否与较新的目标版本兼容。监控集群资源和审计策略日志监控 K8s 控制平面中的组件对于控制资源消耗非常重要...阅读全文

博文 2022-09-13 19:32:21 atbug.com

Debian 向左:或将迎来根本性改革 - OSCHINA

”(procedural details)。当抉择艰难时,我们需要创造出一个能够消弭分歧的机制。这个机制甚至能够在我们失去立场的时候,发挥作用。 在 Allbery 看来,Debian 之前走错了方向。在这一上,Allbery 聚焦在“机制”上。而从 Debian的现存机制上来看,Debian 为项目个人提供了极大的自由。 Debian 把决定权交给了个人开发者,开发者可以按照他们认为合适的方式来进行管理。这种自由被 Debian 章程(consitution)和 Debian policy manual 限制,主要是为了确保开发者和他们创建的软件包都能共存并且和睦相处。 当大家分歧不大的时候,这个机制基本上都是可行(不然 Debian 也不会有效运行这么多年)。而面对一些特殊情况,Debian 社区的机制主要...阅读全文

博文 2021-12-06 13:55:01 中文开源技术交流社区

Ceph 12.2.0 正式版本发布, 代号 Luminous

Luminous的升级后,集群将尝试将现有池与已知应用(即CephFS,RBD和RGW)相关联。未与应用程序关联的使用池将生成健康警告,可以使用新命令手动关联任何未关联的池。ceph osd pool application enable RGW RGW支持最终用户请求服务,通过ElasticSearch进行RGW元数据搜索,并且还支持自定义元数据字段。 查询语言是一组RESTful API,用户可以通过其元数据来搜索对象。还添加了允许自定义元数据字段控制的新API。 RGW支持动态存储桶索引分片。随着桶中的对象数量的增加,RGW将自动重新构建桶索引。不需要用户干预或桶大小容量规划。 RGW引入了上对象的服务器端加密,用于管理加密密钥的三个选项有:自动加密(仅推荐用于测试设置),客户提供的类似于...阅读全文

博文 2017-08-31 13:36:49 debian.cn

SVN切换分支用法汇总

中,例如C:\Program Files\TortoiseSVN\bin。2. 创建分支在SVN中,可以使用checkout命令来创建新的分支。具体步骤如下:Step 1:在指定分支的上级目录下,右键单击鼠标,选择“SVN Checkout...”Step 2:弹出“Checkout”窗口,在URL处入分支的远程地址,例如http://localhost/branches/feature-branch/,并选择本地的工作副本路径。Step 3:单击“OK”按钮,等待下载即可。3. 切换分支切换分支操作非常简单,只需要在SVN上进行简单的操作即可。具体步骤如下:Step 1:在工作副本下,右键单击鼠标,选择“SVN Switch...”Step 2:弹出“Switch”窗口,在“To...阅读全文

博文 2023-06-09 14:22:35 infras

Monit:开源服务器监控工具

件,例如/etc/monit.d/nginx。配置变写完毕,使用下列,命令检测是否正确: monit -t 3.启动monit: monit 4.启动所有服务或者单个服务: monit start all 5.若修改了配置文件,重载配置: monit reload 6.使用下面命令查看监控状态: monit status 控制台出: $ monit status The Monit daemon 5.17.1 uptime: 4d 15h 45m Process 'nginx' status Running monitoring status Monitored pid 20563 parent pid 1 uid 0 effective uid 0 gid 0 uptime 3d 22h...阅读全文

博文 2023-04-12 15:21:43 阿里云开发者社区

Kubernetes 1.9发布:Apps Workloads通用版本与生态系统扩展

称SIG)都在继续立足所在面交付用户们最为需要的功能。感兴趣的朋友可以点击说明[7]查看发行版说明中的完整功能列表。 发布时间 Kubernetes 1.9目前已经可通过GitHub[8]下载。若需要马上开始使用Kubernetes,请参阅相关交互教程[9]。 发行团队 此次发行版的推出,源自数百名技术与非技术参与者们的共同努力。这里特别感谢谷歌公司软件工程师Anthony Yeh领导的发行团队。该发行团队中的14名成员一直在努力协调发行工作中的方方面面,包括说明文档、测试、验证以及功能完整性等等。 随着Kubernetes社区的不断发展,我们的发行流程也已经成为开源软件开发合作领域的一大标志性产物。Kubernetes继续以惊人的速度吸引到更多新用户的参与。这种增长创造出更为积极的反馈周...阅读全文

博文 2017-12-17 01:00:00 debian.cn

nsenter 及 Linux命名空间 简介

); /* Get file descriptor for namespace */ if (fd == -1) errExit("open"); if (setns(fd, 0) == -1) /* Join that namespace */ errExit("setns"); execvp(argv[2], &argv[2]); /* Execute a command in namespace */ errExit("execvp"); } 使用示例: ./ns_exec /proc/3550/ns/uts /bin/bash nsenter 那么,最后就是nsenter了,nsenter相当于在setns的示例程序之上做了一封装,使我们无需指定命名空间的文件描述符,而是指定进程号即可。 指定进程...阅读全文

博文 2020-12-15 11:22:44 debian.cn

玩转 AWS 的必备工具

虽然AWS平台早已早已为使用者带来了十分详细和高品质的工具箱,但在具体运用中含的软件还没有尤其方便快捷或是能满足客户的必须,因而,紧紧围绕全部AWS平台,客户及其许多专业开发设计AWS专用工具的企业发布了很多和AWS规范专用工具互为补充的第三方开发环境。这种专用工具集中化在系统软件布署管理方法自动化技术,系统架构图自动生成可视化工具,及其服务器资源监管专用工具等AWS技术栈的最底服务项目。 系统软件布署管理方法自动化技术专用工具. 中国开发者利好消息!AWS(亚马逊云计算)中国区新用户注册即可免费使用12个月云服务产品啦!每注册一个新用户均可享受新的12个月免费云服务器数据库等产品!快来加入我们吧! 免费12个月链接: https://aws.amazon.com/cn...阅读全文

玩转 AWS 的必备工具

虽然AWS平台早已早已为使用者带来了十分详细和高品质的工具箱,但在具体运用中含的软件还没有尤其方便快捷或是能满足客户的必须,因而,紧紧围绕全部AWS平台,客户及其许多专业开发设计AWS专用工具的企业发布了很多和AWS规范专用工具互为补充的第三方开发环境。这种专用工具集中化在系统软件布署管理方法自动化技术,系统架构图自动生成可视化工具,及其服务器资源监管专用工具等AWS技术栈的最底服务项目。 系统软件布署管理方法自动化技术专用工具. 中国开发者利好消息!AWS(亚马逊云计算)中国区新用户注册即可免费使用12个月云服务产品啦!每注册一个新用户均可享受新的12个月免费云服务器数据库等产品!快来加入我们吧! 免费12个月链接: https://aws.amazon.com/cn/free...阅读全文

为什么 Django 能持续统治 Python 开发世界

:避免重复。 Django是用Python编写的,因此其减少了太多中间代码并突出提高了效率。Django可以支持云平台,使其成为Web开发中更受欢迎的选择。 Django主要特点 Django“自备军需”(Batteries-Included) Django基于“自备军需”的理念,您不必使用单独的库来实现常见功能,例如身份验证,URL路由,模板系统,对象关系映射器(ORM)和数据库模型迁移。 如果您正在使用或曾经用过Flask,您一定注意到了它需要调用其他库,如Flask-Login来执行用户身份验证。 Django不是这样。 自由的API 使用Django,很容易根据您的模型生成Python API。 只需一个简单的命令,不需要额外的编码就足以开始生成API了。 独特的管理页面 即使在网站...阅读全文

博文 2017-07-21 14:15:11 debian.cn

六个开源软件开发的潜规则

玲珑,面面俱到 作为一个开发者,你很可能希望为开源项目解决一个特定的痛点。或许你想要运行在一个目前还不支持的系统上,抑或你很希望改革社区目前使用的安全技术。想要引进新技术,特别是比较有争议的技术,最好的办法就是让人无法拒绝它。你需要透彻地了解底代码,考虑每个极端情况。在不影响已实现功能的前提下增加新功能。不仅仅是完成就行,还要在特性的完善上下功夫。 糜不有初,鲜克有终 开源社区也有许多玩玩就算的人,但是承诺了就不要轻易失信。不要就因为提交被拒就离开社区。找出原因,修正错误,然后再试一试。当你开发时候,要和整个代码库保持一致,确保即使项目发生变化而你的补丁仍然可用。不要把你的代码留给别人修复,要自己修复。这样可以在社区形成良好的风气,每个人都自己改。 这些“潜规则”看上去很简单,但是还是有许...阅读全文

博文 2017-05-20 10:27:11 debian.cn

阿里巴巴版 JDK 首发 GA 版 生产环境可用

“退优化”已编译的方法,重新开始编译,反而恶化了状况。由此可见,如何准备预热数据其实是一个挺复杂的问题,在实际运维中还没有很好的解决方法。 Dragonwell 提出的 JWarmUp 技术从 JVM 面解决这一痛点,基本原理是利用之前运行的情况找到热点方法和 java class 信息。之后,JVM 运行实例利用上次的信息来预热,不需要通过人为数据预热。收集热点的实例可以有多种选择,例如在应用集群中选择一个节点,也可以在发布过程中选择一个 beta 发布阶段来收集。相比之前“人为数据”的方式,主要有如下优势: 收集热点时可以利用真实数据,达到更好的编译效果。加速预热过程。由于热点方法可以在加载后直接编译,节省解释执行,profiling 等过程。 该功能在 specjvm 的基准测试中对于...阅读全文

博文 2019-07-11 10:24:52 debian.cn

处理器架构消亡史

RISC研究的负责人之一提出“协作RISC计划”,即将此前的项目就被合并为一个项目,并且更名为PRISM。在此期间,为了进一步顺利的将新架构打入市场,DEC在参与MIPS R3000的处理器项目开发过程中,主动发起创建了高级计算环境协会(Advanced Computing Environment consortium)来提升新架构的影响力。到了1988年DEC公司的管理高决定采用MIPS处理器,DEC管理怀疑是否需要生产新的计算机体系结构来替代其现有的VAX产品线,并最终于1988年结束了PRISM项目。此时,处理器架构开始向64位发展。向64位发展,也被当时很多厂商视为是可以改写市场格局的一个拐点。因此,DEC开始考虑使用类似于RISC的设计概念来设计新一代VAX CPU,以提高速度,同时...阅读全文

2017年DevOps的5大发展预测

DevOps解决方案营销副总裁Aruna Ravichandran预测道。她说,“鉴于攻击者强度和复杂度的提高,以及安全问题快速公诸于众对品牌带来潜在不可挽回的损害,代码本身必须考虑安全问题,并且部署在牢固的安全架构中。” Ravichandran认为,随着微服务框架和SDK的引入,开发人员为了避免影响用户体验,应该从一开始就考虑安全功能。当到了测试和部署阶段,安全验证应该被视为特殊情况处理。她提到“安全相关代码需求测试要求是非常特殊和动态的,这个过程非常有可能需要专家和用户的介入,这不是统DevOps流程的一部分。” 更加注重安全的时期 按照Tufin首席技术管兼联合创始人Reuven Harrison的说法,DevOps可能是企业的最新漏洞。2017年,他期望能够看见安全相关流程能够融入到...阅读全文

博文 2021-01-28 17:50:18 debian.cn

Node.js Vs. PHP:你应该选择哪一个

PHP 是一种编程语言,Node.js 是一个基于 Chrome V8 引擎的 JavaScript 运行环境。 Node.js VS PHP,哪一方可以赢得这场战争取决于你构建的网站类型。比方说,如果你想构建一个实时的聊天应用程序,那么选择 Node.js 是明智的,因为它可以轻松处理大量的客户端请求。但是,这并不意味着PHP 不可以,请看完 Node.js VS PHP 后再决定用谁构建你的网站。 1.性能: 在性能方面,Node.js 显然赢了这一局。由于 Node.js 遵循事件驱动的非阻塞I/O模型,与统的后端技术相比,Node.js 能够处理大量的服务器请求。PHP 遵循一个阻塞模型,其中在服务器端创建多个线程来处理多个客户端请求,如果代码没有被优化,它会导致高服务器负载和响应时间...阅读全文

博文 2017-12-23 23:15:39 debian.cn

Java 12 / JDK 12 正式发布

200 MB 还是 200 GB,都将具有相同的暂停时间。 Microbenchmark Suite 微基准测试套件 JDK 源码中新增了一套微基准测试套件,使开发人员可以轻松运行现有的微基准测试并创建新的基准测试。 Switch Expressions (Preview) Switch 表达式(预览功能) 扩展了 switch 语句,使其不仅可以作为语句(statement),还可以作为表达式(expression),并且两种写法都可以使用统的 switch 语法,或者使用简化的“case L ->”模式匹配语法作用于不同范围并控制执行流。这些更改将简化日常编码工作,并为 switch 中的 模式匹配(JEP 305) 做好准备。 JVM Constants API JVM 常量 API 引...阅读全文

博文 2019-03-20 12:46:27 debian.cn

PostgreSQL 13 正式版发布

-ahead logs)之前将其删除,现在可在 PostgreSQL 13 中进行调整,以指定要保留的 WAL 文件的最大数量, 有助于避免磁盘空间不足错误。 PostgreSQL 13 还增加了更多让管理员可以监控数据库活动的方法,包括从 EXPLAIN 中查看 WAL 使用情况的统计信息、流式基础备份的进度,以及 ANALYZE 命令的进度。此外,可以使用新的 pg_verifybackup 命令验证 pg_basebackup 命令出的完整性。 应用开发 PostgreSQL 13 对来自不同数据源的 PostgreSQL 数据类型进行了优化。此版本在其 SQL/JSON 路径支持中增加了datetime()函数,它可以将有效的时间格式(如 ISO 8601 字符串)转换为...阅读全文

博文 2020-10-04 20:07:23 debian.cn

Twitter确认接受440亿美元收购提议 埃隆·马斯克将完全控制该公司

Twitter公司今天在一份新闻稿中宣布,该公司已经接受了埃隆·马斯克以440亿美元收购该公司的提议。最终结果是马斯克以每股54.20美元的价格收购了该公司,这与他本月早些时候提出的初始报价中的价格相同。 Twitter是最著名的社交媒体平台之一,现在正式成为埃隆-马斯克不断扩张的商业帝国的一部分。 新闻稿声明指出: "根据协议条款,在拟议的交易完成后,Twitter股东将为他们拥有的每一股Twitter普通股获得54.20美元的现金。该收购价格比2022年4月1日Twitter的收盘价溢价38%,这也是马斯克先生披露他在Twitter约9%的股份之前的最后一个交易日。" 正如我们在过去几天里广泛报道的那样,这个奇故事始于4月初,当时马斯克披露了他在Twitter...阅读全文

开发者体验被重点关注:开发人员是关键资产 - OSCHINA

。其结果应该是,那些比较统的公司的开发人员可以获得与其他公司使用云原生方法的开发人员一样的好处。希望这些实施方案能够帮助开发人员提高生产力,并且他们乐意留在这些公司,而不是转到其他岗位。 基于云的机器数据分析公司 Sumo Logic 的首席产品经理兼开源大使 Frank Reno 认为,开发人员是开源快速增长的因素之一。开发人员都希望在一个社区中与他人一起工作,与更大的团队合作,为更大的项目做出贡献。“特别是在 COVID-19 期间,我们不像以前那样紧密。因此,我们所能做的任何事情都是为了培养更好的体验,无论是对个人开发者还是一群开发者,都有很大的帮助。每个供应商和每个客户都应该认识到开发人员的重要性。” 为了达到这一目的,DataStax 战略副总裁 Bryan Kirschner 则...阅读全文

博文 2021-12-28 14:45:52 中文开源技术交流社区

你和 Linux 高手只差了一个 LFS

,LFS 绝对配得上称为一本好书,或者说一本好教材。市面上,很难再找到一本如此具体又如此精炼的教材了。 首先,它并不是只是讲讲简单概念,它很具体,具体到就是一个例子,一个告诉你怎么亲手构建出属于自己的 Linux 系统的例子。 其次,它很精炼,它的精炼表现在两个方面:系统构建出来不臃肿;文字描述很精炼。 最后还有一点,这一点至关重要。尽管文字的描述非常精炼,甚至是精炼到枯燥,但是作为一本教材,作者无时无刻不再想尽办法,让你学到东西。无论是编译指令下方各个参数的介绍,还是软件包安装小节下方软件包内容的介绍,作者真的是想尽办法的试图把知识递给读者。 LFS 没有缺点吗? 那自然是有的,可以原封不动的照抄上面的优点。辩证的看待这些优点,你就会发现这些优点是有代价的。 首先,由于这个例子过于生动形象,所...阅读全文

博文 2017-07-17 17:45:59 debian.cn

AWS EKS 添加IAM用户角色 - SRE运维博客

集群配置权限的集群创建者或管理员角色,请在 AWS CloudTrail 中搜索 CreateCluster API 调用。然后,检查此 API 调用的 UserIdentity 部分。 识别需要权限的 IAM 用户或角色。 确认已识别的 IAM 用户或角色有权在 AWS 管理控制台中查看所有集群的节点和工作负载。 使用 aws-auth ConfigMap 将 IAM 用户或角色映射到 RBAC 角色和组 {{< notice info "重要提示:" >}} 在连接 Amazon EKS API 服务器之前,安装并配置最新版本的 AWS CLI。 {{< /notice >}} 获取 AWS CLI 用户或角色的配置: aws sts get-caller-identity 出将返回...阅读全文

博文 2022-12-19 21:15:27 博客园

使用 setfacl 管理文件的访问控制列表ACL

。在 Debian 系统中,执行命令: sudo apt-get install acl ACL 使用样例 ACL即Access Control List,主要的目的是提供统的 owner, group, others 的 read, write, execute 权限之外的具体权限设置,ACL可以针对单一用户、单一文件或目录来进行r,w,x的权限控制,对于需要特殊权限的访问控制有一定帮助。例如,某一个文件不让单一的某个用户访问。 ACL使用两个命令来对其进行控制: getfacl:取得某个文件/目录的ACL设置项目 setfacl:设置某个文件/目录的ACL设置项目 setfacl 的命令参数: -m:设置后续acl参数 -x:删除后续acl参数 -b:删除全部的acl参数 -k:删除默认...阅读全文

Debian的版本号及distributions

release:testing被改名为stable,于是stable指向了新release的code name,同时一个新拷贝被创建,命名为下一个要release的code name,并成为新的testing,以前的stable被改名为oldstable,于是对应released的code name的版本号(如sarge对应3.1,etch对应4.0)就发布了。 即使是stable distribution仍然不可避免地存在bugs,解决这些bugs的更新包首先被上到debian archive的stable-proposed-updates目录下作更进一步的测试,Release Team会定期地评价这些更新并决定它们是否可以被包括到stable中,当一批更新被移至stable中后,stable...阅读全文

博文 2021-01-28 17:50:08 debian.cn

提问的智慧 – 全文

对软件的更新和支持。 通过新手论坛和在线客服可获得最快的回复 本地发行商会为宣新产品会专门为新手设置论坛或在线客服(IRC)[8],这些地方是提问的好地方,特别是当你觉得遇到的是很普通的问题时。通过专门的在线客服或者公开新手提问专区,一般可以得到实时的回复。 事实上,如果出问题的程序来自某发行版(这很常见),最好先去该发行版的论坛中提问,再到程序本身的项目论坛中提问,否则该项目的黑客可能仅仅回复「尝试用我们的代码」来搪塞你。 在任何论坛发帖之前,先看看有没有搜索功能。如果有,就试着用问题的几个关键词搜索一下,这会给你带来帮助。如果在此之前你已做过全面的网页搜索(你应该这样去做),还是应该再搜索一下论坛,搜索引擎有可能还没建立此论坛的内容索引[9]。 目前,通过论坛或在线客服为用户提供帮助已...阅读全文

博文 2009-10-01 13:18:00 debian.cn

王垠:如何掌握所有的程序语言

打印“Hello World!”,进而要他们记忆 printf 的各种“格式字符”的意义,要他们实现各种复杂格式的打印出,甚至要求打印到文本文件里,然后再读出来…… 可是殊不知,这种入操作其实根本不算是语言的一部分,而且对于掌握编程的核心概念来说,都是次要的。有些人的 Java 课程进行了好几个星期,居然还在布置各种 printf 的作业。学生写出几百行的 printf,却不理解变量和函数是什么,甚至连算术语句和循环语句都不知道怎么用!这就是为什么很多初学者感觉编程很难,我连 %d,%f,%.2f 的含义都记不住,还怎么学编程! 然而这些野鸡大学的“教授”头衔是如此的洗脑,以至于被他们教过的学生(比如我女朋友)到我这里请教,居然骂我净教一些没用的东西,学了连 printf 的作业都没...阅读全文

博文 2017-07-10 10:13:17 debian.cn

六大算法之三:动态规划【转载】

。 public static int solutionFibonacci(int n){ if(n==0){ return 0; }else if(n == 1){ return 1; }else{ int result[] = new int[n+1]; result[0] = 0; result[1] = 1; for(int i=2;i<=n;i++){ result[i] = result[i-1] + result[i-2]; } return result[n]; } 与之类似的还有:跳台阶问题:每次只能跳一个或者两个台阶,跳到n台阶上有几种方法 填充长方体问题:将一个2*1的长方体填充到2*n的长方体中,有多少种方法 2、数组最大不连续递增子序列 arr...阅读全文

博文 2021-07-31 07:18:53 CSDN博客

为保护隐私而生 反取证操作系统:Kodachi

用。 学校机房(从 U盘 和 DVD 启动)使用 任何可以(从 U盘 和 DVD )启动使用的计算机上。 安装向导: 如何在你的硬盘驱动器上安装 Kodachi Linux: 从你的 USB 或 ISO 映像引导。 在桌面菜单上进入 – >系统 – > Refracta 安装程序 – >使用 su – >入密码 r@@t00 – >简单安装 – >运行 GParted – >设备 – >创建分区表 – >应用 – >分区 – >新建 – >添加 – >应用所有操作 – >关闭 – >关闭 GParted 窗口 – >选择分区 – >确定 – >继续安装 – >关闭窗口 – > y – >配置主机及用户名!不要在这里更改用户名,否则 Kodachi 脚本会出现错误 – >勾选前 2 个框允许...阅读全文

博文 2021-01-28 17:50:19 debian.cn

不要光想着价格 QLC 与 TLC 闪存有什么不同

在这个互联网时代,游戏、电影、照片等数据越来越大,硬盘容量将会面临着前所未有的挑战。虽然统的机械硬盘可以解决容量问题,但是速度太慢,体验糟糕,并不是最优的个人存储解决方案。我们渴求大容量的SSD,不过超过TB大容量SSD动不动就几千元的售价,对于支付能力有限用户实际上没有意义。SSD的成本主要来源于闪存,在TLC闪存能够实现TB容量可惜价格未能降下来。只有不断开发新类型的闪存,解决容量与价格的矛盾,才能让SSD真正在大数据时代发挥应有作用。 这时,QLC 闪存就应运而生, 目前,东芝和西数先后宣布成功开发基于四比特单元3D NAND闪存芯片,即QLC闪存,这也意味着QLC SSD将要来临。那么,它与TLC闪存又有什么区别,能否取代TLC成为SSD主流闪存之选? 先来了解一下什么是TLC...阅读全文

博文 2017-08-01 09:52:54 debian.cn

Linux 容器 vs 虚拟机 — 谁更胜一筹

VirtualBox 和 VMware 很好地代表了桌面到服务器虚拟化的两个领域。 Linux 容器 vs 虚拟机 – 赢家是? 在决定容器还是虚拟机之前,请考虑以下事项。如果你选择容器,但你完全可以 在虚拟机上运行容器 。了解这一点很重要,因为这里没有明显的赢家或家。事实上,这两种技术的需求完全不同。 容器将引起媒体的持续关注,因为它们让用户用更少的硬件更高效地运行。在另一方面,虚拟机仍然是服务器和云空间的主要内容。 我认为值得一看的是 Kubernetes 和 Docker Swar 之间的事情。我认为看看这两种容器管理技术是如何发挥作用的,以及哪种技术会成为标准。有一段时间,感觉好像是 Docker。然而现在,Kubernetes 占据了更多的营地。可能随着时间的推移,我们将开始看到...阅读全文

博文 2017-11-25 10:23:56 debian.cn

Terraform 学习总结 — Terraform 简介

" "rg" { name = "NickResourceGroup" location = "eastasia" } 用 init 命令用来初始化工作目录 把当前目录切换到 createrg.tf 文件所在的目录,然后执行 init 命令: $ terraform init 其实就是把 createrg.tf 文件中指定的驱动程序安装到当前目录下的 .terraform 目录中: 通过 plan 命令检查配置文件 plan 命令会检查配置文件并生成执行计划,如果发现配置文件中有错误会直接报错: $ . azureEnv.sh $ terraform plan 通过 plan 命令的出,我们可以清楚的看到即将在目标环境中执行的任务。 使用 graph 命令生成可视化的图表 其实 graph 命令只...阅读全文

Apollo 分布式配置中心详解

Apollo(阿波罗)是携程框架部门研发的分布式配置中心,能够集中化管理应用不同环境、不同集群的配置,配置修改后能够实时推送到应用端,并且具备规范的权限、流程治理等特性,适用于微服务配置管理场景。 本文简单从功能特点做介绍,更详细的说明请参考Apollo配置中心介绍。本地快速部署可以参考这里。线上的演示环境从这里可以访问到: 106.54.227.205 (账号/密码: apollo/admin) Apollo 配置中心产生背景 大多情况下程序随着功能的复杂,程序的配置也会增多:包括各种功能开关、参数配置、服务地址信息配置等,同时开发人员对程序配置的期望值也越来越高:配置修改后实时生效,灰度发布,分环境、分集群的管理配置、权限控制、审核机制等。 在这样的大环境下,统的通过配置文件、数据库...阅读全文

博文 2020-04-12 12:16:26 debian.cn

Kubernetes v1.21 新特性预览

Secret 时,大量的 watch 事件会急剧增加 kube-apiserver 的负载,并会导致错误配置过快播到整个集群。在这种情况中,给不需要经常修改的 ConfigMap 和 Secret 设置 immutable: true 就可以避免类似的问题。注意,设置 immutable: true 之后,ConfigMap 和 Secret 内容更新时需要删除并重新创建,且使用它们的 Pod 也需要删除重建。IPv4/IPv6 双栈支持 BetaIPv4/IPv6 双栈支持在 v1.20 的时候进行了重构,并将于 v1.21 中进入 Beta 版本(默认开启),kubeadm 也已经支持创建 IPv4/IPv6 双栈集群。该特性开启后,Kubernetes Service 和 Pod 会同时分配...阅读全文

博文 2021-03-30 20:24:36 mp.weixin.qq.com

社交巨人Facebook使用Linux和Btrfs的姿势

被我们称之为“影子”的地方进行——我们可以在一个非生产环境重放生产网络的流量,这样我们能够在一个非常安全的地方检测系统的稳定性和性能。我们可以像做实验那样一边加大流量一边说:“好了,我先给它(测试环境)5%的生产网络流量,然后一路增加到100%,看看会有什么发现吧。”像做A/B测试那样,我就能得到两个内核在整个实验过程中对比鲜明的数据。 我们有工具能验证内核并帮助测试上游内核。这样比较容易发现上游内核新的有意思的bug,而非只是找到已经被上游内核修复过的bug。 Linux.com:您比较担心什么问题? Chris Mason:就运行Linux内核或者文件系统而言,我们还没遇到什么问题;况且有这么多的社区在支持Linux,我也没有必要担心什么。 Linux.com:您参与Linux开发也有...阅读全文

博文 2021-01-28 17:50:22 debian.cn

Kubernetes 使用 PodPreset 注入信息到 Pods_哎_小羊的博客

Pod 初始化配置,还能起到配置统一的效果。 2、环境、软件准备 本次演示环境,我是在本机 MAC OS 上操作,以下是安装的软件及版本: Docker: 18.06.3-ceOracle VirtualBox: 6.0.8 r130520 (Qt5.6.3)Linux: 7.6.1810Minikube: v0.30.0Kubernetes: 1.12.1 注意:这里 Kubernetes 集群搭建使用 Minikube 来完成,Minikube 启动的单节点 k8s Node 实例是需要运行在本机的 VM 虚拟机里面,所以需要提前安装好 VM,这里我选择 Oracle VirtualBox。k8s 运行底使用 Docker 容器,所以本机需要安装好 Docker 环境,这里忽略...阅读全文

博文 2021-01-27 18:47:00 CSDN博客

使用 MongoDB 之前应该知道的 14 件事

给了你更多的控制,但这种便利是有成本的。 像 Studio 3T 这样的工具使构建准确的 MongoDB 聚合查询变得更容易。它的聚合编辑器特性使你可以一次对一个阶段应用管道操作符,你可以在每个阶段验证入和出,更便于调试。 使用快速写 永远不要把 MongoDB 设为低稳定性的高速写。看上去,“file-and-forget”模式使得写入速度变快了,因为命令在实际写入任何东西前就返回了。如果系统在数据写入磁盘之前崩溃了,就会丢失,存在出现不一致状态的风险。所幸,64 位的 MongoDB 启用了“日志(Journaling)”。 MMAPv1 和 WiredTiger 存储引擎都使用日志预防上述情况,不过,在日志关闭的情况下,WiredTiger 也可以在还原过程中恢复到最后一致的 检查...阅读全文

从 Debian 安装 Proxmox VE,并配置网络和双硬盘

本文记录如何从 Debian 安装 Proxmox VE,以及配置 IPv4 和 IPv6 网卡,为硬盘分区。 预配置系统装好后,从 NOCIX 后台面板取得 登陆用户名 和 密码。 用户名是 customer密码是一串随机生成的字符串 使用 su 切换到 root 还需要入密码,这样频繁操作比较麻烦。 免密登陆 root安装 sudo 实现免密 su 12apt updateapt install -y sudo 修改 /etc/sudoers 文件注意:只能用 visudo 交互式来修改 sudoers 文件 这是为了防止被脚本修改,就别想用 echo 来改了 visudo 会验证配置的格式,如果不验证,而你写的配置有问题,那么你无法切换到 root,而只有 root 用户才能修改...阅读全文

博文 2021-03-01 20:20:31 驱蚊器喵的插座

细数k8s支持的4种类型的container - 侃豺小哥

后,出类似于: PID USER TIME COMMAND 1 root 0:00 /pause 6 root 0:00 nginx: master process nginx -g daemon off; 11 101 0:00 nginx: worker process 12 101 0:00 nginx: worker process 13 101 0:00 nginx: worker process 14 101 0:00 nginx: worker process 15 101 0:00 nginx: worker process 16 101 0:00 nginx: worker process 17 101 0:00 nginx: worker process 18 101...阅读全文

博文 2021-08-20 11:45:32 博客园

Cortex: 高可用和水平扩展Prometheus监控系统

询时必须提供相同的值。在下面的例子中,这个headers是使用nginx反向代理设置的。架构图Cortex架构(源)Nginx/gateway–一个位于cortex前面的反向代理,将收到的所有请求转发给相应的服务。分发服务器Distributor–处理入的指标,将其拆分为多个批次,然后将其递给Ingesters。如果复制因子replication factor设置为> 1,则数据将发送到多个实例。接收器Ingester–此服务负责将数据写入已配置的存储后端。Ingester是半状态的,因为它们保留了最后12个小时的样本。这些样本将被批处理并压缩,然后再写入块存储。查询前端Query Frontend–一个可选组件,用于对查询请求进行排队,并在失败时重试它们。结果也被缓存以提高性能查询器...阅读全文

博文 2021-10-09 17:00:22 知乎

Debian Live 项目的剧变

一个一直不为人所知的计划。从 Banumann 的角度来说,他当然不是完美的,他因为上个不合适的 syslinux 包导致了 wheezy 的延迟发布,并且从那以后他被从 Debian 开发者暂时降级为 Debian 维护者。但是这不意味着他应该受到这种对待。当然,这个项目还有其他人参与,所以不仅仅是 Baumann 受到了影响。 Ben Armstrong 是其他参与者中的一位,在这个事件中,他很圆滑地处理了一些事,并且想从这个事件中全身而退。他从一封邮件13开始,这个邮件是为了庆祝这个项目,以及他和他的团队在过去几年取得的成果。正如他所说, Debian Live 的下游项目列表是很令人振奋的。在另一封邮件中,他也指出了这个项目不是没有生命力的: 如果 Debian CD 开发团队通过...阅读全文

博文 2021-01-28 17:50:14 debian.cn

Intel 为啥要给 ARM 代工

ARM V8 指令集授权给 APM、Cavium、AMD、高通、华为、国防科大、华芯通等诸多 IC 设计公司开发 ARM 服务器 CPU,APM 开发出了 ARM 服务器 CPU,采用该芯片的服务器已经在数据中心、互联网服务器等领域有了批量的应用。华为也开发了一款 32 核 A57 的服务器芯片,该项目为核高基项目,而且根据公开资料,下一步将在特殊领域得以推广。国防科大也开发了 FT2000,就 SPEC2006 测试成绩来看,FT2000 的多线程性能已经能与 Intel Xeon E5-2695v3 芯片相媲美。而面对咄咄逼人的 ARM 服务器 CPU,Intel 也专门开发了至强 D 系列低功耗服务器 CPU 来应对。 因此,在这种 ARM 与 X86 互相侵蚀对方统优势领域的情况下,想...阅读全文

博文 2021-01-28 17:50:26 debian.cn

利用 NAT VPS 进行流量中转

firewalld),因此也推荐使用此方法。检查 firewalld 运行状态,出应为 running:1firewall-cmd --state接下来设置端口转发:123456sudo firewall-cmd --zone=public --permanent --add-port 本机端口号/tcpsudo firewall-cmd --zone=public --permanent --add-port 本机端口号/udpsudo firewall-cmd --zone=public --permanent --add-forward-port=port=本机端口号:proto=tcp:toport=目标端口号:toaddr=目标地址sudo firewall-cmd --zone=public...阅读全文

博文 2021-03-11 21:16:11 Silearner

基于thanos搭建分布式prometheus

sidecar和prometheus则走原生HTTP接口拿数据。 为了高可用,我们可以部署多个prometheus同时抓取。 为了打散采集/存储压力,我们可以部署多个prometheus各自抓取部分数据。 无论出于上述哪种目标或者混合目标,最终依靠Querier的正确配置都可以提供统一的Promql查询入口给Grafana,这一点是毋庸置疑的。 这里看到了图中有几个陌生的组件: Store Bucket Compactor Prometheus单机存储空间有限,SideCar和Prometheus在同POD内共享数据volume,然后sidecar可以自动将prometheus磁盘数据上到Bucket里归档存储;后续Querier可以通过Store组件从Bucket拉取到历史数据,这样就实现了历史数据...阅读全文

博文 2021-03-01 13:02:46 鱼儿的博客

Jono Bacon: GPL 没落了吗?

、Digital Ocean 等等等等,探索着在开源领域中赚钱的法子。他们探索过分发模式、服务模式,核心开源模式等等。现在可以确定的是,统的商业软件赚钱的方式已经不再适用开源软件;因此,你得选择一个能够支持你的公司的经营方式的开源协议。在赚钱和免费提供你的技术之间找到平衡在很多情况下是很困难的一件事。 这就是我们看到那些变化的原因。尽管 GPL 是一个开源协议,但是它根本上是个自由软件协议,作为自由软件协议,它的管理以及支持是由自由软件基金会提供的。 我喜欢自由软件基金会的作品,但是他们已经把观点局限于软件必须 100% 绝对自由。对于自由软件基金会没有多少可以妥协的余地,甚至很多出名的开源项目(比如很多 Linux 发行版)仅仅是因为一丁点二进制固件就被认为是 “非自由” 软件。 对于商业来说,最复杂...阅读全文

博文 2017-08-04 08:03:43 debian.cn

如何写好技术文档 — 来自十多年的文档经验总结

预设了很多背景知识。 一般使用文档都是有开发者写的,他们都非常了解这个工具的相关的知识,所以习惯性的会认为,啊 这个知识点很简单 用户也肯定会吧,实际上用户不一定会。这本质上就是一种认知偏差,这种现象在跨团队协作 尤其是多端协作的时候也非常明显。 这类型的文档写作中,要求写作者尽可能站在用户的视角上思考,极力避免出现和用户的认知偏差,力争每个步骤做到明确无歧义,每两个步骤之间做到紧密衔接。 ## 概念性文档 ## 当参考文档无法解释清楚某些东西的时候,就需要概念性文档了,比如某个API的具体实现原理。其主要是为了扩充参考文档,而不是替代参考文档。有时候这和参考文档会有些内容重复,但主要还是为了更深次的说明某些问题、解释清楚某个概念。 概念性文档也是所有文档中写作最难的,也是被阅读最少的,所...阅读全文

博文 2021-07-30 16:15:13 joseph

案例:Redis命令不当 引起数据库雪崩 造成数百万损失

) 升级数据库配置 迁移非核心业务到新的RDS实例中去 第二次宕机 由于上一次的宕机原因未找到,所以此次的宕机是可以预见的。 20180919,还是一样的”配方”,还是原来的”味道”。同一个RDS,CPU飙升至100%,接下来就是拒绝服务,宕机。当然,有了第一次的经验,直接主从切换,在几十秒左右就恢复了所有业务,但还是严重影响了公司的业务和形象 原因分析 恢复业务后,公司紧急召开了紧急事故研究会议,当然,我的级别是参与不了的。公司的高管,高技术架构、DBA、各个项目的主负责人一起进行了会议。 在此次会议中,经过查看各个项目的日志,后台的监控数据,发现在那台RDS数据库CPU飙升时,有一台Redis数据库内存将近100%,然后急剧下降。联系第一次的宕机情况,也是类似的。 接下来就是联系服务器数据...阅读全文

博文 2018-10-27 10:18:18 debian.cn