InfraPub 为您找到相关结果 475

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

普通人来说,也没有那么可怕。一般人平均每天的写入量很少能超过10GB,那么我们就假设是10GB,120GB QLC SSD,写入寿命达到120 TB。假设写入放大系数则假定为3,甚至5,那么三年之内,很难写坏它。且QLC闪存拥有高容量,也意味着其在QLC驱动器中可通过超额配置以延长产品本身的有效寿命。 目前TLC SSD在质保期普遍达到3年,有的质保期甚至达到5年。那么QLC 寿命问题又有什么好担心? 2、稳定性 QLC闪存是存储4位电荷,有16种状态,而TLC存储3位电荷,有8种状态 。这意味着QLC闪存单位存储密度更大,是TLC的2倍,单颗芯片可达到256GB甚至512GB。但是,也因如此,QLC闪存的电压更难控制,干扰更杂,而这些问题都会影响QLC闪存的性能、可靠性及稳定性。不过...阅读全文

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

项目总结报告应该怎么写

每次项目进度都很紧张、项目发版时间总是一延再延、每个版本bug数量堆积成山、测试期间各种bug总是层出不穷、临近上线发现严重bug,如果项目经理总是被这些问题围绕,那么项目总结迫在眉睫。项目经理如何进行项目总结才能让项目顺利进行,让领导一看就喜欢,今天把经验分享给大家,帮助你做好项目总结。总结的思维模式想写好一份项目总结,总结人员必须具备一定的结构化思维,对问题、数据进行结构分析,且能够通过结构化思维表达出来。结构化思维具备以下四个特点。​结论:问题比较多的时候,要进行抽象归纳,做到抓大放小,先解决当前最主要的问题。总结的目的✤对项目进行盘,发现项目中存在的问题,针对问题找到根本原因并提出解决方案;✤提高项目质量,让项目“健康”前行;✤通过数据衡量当前版本的质量,对项目整体情况进行评估...阅读全文

深入学习golang — channel

. }() doSomethingForAWhile() <-c // Wait for sort to finish; discard sent value. 上面的示例中,在子goroutine中进行排序操作,主goroutine可以做一些别的事情,然后等待子goroutine完成排序。 接收方会一直阻塞直到有数据到来。如果channel是无缓冲的,发送方会一直阻塞直到接收方将数据取出。如果channel带有缓冲区,发送方会一直阻塞直到数据被拷贝到缓冲区;如果缓冲区已满,则发送方只能在接收方取走数据后才能从阻塞状态恢。 3. 消息传递 我们来模拟一下经典的生产者-消费者模型。 func Producer (queue chan<- int){ for i:= 0; i < 10; i++ { queue <- i } } func...阅读全文

博文 2021-01-25 12:39:17 博客园

如何在 Debian 上添加和删除用户

提供了一个更熟悉的文字编辑体验。使用箭头键移动光标,并搜索如下所示的线: / etc / sudoers root ALL=(ALL:ALL) ALL 在这行下面,制你在这里看到的格式,只改变单词“root”来引用你想给sudo权限的新用户: / etc / sudoers root ALL=(ALL:ALL) ALL sammy ALL=(ALL:ALL) ALL 你应该为每个应该给予完全sudo权限的用户添加一个这样的新行。当你完成,你可以保存并通过点击关闭文件CTRL-X其次是Y ,然后ENTER确认。 如何删除用户 如果您不再需要用户,最好删除旧帐户。 您可以删除用户本身,而不删除任何他们的文件,通过键入作为根用户: deluser sammy 如果您以具有sudo权限的其他非...阅读全文

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

WebAssembly:无需容器的 Docker (下)

-wasmedge-aot 二进制码。要了解有关 WasmEdge AOT 优化二进制文件的更多信息,请查看这里。构建 OCI 镜像现在我们有了一个二进制文件,我们可以将它包装在一个 OCI 镜像中。 让我们看一下这个 images/php/Dockerfile.cli。 我们需要做的就是制 Wasm 二进制文件并将其设置为 ENTRYPOINT。FROM scratch ARG PHP_TAG=php-7.4.32 ARG PHP_BINARY=php COPY build-output/php/${PHP_TAG}/bin/${PHP_BINARY} /php.wasm ENTRYPOINT [ "php.wasm" ] 我们还可以在镜像添加更多内容,当 Docker 运行它时,Wasm 二进制文件可...阅读全文

博文 2023-01-03 06:39:46 spider

一位五年工作经验架构师的感悟

,但是按照我当时的理解,说不清这个概念,我现在也不一定说清这个概念。第二个问题就是:你愿意做外包么?我回答不愿意。 最后女 HR 和光头说,你等一等,我们合计合计。合计的结果就是,我进来了,进来的不容易。可能还多亏当年扩招。现在我们面试的时候,我们也经常说:要是按照现在的面试要求,那么我肯定进不来。 这就是一段比较有意思的经历,当我妻子比较犹豫的时候,经常对妻子讲:日子总是越来越好。我的经历也可以看出很多。 所以,失败不可怕,需要最自己、未来充满信息。努力去学习。 脚踏实地,如饥似渴,积少成多 于是进入了支付宝,支付宝好杂。有很多东西给我学。 光头老大给有次问我:你的学习计划是什么呢? 我说:我要把支付宝的所有框架,业务都学习一遍(真不知天高地厚) 老大说:你学的完吗? 我说:我看了下确实很...阅读全文

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

协议介绍之深入了解 gRPC

...) ... +---------------------------------------------------------------+ Length:也就是 Frame 的长度,默认最大长度是 16KB,如果要发送更大的 Frame,需要显式的设置 max frame size。 Type:Frame 的类型,譬如有 DATA,HEADERS,PRIORITY 等。 Flag 和 R:保留位,可以先不管。 Stream Identifier:标识所属的 stream,如果为 0,则表示这个 frame 属于整条连接。 Frame Payload:根据不同 Type 有不同的格式。 可以看到,Frame 的格式定义还是非常的简单,按照官方协议,可以非常方便的写一个出来。 Multiplexing HTTP/2 通过 stream 支持了连接的多路用,提高了连接的利用率。Stream 有很多重要特性: 一条连接可以包含多个...阅读全文

博文 2017-06-22 11:08:48 debian.cn

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

齐全的API都是设计良好的API,虽然这个感觉并不完全正确,但这两者确实是强相关的,所以在很多人眼里,文档的完善度也成为衡量一个产品专业度的指标。 - 避免被重的问题打扰: 有些问题你只需要写在文档里,这样有人来问你的时候你就可以让他直接去看文档了,而不是又给他解释一遍。 ## 为什么大多数人都不喜欢写文档?## 关于文档的重要性,每个技术人或多或少都知道一些,但很多人还是没有写文档的习惯,为什么? 除了上文中提到的文档的收益滞后性外,还有以下几点原因: - 很多工程师习惯将写代码和写作割裂开,不仅仅是在工作上,而且在思想上就认为它们是完全不相关的两项工作,这就导致好多人重代码不重文档。 - 也有很多工程师认为自己不善写作,索性就不写了。 这实际是个偷懒的借口,写文档不需要华丽的辞藻、生动...阅读全文

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

什么是线程安全,以及并发需要知道的几个概念

= new Thread(); t1.start(); t2.start(); t1.join(); t2.join(); System.out.println(i); } } 两个线程 t1 和 t2 同时开启,执行run方法,在我们的预想中,如果是线程安全的话,那么main的执行结果应该是20,但是因为 i 是共享数据,而程序没有对 i 的操作做同步的处理,最终运行的结果并不是20,所以这种情况就不是线程安全的情况。 解决的办法也比较简单,可以利用synchronized关键字来饰方法或代码块,这部分的知识也是并发编程中非常重要的一块,当然,本文就不探究了,之后单独写篇文章出来细说。...阅读全文

博文 2018-12-31 20:44:06 debian.cn

Kubernetes 部署 Nacos 1.4 集群 · 小豆丁

volumeMounts: - name: plugindir mountPath: /home/nacos/plugins/peer-finder - name: datadir mountPath: /home/nacos/data - name: logdir mountPath: /home/nacos/logs volumeClaimTemplates: - metadata: name: plugindir spec: storageClassName: nfs-storage #指定storageclass名称,这里需要根据你的K8S集群进行改 accessModes: ["ReadWriteMany"] resources: requests: storage: 5Gi - metadata...阅读全文

博文 2021-02-24 10:10:29 www.mydlq.club

技术部门的 SEO 规范

遵守的SEO规范,开发网站或改网站时,即使不与SEO部门协同,也至少不能违反SEO规范,以防产生灾难性的后果。以前为客户写过一些技术部门SEO规范,现在简单整理更新一下,分享给大家,希望对其它公司也有帮助。 技术部门SEO规范 本SEO规范适用于公司所有新建网站及对现有网站的更新、改版。本SEO规范不是建议,是强制性规定。编程、前端、运维等技术相关部门务必遵守。 对本SEO规范中的内容有疑义时,请与SEO部门沟通,不可自行解释有疑义部分。 域名及服务器相关 只解析公司因业务需要决定开通的子域名。未开通子域名一律不解析。不要使用泛解析(以通配符*代替子域名)。不能有两个或两个以上域名显示同样网站内容(无论以哪种方式实现,如解析至相同根目录、上传同样文件和数据库)。用于测试的子域名使用...阅读全文

博文 2019-03-28 13:58:51 debian.cn

aptitude 与 apt

一些发行版中我们也能看到它的身影。 Apt是一个很完整和先进的软件包管理程序,使用它可以让你又简单,又准确的找到你要的的软件包, 并且安装或卸载都很简洁。 它还可以让你的所有软件都更新到最新状态,而且也可以用来对 Debian/Ubuntu 进行升级。apt是需要用命令来操作的软件,不过现在也出现了很多有图形的软件,比如 Synaptic, Kynaptic 和 Adept。 命令样例 下面将要介绍的命令大部分需要sudo,使用时请将“packagename”和“string”替换成您想要安装或者查找的程序。 apt-get update —— 在改/etc/apt/sources.list或者/etc/apt/preferences之後运行该命令。此外您需要定期运行这一命令以确保您的软件...阅读全文

博文 2021-01-28 17:50:09 get 的区别与联系

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

于理论上的设计,也就是上面4个步骤的确定,一旦设计完成,实现部分就会非常简单。 使用动态规划求解问题,最重要的就是确定动态规划三要素: (1)问题的阶段 (2)每个阶段的状态 (3)从前一个阶段转化到后一个阶段之间的递推关系。 递推关系必须是从次小的问题开始到较大的问题之间的转化,从这个角度来说,动态规划往往可以用递归程序来实现,不过因为递推可以充分利用前面保存的子问题的解来减少重计算,所以对于大规模问题来说,有递归不可比拟的优势,这也是动态规划算法的核心之处。 确定了动态规划的这三要素,整个求解过程就可以用一个最优决策表来描述,最优决策表是一个二维表,其中行表示决策的阶段,列表示问题状态,表格需要填写的数据一般对应此问题的在某个阶段某个状态下的最优值(如最短路径,最长公共子序列,最大价值...阅读全文

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

Jono Bacon: GPL 没落了吗?

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

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

Golang 中的 channel 通道详解

shrinking. lock mutex } 创建一个channelvar name chan elemType //声明中需要指定channel的具体类型 eg. var c chan int 声明了一个int的channel 我们使用make()方法创建,可以指定chan的缓存区大小。c := make(chan int, 10) //make创建一个int类型的channel,容量大小为10 c1 := make(chan int) // 无缓存的channel make()函数最后会调用底层的makechan()函数,返回一个通道的指针。当我们制一个channel或用于函数参数传递时,我们只是拷贝了一个channel引用,因此调用者和被调用者将引用同一个channel对象。和其它的引用类型一样...阅读全文

树莓派 9 周年:你不知道的树莓派冷知识

树莓派中的实现,可以将树莓派变成 Chromebook。Windows 10:是的,甚至有用户经过一番折腾,成功在 Raspberry Pi 4 上安装了 Windows 10,但由于硬件架构适配性不足等原因,运行速度很慢,慎用。 Lakka:该操作系统专为一些古游戏而设计,预装了一系列模拟器,可以将树莓派变成一台老式游戏机。6.太空中运行着两台树莓派这绝对算是一个有趣的冷知识。国际空间站运行着两台“Astro Pis”设备,事实上,这是经过特别改良的 Raspberry Pi B+ 型,这两台树莓派经过“空间改造”以适应太空环境,并配备了官方的 Raspberry Pi Sense HAT。欧洲航天局会举办定期竞赛,孩子们提交的代码可以在外太空的这两台设备上远程运行,以进行一些有趣的空间...阅读全文

博文 2021-03-11 17:03:55 diablo4

Intel 为啥要给 ARM 代工

公式就尤为重要了。Intel 希望在介绍工艺节点时要公布逻辑芯片的晶体管密度、SRAM cell 单元面积等参数,并定下加权系数以便于新标准计算。 原本的 XXnm 制造工艺,一方面是衡量速度,一方面也是集成度。越高工艺的目标是集成度越高,速度越快。但如果只用 XXnm 来衡量制造工艺,其实是有所欠缺的。比如中国大陆的 SMIC 和台积电相比,虽然是同等工艺但要慢不少。加上之前苹果交付三星代工的 14nm 芯片反而不如台积电 16nm 芯片的情况,使 Intel 提出的新公式具有一定依据。 不过,Intel 这个新标准的权威性还有待提升,相关例证也有待补充,而且新标准计算相对杂,不太容易被大众理解。更关键的是出于商业利益,台积电和三星也不可能去迎合 Intel 的新标准,毕竟台积电和三星已...阅读全文

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

百度运维工程师挖矿实录:四个月用155台服务器挖矿赚10万判3年

起运维人员挖矿导致百度损失 2.7 万的事件,同样是运维人员在“涉险”,为什么是运维人员呢? “运维”人员在企业的价值,他们自己的调侃是:当企业没有发生技术故障的时候,大家感觉不到运维人员的存在。当企业发生故障的时候,大家感觉到运维人员确实没有存在的必要。 但调侃归调侃,这反映了技术运维人员在企业中面临的尴尬处境,但实际上,运维人员对于一家企业运营维护的保障,确实是很重要的。他们的职责包括服务器的部署、配置、维护;互联网平台的部署、升级、迁移、数据备份恢;监控服务器,平台的运行,系统优化等,可以说,他们掌握了企业的后门,一旦运维部门发生危险,公司有可能陷入瘫痪状态,因此,一直以来,运维人员也拥有很多访问权限,而这却变成了运维人员不惜“涉险”的一个原因之一。 于是,如何对运维人员进行权限管理...阅读全文

博文 2020-03-17 20:42:41 debian.cn

WebAssembly:无需容器的 Docker (上)

语言可以编译成 Wasm,有现代的、不断改进的工具链。服务器平台发展的下一步是什么?也许你已经看过 Solomon Hykes (Docker 的创始人之一) 这句话:如果在 2008 年已经有了 WASM + WASI,我们根本不需要创建 Docker。 Wasm 就有这么重要。 服务端的 WebAssembly 是计算的未来。事实上,WASM+WASI 似乎的确是服务端软件基础设施发展的下一步。最早,我们有物理硬件可以使用。 我们会给机房里每个服务器精心安装操作系统和应用程序,并一一维护。然后随着 VMware 开创的 VM 的采用,一切变得更容易了。 人们可以跨硬件机器制、克隆和移动虚拟机。 但这仍然需要在 VM 中安装操作系统和应用程序。随后出现了由 Docker 推广的容器,这使...阅读全文

博文 2023-01-03 06:35:56 spider

Linux下多线程程序为什么消耗大量虚拟内存

,跑至内存不再增加,果然valgrind显示没有任何内存泄露。反试验了很多次,结果都是这样。 在多次使用valgrind无果以后,我开始怀疑程序内部是不是用到mmap之类的调用,于是使用strace对mmap,brk等系统函数的检测: strace -f -e"brk,mmap,munmap" -p $(pidof AuthServer) 其结果如下: [pid 19343] mmap(NULL, 134217728, PROT_NONE, MAP_PRIVATE|MAP_ANONYMOUS|MAP_NORESERVE, -1, 0) = 0x7f53c8ca9000 [pid 19343] munmap(0x7f53c8ca9000, 53833728) = 0 [pid 19343...阅读全文

博文 2015-01-28 10:35:39 debian.cn

Debian Live 项目的剧变

Learmonth 要求为他的包换一个不同的名字的时候,他得到了一个「有趣」的回: 应该注意到, live-build 不是一个 Debian 项目,它是一个声称自己是官方 Debian 项目的外部项目,这是一个需要我们解决的问题。 这不是命名空间的问题,我们要将以目前维护的 live-config 和 live-boot 包为基础,把它们加入到 Debian 的本地项目。如果迫不得已的话,这将会有很多分支,但是我希望它不要发生,这样的话我们就可以把这些包整合到 Debian 中并继续以一种协作的方式去开发。 live-build 已经被 debian-cd 放弃,live-build-ng 将会取代它。至少在一个精简的 Debian 环境中,live-build 会被放弃。我们(开发团队)正在与...阅读全文

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

五款流行开源的 HIDS 系统简单介绍

杂的。一旦它的安装,你需要启动数据库,你可以轻松地开始你的支票。如果您需要一个集成良好的Linux入侵检测系统,则开源Triptrip可能是您的最佳选择,但它有一些限制。例如,它不会实时通知您,因此您需要自己查看日志。您还需要在安装操作系统后进行安装,以使其在安装之前不会检测到恶意活动。以下屏幕快照除了其他指示之外,还说明了每个规则和安全级别。​图23. WazuhWazuh是另一个用于完整性监视,事件响应和合规性的开源监视解决方案。撰写本文时,最新版本为3.8.2。如前所述,您可能会在网上看到Wazuh与OSSEC的比较,但这不仅是因为相似的目的,而且是一个共同的起源。Wazuh最初是OSSEC的分支,并且如官方文档所示,它的构建具有更高的可靠性和可伸缩性。除了执行日志分析,完整性检查...阅读全文

博文 2023-01-26 11:07:43 joseph

聊聊很重要的内核技术eBPF

查是BPF程序的空运行。这意味着验证者将尝试分析程序将要执行的每条指令,以确保它不会执行任何无效的指令。此执行还将检查所有内存指针是否均已正确访问和取消引用。最后,空运行向验证程序通知程序中的控制流,以确保无论程序采用哪个控制路径,它都会到达BPF_EXIT指令。为此,验证程序会跟踪堆栈中所有访问过的分支路径,并在采用新路径之前对其进行评估,以确保它不会多次访问特定路径。经过这两项检查后,验证者认为程序可以安全执行。 3) hook : 由于eBPF是事件驱动的,所以ebpf是作用于具体的hook的。根据不同的作用,常用的有XDP,trace,套接字等。 4)帮助函数:eBPF程序无法调用任意内核功能。允许这样做会将eBPF程序绑定到特定的内核版本,并使程序的兼容性杂化。取而代之的是...阅读全文

博文 2020-08-16 11:08:44 debian.cn

Debian 往事: 与已故创始人 Ian Murdock 的昔日访谈

? Linux 系统当时的分割方式基本就是磁盘分割。所以如果你下载了所有的磁盘的话,某种意义上你也就下载了一套 Linux 系统。我们认为这个方法不够好,我们要用更适合分工开发的法子来。 我们决定 Debian 的系统开发由资源包来。也就是说,系统的每一个内容、每一个板块都会以资源包的形式存在,这些资源包能够自动整合成一个完整的系统。你下载了这个资源包的时候,它就知道如何移除自己或是升级自己。 分工也一样按照资源包来,哪个资源包出错了就能非常明确地知道是谁的责任。我们会在开发时设定标准和规定,保证任何来源的资源包都能在我们的系统上照常运行。所以你只要下载全资源包,你就有了一整个系统。这感觉就像手工布艺一样,把很多布片拼成一整个作品,只不过实际上原理要比这杂不少。 当然 Debian 项目的资源包分割法...阅读全文

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

Gitlab CI 配置文件 .gitlab

入手动执行。GitLab 9.0 开始引入手动停止。GitLab 9.2 开始引入保护手动操作。 手动操作指令是不自动执行的特殊类型的job;它们必须要人为启动。手动操作指令可以从pipeline,build,environment和deployment视图中启动。 部署到生产环境是手动操作指令的一个很好示例。 了解更多请查看environments documentation。 手动操作指令可以是可选的或阻塞。在定义了手动执行的那个stage中,手动操作指令将会停止pipline中的自动执行指令。当有人通过点击play按钮来执行需要手动执行的job时,可以来恢pipeline的执行。 当pipeline被阻塞时,即使是pipeline是成功状态也不会merge。被阻塞的pipelines...阅读全文

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