InfraPub 为您找到相关结果 752

Golang 面试题搜集

# Golang 面试题搜集 - 题目来自 [Github](https://github.com/lifei6671/interview-go/blob/master/README.md) ## Golang 常见面试题目解析 - [交替打印数字和字母](https://github.com/lifei6671/interview-go/blob/master/question/q001.md) - [判断字符中字符是否全都不同](https://github.com/lifei6671/interview-go/blob/master/question/q002.md) - [翻转字符](https://github.com/lifei6671/interview...阅读全文

WebAssembly时代 Rust也想成为Web语言

目前 Mozilla 正在基于 WebAssembly 可移植代码格式研发 JavaScript 和 Rust 之间的桥梁——wasm-bindgen,意义是提高 JavaScript 和 Rust 之间的互操作性。Mozilla 这么做是想让 Rust 成为类似 JavaScript 的 Web 语言,让它能够与 Web 应用中的 WebAssembly 和 JavaScript 一起使用。 Wasm-bindgen 提供 WebAssembly(wasm)模块和 JavaScript 之间的高级别交互。使用 wasm-bindgen,JavaScript 和 WebAssembly 之前不仅可以通过整形和浮点型进通信,还可以使用字符、JavaScript 对象和类进。 wasm...阅读全文

博文 2018-04-10 12:38:26 debian.cn

Ubuntu 20.04 LTS 时间表,4 月 23 日发布稳定版

界面中不会发生其它更新。随后,文档处理也将开始,包括最新的屏幕截图。 3 月 26 日:冻结文档字符 完成所有特性和用户界面更新之后,文档中将停止创建和修改字符。如果在稍后阶段需要更改字符,则在获得团队批准的情况下才可以添加。 4 月 2 日:测试版冻结 开发人员在 Ubuntu 正式发布之前体验 Ubuntu 测试版本并提出 bug 或错误修复建议。 4 月 9 日:内核冻结 内核冻结是内核更新的最后期限。 4 月 16 日:最终冻结 最终冻结是最终版本的倒数第二个阶段,团队确认所有修复。 4 月 23 日:最终稳定版本 正式推出最终稳定版本。 不过像我们此前报导过的里程碑每日构建 Current 版本的开始出现则不列在此时间表中。 相关链接 Ubuntu 的下载地址:点击下载...阅读全文

博文 2020-01-25 10:40:19 debian.cn

Elasticsearch 7.6.0 发布,分布式搜索和分析引擎

Elasticsearch 7.6.0 发布了,Elasticsearch 是一个分布式的 RESTful 风格的搜索和数据分析引擎。 更新内容较多,摘取部分新特性: Aggregations 新的直方图字段映射器,支持百分位数聚合 #48580 (issue: #48578)对字符术语实施统计汇总 #47468 Analysis 实施 Lucene EstonianAnalyzer,投票 #49149 (issue: #48895) Authentication 受密码保护的密钥库 (Feature Branch) #49210 Features/ILM+SLM 等待 SLM 策略执的 ILM 操作 #50454 (issue: #45067)添加 ILM histore 商店索引...阅读全文

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

与Y的最后一个元素相同,这说明该元素一定位于公共子序列中。因此,现在只需要找:LCS(Xn-1,Ym-1)就好,LCS(X,Y)=LCS(Xn-1,Ym-1)+1;如果xn != ym,这下要麻烦一点,因为它产生了两个子问题:LCS(Xn-1,Ym) 和 LCS(Xn,Ym-1)。 动态规划解法:先创建一个解空间即数组,因为给定的是两个字符即两个一维数组存储的数据,所以要创建一个二维数组,设字符X有n个值,字符Y有m个值,需要创建一个m+1*n+1的二维数组,二维数组每个位置(i,j)代表当长度为i的X子与长度为j的Y的子他们的最长公共子,之所以要多创建一个是为了将边界值填入进去,边界值就是第一跟第一列,指X长度为0或者Y长度为0时,自然需要填0,其他位置填数字时,当这两个位置...阅读全文

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

三星860 PRO固态盘现身官网:4TB SATA 3售1.2万元

三星的850EVO/PRO以及不带后缀的850固态盘(120GB国399元)已经发布开卖相当长一段时间了,新品的迹象迟迟看不到。今日有网友从三星北美官网发现了860 PRO已经正式出现。 页面显示,4TB的起售价是1899.99美元(约合1.22万元),型号MZ-76P4T0E。性能方面,连续读取最高560MB/s、连续写入最高530MB/s,妥妥的SATA3。 目前,三星850 EVO在国内提供有4TB的选项,也是SATA3,价格是11399元。此前,860 EVO曾现身设备组织官网,显示容量从256GB到4TB。 闪存方面,外媒TMHW此前从线人那里得知,860 EVO将是三星的第一代消费级QLC闪存固态盘,也就是4bits/Cell,而PRO可能还是3D TLC。 简单一提,一...阅读全文

博文 2018-01-17 23:33:28 debian.cn

W3C 宣布:WebAuthn 成为正式 Web 标准

万维网联盟(W3C)与 FIDO 联盟近日宣布,Web 认证(Web Authentication,简称 WebAuthn)现已成为正式 Web 标准。 WebAuthn 于 2015 年 11 月由 W3C 和 Fido 联盟宣布,现已成为网上无密码登录的开放标准。它由 W3C 贡献者支持,其中包括 Airbnb、阿里巴巴、苹果、谷歌、IBM、英特尔、微软、Mozilla、PayPal、软银、腾讯和 Yubico。 WebAuthn 允许用户使用生物特征、移动设备或 FIDO 安全密钥登录在线帐户,而不是在账号密码框中键入一字符。Android 和 Windows10 已经支持 WebAuthn。浏览器方面,谷歌 Chrome、Mozilla Firefox 和 微软 Edge 浏览...阅读全文

博文 2019-03-05 09:03:12 debian.cn

命令行下如何对字符进行十六进制的编码和解码?

比如,当我们需要查看 /etc/passwd 的内容时,可以通过对文件名编码,隐藏这个操作, ``` cat $(echo -e "\x2f\x65\x74\x63\x2f\x70\x61\x73\x73\x77\x64") ``` 如何对指定的字符做 16 进制的编码?借助 od 命令即可, ``` $ echo /etc/passwd | od -A n -t x1 2f 65 74 63 2f 70 61 73 73 77 64 0a ```...阅读全文

C++ 20 准备发布 C++ 23 提上议程

、dynamic_cast、try/ catch、虚拟constexpr 向量和字符计时:日历、时区支持std::formatstd::spanstd::jthread 预计这些新特性将会对开发者及 C++ 生态产生不小影响,特别是像协程这种巨大的变化。 同时,在此次会议期间,委员会还通过了 C++ 23 计划,其中包括优先考虑模块化标准库、对协程、执程序和网络的库支持。...阅读全文

博文 2020-02-16 10:46:16 debian.cn

Linux 系统 vim 编辑器使用简明教程

做文字输入,按ESC键可回到命令模式。 3) 底模式(last line mode) 将文件保存或退出vi,也可以设置编辑环境,如寻找字符、列出号。 不过一般我们在使用时把vi简化成两个模式,就是将底模式也算入命令模式。 一、打开文件、保存、关闭文件(vi命令模式下使用) vi filename //打开filename文件 :w //保存文件 :w debian.cn //保存为当前目录下的文件"debian.cn" :q //退出编辑器,如果文件已修改请使用下面的命令 :q! //退出编辑器,且不保存 :wq //退出编辑器,且保存文件 :x! //退出编辑器,且保存文件,忽略是否对文件具有写权限 二、插入文本或(vi命令模式下使用,执下面命令后将进入插入模式,按ESC键可退...阅读全文

博文 2015-07-25 16:33:04 debian.cn

树莓派4B修复USB

Macbook 12" 2015,Anker PowerPort Speed,Apple USB-C charger cable,LG 32ul950 屏幕都可以给新版正常供电了。 新版4B版本的检测方法如下:在终端输入 cat /proc/cpuinfo 将会显示硬件版本,倒数第二里有Revision。如果是如下的字符,说明你买到的是已经修复的新版本,Revision: c03112。 值得注意的是,目前只有4G版本才有1.2版出货。 另外 Raspbian 的内核其实已经有64位的了,但是官方目前并没有公布,仅仅是在论坛里面的技术人员提到了这件事情。首先执命令,更新系统:sudo rpi-update然后在config.txt中加一:arm_64bit=1然后再更新并重启就可以生效了。虽然...阅读全文

博文 2020-01-28 11:17:21 C供电问题的新版已出货

Debian 10 Buster 将确保自动安装安全升级

对snapshot.debian.org构建操作系统来帮助调试回归,Debian Installer Buster现在可以处理systemd init系统的控制台配置。 update-initramfs调用已经使用临时填充进了优化。 Syslinux现在支持EXT4 64位功能 在硬件支持方面,Debian Installer Buster Alpha 2版本支持新型单板计算机,包括A20-OLinuXino-LIME2-eMMC,FriendlyArm NanoPi M1 Plus,Marvell Armada 8040 DB,Marvell 8040 MACHIATOBin,Olimex,SolidRun HummingBoard和Solo / DualLite。 它还将udebs...阅读全文

博文 2017-12-10 07:04:21 debian.cn

Java 12 / JDK 12 正式发布

CDS Archives 默认类数据共享归档文件344Abortable Mixed Collections for G1 可中止的 G1 Mixed GC346Promptly Return Unused Committed Memory from G1 G1 及时返回未使用的已分配内存 下边分别来看看: Shenandoah: A Low-Pause-Time Garbage Collector (Experimental) Shenandoah:低暂停时间的 GC(实验性功能) 新增了一个名为 Shenandoah 的 GC 算法,通过与正在运的 Java 线程同时进 evacuation 工作来减少 GC 暂停时间。使用 Shenandoah 的暂停时间与堆大小无关,这意味着无论堆是...阅读全文

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

Redis 6.0.0 GA已正式发布

我的首选功能是重新实现ACL GENPASS。现在,它使用基于SHA256的HMAC,并接受一个可选参数来告诉服务器要生成多少位不可猜测的伪随机字符。Redis在启动时从/ dev / urandom获得内部密钥,然后在计数器模式下使用HMAC来生成其他随机数:这样,您可以滥用API,并在每次需要时调用它,因为它将非常快。是否想为您的应用程序生成无法猜测的会话ID?只需致电ACL GENPASS。依此类推。 4. 现在,对PSYNC2(复制协议)进了改进。Redis现在将能够修整协议中的最终PING,从而能够更频繁地进部分重新同步,从而使副本和母版更有可能找到共同的偏移。 5. 带有超时的Redis命令现在要好得多:不仅BLPOP和其他以前接受秒的命令现在都能接受十进制数字,而且实际分...阅读全文

博文 2020-05-01 09:15:09 debian.cn

C++20 标准草案全票批准通过

拟constexpr 向量和字符计时:日历、时区支持std::formatstd::spanstd::jthread 详细变化查看 cppreference.com, open-std.org 和 Wikipedia。 像 Concepts/Ranges/Modules/Coroutines 这些新特性将会对开发者及 C++ 生态产生不小的影响,也为这门“高龄”编程语言增添不少魅力。 工具方面,GCC 10 编译器对 C++20 标准已基本支持,在更早的 GCC 8/9 中,目前尚待完成的是对 modules 的支持。GCC Wiki 页面概述了目前正在进的工作。此外,Clang C++ 状态报告页面显示已完成了对大部分特性的支持,待完成的包括 concepts, immediate...阅读全文

博文 2020-09-08 10:51:13 debian.cn

Omi 5.0.5 发布,腾讯开源的下一代 Web 框架

框架 Omi 内置 observe 制作响应式视图(免去 this.update) Web Components 也可以数据驱动视图, UI = fn(data) JSX 是开发体验最棒(智能提示)、语法噪音最少、图灵完备的 UI 表达式,模板引擎不完备,模板字符完备但是语法噪音太大 独创的 Path Updating 机制,基于 Proxy 全自动化的精准更新,功耗低,自由度高,性能卓越,方便集成 requestIdleCallback 对 this.update 说再见吧!只要使用 store 系统,它就会自动化按需更新局部视图 看看Facebook React 和 Web Components对比优势,Omi 融合了各自的优点,而且给开发者自由的选择喜爱的方式 Shadow DOM...阅读全文

博文 2018-12-13 02:36:19 debian.cn

aptitude 与 apt

的。apt-get upgrade——更新所有已安装的软件包apt-get dist-upgrade——将系统升级到新版本apt-cache search string——在软件包列表中搜索字符dpkg -l package-name-pattern——列出所有与模式相匹配的软件包。如果您不知道软件包的全名,您可以使用“*package-name-pattern*”。aptitude——详细查看已安装或可用的软件包。与apt-get类似,aptitude可以通过命令方式调用,但仅限于某些命令——最常见的有安装和卸载命令。由于aptitude比apt-get了解更多信息,可以说它更适合用来进安装和卸载。apt-cache showpkg pkgs——显示软件包信息。apt-cache...阅读全文

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

Kubernetes源码探疑:Pod IP泄露排查及解决方法

1440次申请VPC IP和释放VPC IP操作。 然而,经过数天的测试统计,发现通过该CronJob,集群每天申请IP次数高达2500以上, 而释放的的IP次数也达到了1800。申请和释放次数都超过了1440,而且申请次数超过了释放次数,意味着,部分分配给Pod的VPC IP被无效占用而消失了。 CNI:待删除的IP去哪儿了? 仔细分析CNI插件的运日志,很快发现,CNI在执拆除SandBox网络动作(CNI_COMMAND=DEL)中,存在不少无法找到Pod IP的情况。由于UK8S 自研的CNI查找Pod IP依赖正确的Pod网络名称空间路径(格式:/proc/10001/net/ns),而kubelet传给CNI的NETNS环境变量参数为空字符,因此,CNI无法获取待释放的VPC...阅读全文

Debian 环境下安装配置 Gitlab

/repositories/gitlab/gitlab-ee/script.deb.sh | sudo bash 安装的过程中会有个蓝色的窗口提示你输入名称,这个是gitlab的访问域名,因为默认通过nginx进解析的时候,指向的是你配置的这个域名,并且通过80端口。安装完成后可以看nginx的conf文件。 sudo apt-get install gitlab-ce 3. 启动GitLab 这个会加载所有的配置,启动相应的服务。所以说,和网络上其他的安装教程来比,新版本安装起来实在是太爽了。 sudo gitlab-ctl reconfigure 配置 更换域名 如上图,域名被替换为域名了,但是之前是字符git@debian...,因为在安装的时候,蓝色窗口弹出的时候直接按了回车使用了默认值。修改方法如下...阅读全文

博文 2017-12-22 19:42:42 debian.cn

ChaosMesh 的基本功能有哪些

混沌实验场景,以及方便地将已有的混沌实验场景复用到其他应用混沌实验中,大大降低了混沌实验的成本。目前混沌实验场景提供的功能有:编排混沌实验编排并混沌实验支持状态检查步骤支持中途暂停混沌实验支持使用 YAML 文件定义和管理混沌实验场景支持通过 Web UI 定义和管理混沌实验场景具体的实验场景配置,参考具体创建 Chaos Mesh Workflow。可视化操作​Chaos Mesh 为用户提供了单独的 Chaos Dashboard 组件,即可视化支持。Chaos Dashboard 极大地简化了混沌实验,用户可以直接通过可视化界面来管理和监控混沌实验,仅需点一点鼠标就能够定义混沌实验的范围、指定混沌注入的类型、定义调度规则,以及在界面上获取到混沌实验的结果等。​安全保障​Chaos...阅读全文

个人信息保护新规将出台 消费者被短信轰炸将成为历史

工业和信息化部将会同相关部门尽快发布实施《移动互联网应用程序个人信息保护管理的暂规定》(简称《规定》)。《规定》将为个人信息保护提供更加坚实的政策保障。在新规的引导下,多个电商平台已经主动加强了对客户信息的保护力度。 工业和信息化部信息通信管理局的人士近日透露:“在充分吸收社会各界意见的基础上,工业和信息化部会同相关部门制定了《规定》的征求意见稿,社会各界提出了一些好的意见和建议,我们正在研究采纳。在此基础上,尽快会同有关部门发布实施。” ![个人信息保护管理](https://wpfile.debian.cn/uploads/2021/06/f676e4a616f30fb.png) 在征求意见稿中,管理部门明确了App开发运营者的信息保护义务。 《规定》要求...阅读全文

提问的智慧(精简版)

骤,以及机器和软件的反应,直到问题发生。在命令处理的情况下,提供一段操作记录(例如运脚本工具所生成的),并引用相关的若干(如 20 )记录会非常有帮助。如果程序有诊断选项(如 -v --verbose --debug LOG_LEVEL=DEBUG 的详情指令),试着选择这些能在记录中增加调试信息的选项。记住,多不等于好。试着选取适当的调试级别以便提供有用的信息而不是让读者淹没在垃圾中。如果你的说明很长,在开头简述问题,接下来再按时间顺序详述会有所帮助。描述目标而不是过程如果你想弄清楚如何做某事(而不是报告一个 Bug),在开头就描述你的目标,然后才陈述重现你所卡住的特定步骤。😒 BAD | 我怎样才能从某绘图程序的颜色选择器中取得十六进制的 RGB 值?😊 GOOD| 我正试着...阅读全文

博文 2023-10-07 15:02:42 infras

Qt5.9发布:如何评价QT

程序和通用App,支持Win 10的所有配置(Windows 10,Windows 10 IoT Core,Windows Mobile)。 另外还提供了对QNX 7和iMX.7的支持。(本段是官方声明的逐字翻译。作为跨平台神器,每个版本支持的系统与平台均不一样,有兴趣的请去看官方日志。我目前只使用linux Qt,关于windows平台版本的问题不要再问我啦。) 还有完全支持C ++ 11, 支持Wayland多进程, 提升了Qt Lite, 提升了Qt总线模块用于设备总线通信(CAN&ModBus)的通信功能,全面支持Gamepad,增加了新模块Qt remote object,还有Web,Network,定位等内容的一些更新。 总结就是眼花缭乱的新特性确实很有亮点,但并不是每个项目...阅读全文

博文 2017-06-02 10:24:32 5.9的变化

钉钉发送报警消息的Python实现

] else: return '' access token 在2小时内有效,有效期内重复获取返回相同结果,重复获取会使有效期会自动顺延。corp_id 和corp_secret 是企业的 id 和 secret,在钉钉的管理后台可以找到。另外,上面用到了 urllib2 和 json,需要在脚本中引用。 消息类型 钉钉的消息类型分为:text,image,voice,file,link和OA。下面以发送文本,链接和文件消息为例进说明。 给用户发送消息 发送文本 def send_text_to_users(access_token, users, text): msg_type, msg = _gen_text_msg(text) return _send_msg_to_users...阅读全文

博文 2018-04-27 08:51:33 debian.cn

Debian 10.8 发布:包括多项安全更新和错误修复

-11) | 新的上游稳定版;安全修复[CVE-2020-25694 CVE-2020-25695 CVE-2020-25696] | | [postsrsd](https://packages.debian.org/src:postsrsd) | 确保时间戳标签在尝试解码之前不会太长[CVE-2020-35573] | | [python-bottle](https://packages.debian.org/src:python-bottle) | 停止允许;作为查询字符分隔符[CVE-2020-28473] | | [python-certbot](https://packages.debian.org/src:python-certbot) | 自动使用ACMEv2 API进续费,以...阅读全文

博文 2021-02-07 10:57:22 joseph

固态硬盘的 PCIE、SATA、M2、NVMe、AHCI 如何理解

固态硬盘近年来也是随着计算机的发展而得到了迅速的发展,目前已经隐隐有要取代机械硬盘的势头。但是关于固态硬盘相关的概念实在是繁琐,很多人选购固态硬盘时,看到商家宣传NVMe,PCIE 却不懂是什么意思,今天我们就来为大家详解这些概念。 首先我们要把 M2 跟 SATA 放一起说,我们常说的 M2 其实是 M.2,更多是指一种尺寸或者插槽,就是上图中右边的尺寸较小的直接插主板上的这种,而 SATA 通常是指上图左边那个尺寸较大的一大块那种。 还要提的是M.2插槽也是有两种的,一种是金手指有两个缺口的Socket 2跟金手指只有一个缺口的Socket 3,这两种可以走不同的通道,我们后面会说到。 接下来要搞懂的是 SATA 跟 PCIE,这两个东西是指接口或者就是数据走的通道,相信有人看到这...阅读全文

博文 2019-01-23 13:28:23 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

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

“模式浏览器(Schema Explorer)”这样可以执定期模式检查的特性也是值得拥有的。 忘记排序规则(排序顺序) 这比其他任何的配置错误都会导致更多的挫折和时间浪费。MongoDB 默认使用 二进制排序规则 。这对任何地方的文化都是不利的。在 80 年代,大小写敏感、重音敏感、二进制排序规则,和念珠、土耳其长衫和卷胡子一起,被视为奇怪的时代错误。现在,他们没法辩解了。在现实生活中,motorbike 和 Motorbike 就是一样,而 Britain 和 britain 就是同一个地方。小写字母和大写字母只是书写上的等价。就不要让我再说重音字符排序规则了。当你创建一个 MongoDB 数据库时,使用一种合乎系统 用户语言和文化 的 重音敏感、大小写敏感 排序规则。这使得字符数据的检...阅读全文

Web前端知识体系精简

和undefined是JS中的两个特殊类型,object是引用类型。 Javascript可以通过typeof来判断基础数据类型,但不能够准确判断引用类型, 因此需要用到另外一个方法,那就是Object的toString,关于数据类型及其判断可以参考以下博客:数据类型详解 和 判断JS数据类型的四种方法 JS常用的内置对象有Date、Array、JSON,RegExp等。 一般来讲,Date和Array用的最频繁,JSON可以对对象和数组进序列化和反序列化,还有一个作用就是实现对象的深拷贝。 RegExp即正则表达式,是处理字符的利器。 关于数据类型和正则表达式的介绍可以参考博客:ES5对数组增强的9个API 和 JS正则表达式精简 1、函数原型链 Javascript虽然没有继承概念...阅读全文

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

Go 1.16 即将发布,这些变更你需要知道

-bindata/go-bindata 这类第三方开源库来实现。 而从 Go1.16 起,通过 go:embed 就可以快速实现这个功能: import _ "embed" //go:embed hello.txt var s string print(s) 通过对变量 s 声明 go:embed 指令,使其在编译时读取当前目录下的 hello.txt 文件。 最终变量 s 就会输出 hello.txt 文件中的字符内容。 新增 io/fs 的支持 新增了标准库 io/fs,正式将文件系统相关的基础接口抽象到了该标准库中。 以前的话大多是在 os 标准库中,这一步抽离更进一步的抽象了文件树的接口。在后续的版本中,大家可以优先考虑使用 io/fs 标准库。 调整切片扩容策略 Go1.16 以前的...阅读全文

博文 2021-02-17 08:52:12 CSDN博客

Python的闭包和装饰器

的。除此之外,闭包还有很多其他功能,比如用于封装等,另外,闭包有效的减少了函数参数的数目,这对并计算非常有价值,比如可以让每台电脑负责一个函数,然后起来,实现流水化的作业等。 简而言之:@a 就是将 b 传递给 a(),并返回新的 b = a(b) 目录...阅读全文

博文 2014-07-23 17:06:38 debian.cn

CentOS停止维护后,我们应该用什么操作系统?

Debian 不能被单个公司所控制。我们的开发人员来自超过 60 个国家/地区,并且 Debian 本身也已经被翻译为超过 80 种语言。Debian 作为开发者使用的操作系统享有盛誉的原因是丰富的软件包数量和软件支持,这对开发者而言十分重要。强烈建议专业的程序员和系统管理员使用。Adarsh Verma 在 Fossbytes 上写道面向开发者的 Debian多种硬件架构Debian 支持一长的CPU架构,包括 AMD64、i386,ARM 和 MIPS 的多个版本、POWER7、POWER8、IBM System z 以及 RISC-V。Debian 还可以用于一些特殊用途的架构。物联网和嵌入式设备Debian 可以在各种设备上运,例如 Raspberry Pi、QNAP 的各个变种、移动设备...阅读全文

Monit:开源服务器监控工具

不指向目录,monit将禁用对此条目的监视。如果Monit在被动模式下运或者没有定义启动方法,Monit只会在错误时发送警报。 远程主机 CHECK HOST ADDRESS 主机地址可以指定为主机名字符或点分十进制格式的IP地址字符。例如,tildeslash.com或“64.87.72.95”。 系统 CHECK SYSTEM 的唯一的名称通常是本地主机名,而是可以使用任何描述性名称。如果使用变量$ HOST作为名称,它将扩展为主机名。此检查允许监控一般系统资源,如CPU使用率,总内存使用或负载平均。该唯一名称在邮件警报中用作系统主机名,在M/Monit中用作主机条目的初始名称。 自定义...阅读全文

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

如何读懂火焰图?+ 实例讲解程序性能优化 - xuxh120

火焰图(flame graph)是性能分析的利器。本文介绍它的基本用法。 一、perf 命令 让我们从 perf 命令(performance 的缩写)讲起,它是 Linux 系统原生提供的性能分析工具,会返回 CPU 正在执的函数名以及调用栈(stack)。 通常,它的执频率是 99Hz(每秒99次),如果99次都返回同一个函数名,那就说明 CPU 这一秒钟都在执同一个函数,可能存在性能问题。 $ sudo perf record -F 99 -p 13204 -g -- sleep 30 上面的代码中,perf record表示记录,-F 99表示每秒99次,-p 13204是进程号,即对哪个进程进分析,-g表示记录调用栈,sleep 30则是持续30秒。 运后会产生一个庞大...阅读全文

博文 2022-03-11 10:05:09 博客园

改善 Debian Linux 软件包管理的七款工具

如果你运Debian或它的衍生版本之一(比如Linux Mint或Ubuntu),迟早会遇到apt-get和dpkg,它们是主要的软件包管理命令。然而,这些只是最常见的Debian软件包工具。这些年来,Debian实际上陆续推出了几十款让安装和配置软件包更容易的脚本和工具。 许多这样的脚本和工具可以帮助你创建软件包。而且,它们常常包括你在桌面工具中根本找不到的功能特性。 下面是Debian中七款最实用的软件包管理工具。大多数工具还应该出现在Debian衍生版中: 7. Aptitude 众所周知,Aptitude是一款基于文本的软件包管理工具。桌面工具可能更符合现代用户的期望,不过Aptitude仍然很有用,所以常常默认情况下安装。 如果你试图修复阻止安装或删除其他任何内容的破损软件包...阅读全文

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

域名与商标: 如何防止域名被仲裁

域名,是用以简化记录服务器IP地址的马夹,所以,域名只有通过解析到具体的IP地址才能访问网站,就相当于给IP地址穿上的一件马夹,避免我们去记那一长的数字。可以说,域名的价值是依托于服务器的,没有域名的服务器,可以用IP地址访问,而不解析的域名,就仅仅只是一字符而已。 商标,是用以区分商品(或服务)来源的一种显著标志,不同公司提供的相同商品,对于大众而言,商品上印刷的标志,代表的就是不同公司。商标的价值,是依托于产品和公司的。 由这一点来看,商标和域名是有其相似性的,广义上来说,它们都是一种指代的符号而已。 但是,域名由于其技术特性,它是虚拟的和全球唯一的,同样的域名不可能同时被两个人注册,它遵循着先注先得的原则,而商标,则允许在不同领域,由不同的人持有相同的商标,比如中国的“中华...阅读全文

博文 2019-01-18 14:59:59 debian.cn

Gitlab CI 配置文件 .gitlab

job名称和当前分支名称或者是tag作为存档名称,只存档没有被Git跟踪的文件: job: artifacts: name: "${CI_JOB_NAME}_${CI_COMMIT_REF_NAME}" untracked: true 使用当前stage和分支名称作为存档名称: job: artifacts: name: "${CI_JOB_STAGE}_${CI_COMMIT_REF_NAME}" untracked: true 如果是使用Windows批处理来运yaml脚本,需要用%替换$: job: artifacts: name: "%CI_JOB_STAGE%_%CI_COMMIT_REF_NAME%" untracked: true artifacts:when GitLab...阅读全文

博文 2018-12-12 21:09:02 ci.yaml 详解(下)

从 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 驱蚊器喵的插座

HAProxy用法详解 最详细中文文档

查可能会带来意外问题;此选项用于将其检查的时间间隔长度上增加或减小一定的随机时长; – tune.bufsize :设定buffer的大小,同样的内存条件小,较小的值可以让haproxy有能力接受更多的并发连接,较大的值可以让某些应用程序使用较大的cookie信息;默认为16384,其可以在编译时修改,不过强烈建议使用默认值; – tune.chksize :设定检查缓冲区的大小,单位为字节;更大的值有助于在较大的页面中完成基于字符或模式的文本查找,但也会占用更多的系统资源;不建议修改; – tune.maxaccept :设定haproxy进程内核调度运时一次性可以接受的连接的个数,较大的值可以带来较大的吞吐率,默认在单进程模式下为100...阅读全文

博文 2014-05-10 17:14:46 debian.cn

分布式任务调度平台 XXL

期性自动注册任务, 调度中心将会自动发现注册的任务并触发执。同时,也支持手动录入执器地址; 6、弹性扩容缩容:一旦有新执器机器上线或者下线,下次调度时将会重新分配任务; 7、路由策略:执器集群部署时提供丰富的路由策略,包括:第一个、最后一个、轮询、随机、一致性 HASH、最不经常使用、最近最久未使用、故障转移、忙碌转移等; 8、故障转移:任务路由策略选择” 故障转移” 情况下,如果执器集群中某一台机器故障,将会自动 Failover 切换到一台正常的执器发送调度请求。 9、阻塞处理策略:调度过于密集执器来不及处理时的处理策略,策略包括:单机(默认)、丢弃后续调度、覆盖之前调度; 10、任务超时控制:支持自定义任务超时时间,任务运超时将会主动中断任务; 11、任务失败重试...阅读全文

博文 2018-11-05 21:47:15 JOB 2.0.0 发布

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

里等待,直到售货员把衣服交给你后才算购物成功,这就相当于同步的过程。 不过,如果是在网上购物的话,我们只需下单并完成支付,对我们来说整个购物过程就算完成了。网上的商家接到订单会帮我们加紧安排送货,这段时间我们可以去做其他的事,比如去外面打个篮球之类的。等送货上门并签收商品就完事了,这个过程就相当于异步。 并发和并并发和并的功能很相似,两者都可以表示多个任务一起执的情况,但本质上两者其实是有区别的。 严格意义上来说,并的多任务是真实的同时执,而并发更多的情况是任务之间交替执,系统不停的在多个任务间切换执,也就是 “” 执。 最直接的例子的就是我们的计算机系统,在单核CPU时代,系统表面上能同时进多任务处理,比如听歌的同时又浏览网页,但真实环境中这些任务不可能是真实并的...阅读全文

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

字节跳动开源微服务中间件 CloudWeGo - OSCHINA

。 Netpoll Netpoll 是字节跳动内部的 Golang 高性能、I/O 非阻塞的网络库,专注于 RPC 场景。 RPC 通常有较重的处理逻辑(业务逻辑、编解码),耗时长,不能像 Redis 一样采用处理(必须异步)。而 Go 的标准库 net 设计了 BIO(Blocking I/O) 模式的 API,为了保证异步处理,RPC 框架设计上需要为每个连接都分配一个 goroutine,这在空闲连接较多时,产生大量的空闲 goroutine,增加调度开销。此外,net.Conn 没有提供检查连接活性的 API,很难设计出高效的连接池,池中的失效连接无法及时清理,复用低效。开源社区目前缺少专注于 RPC 方案的 Go 网络库。类似的项目如:evio、gnet 等,均面向 Redis、Haproxy...阅读全文

博文 2021-09-09 13:56:42 中文开源技术交流社区

Gitlab CI 配置文件 .gitlab

no 定义此作业完成部署的环境名称 coverage no 定义给定作业的代码覆盖率设置 script script是Runner执的yaml脚本。举个例子: job: script: "bundle exec rspec" 该参数也可以用数组包含多个命令: job: script: - uname -a - bundle exec rspec 有时候,script命令需要被单引号或者是双引号包裹起来。举个例子,当命令中包含冒号(:)时,script需要被包在双引号中,这样YAML解析器才可以正确解析为一个字符而不是一个键值对(key:value)。使用这些特殊字符的时候一定要注意::,{,},[,],,,&,*,#,?,|,-,<,>,=,!。 stage stage允许一组jobs进入...阅读全文

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

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

较多:字符(String),哈希(Hash),列表(List),集合(Set),有序集合(Sorted Set), Bitmap, HyperLogLog和地理空间索引(geospatial)等,需要根据业务场景选择合适的类型。 常见的如:String可以用作普通的K-V、计数类;Hash可以用作对象如商品、经纪人等,包含较多属性的信息;List可以用作消息队列、粉丝/关注列表等;Set可以用于推荐;Sorted Set可以用于排榜等! 9.命名规范 虽然说Redis支持多个数据库(默认32个,可以配置更多),但是除了默认的0号库以外,其它的都需要通过一个额外请求才能使用。所以用前缀作为命名空间可能会更明智一点。 另外,在使用前缀作为命名空间区隔不同key的时候,最好在程序中使用全局配置...阅读全文

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

HTML 5.1 — 14 项新增特性及使用案例

HTML5 属于万维网联盟 (W3C), 这个组织为整个网络界提供了标准,如此形成的协议可在全世界通。在 2016 年 11 月, W3C 对长期使的 HTML 5 标准进了更新,它是2年内的第一次小更新。许多最开始提出的 HTML 5.1 功能特性都因为设计上的缺陷和缺乏浏览器厂商的支持而去掉了。 尽管有一些元素和功能提升被带进了 HTML 5.1 里面, 但它仍然是一个小的更新。其中的一些新的元素包含了组合标签, 现在这样的元素包括有

,
, 以及, 这样就为开发者提供了更多表达创意和内容的空间。 W3C 以及开始着手发展 HTML 5.2 草案,有望于 2017 年底发布。而我们在这里所要呈现的是在版本...阅读全文

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

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

本文从 Redis 的基本特性入手,通过讲述Redis的数据结构和主要命令,对 Redis 的基本功能进直观介绍。之后概览Redis提供的高级能力,并在部署、维护、性能调优等多个方面进进一步的介绍。本文适合使用Redis的普通开发人员,以及对Redis进选型、架构设计和性能调优的架构设计人员。 目录 概述 Redis的数据结构和相关常用命令 数据持久化 内存管理与数据淘汰机制 Pipelining 事务与Scripting Redis性能调优 主从复制与集群分片 Redis Java客户端的选择 概述 Redis是一个开源的,基于内存的结构化数据存储媒介,可以作为数据库、缓存服务或消息服务使用。 Redis支持多种数据结构,包括字符、哈希表、链表、集合、有序集合、位图...阅读全文

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

kubectl 创建 Pod 背后到底发生了什么?—探寻 Kubectl 创建 Pod 的原理

开始同步 Pod 列表。我们来详细分析一下同步过程: 如果 Pod 正在创建, Kubelet 就会记录一些在 Prometheus 中用于追踪 Pod 启动延时的指标。 然后生成一个 PodStatus 对象,它表示 Pod 当前阶段的状态。Pod 的状态(Phase) 是 Pod 在其生命周期中的最精简的概要,包括 Pending,Running,Succeeded,Failed 和 Unkown 这几个值。状态的产生过程非常过程,所以很有必要深入了解一下背后的原理: 首先一系列 Pod 同步处理器(PodSyncHandlers),每个处理器检查检查 Pod 是否应该运在该节点上。当所有的处理器都认为该 Pod 不应该运在该节点上,则 Pod 的 Phase 值就会变成...阅读全文

博文 2022-04-18 16:18:04 CSDN

Hadoop 核心 - HDFS 分布式文件系统详解

NameNode,然后再从下一个拥有该 block 副本的DataNode 继续读。 read 方法是并的读取 block 信息,不是一块一块的读取;NameNode 只是返回Client请求包含块的DataNode地址,并不是返回请求块的数据; 最终读取来所有的 block 会合并成一个完整的最终文件。 从 HDFS 文件读写过程中,可以看出,HDFS 文件写入时是写入的,数据包先发送给节点A,然后节点A发送给B,B在给C;而HDFS文件读取是并的, 客户端 Client 直接并读取block所在的节点。 9. NameNode 工作机制以及元数据管理(重要) NameNode 工作机制 9.1 namenode 与 datanode 启动 namenode工作机制 第一次启动namenode...阅读全文

HTTP状态码详解

HTTP状态码(HTTP Status Code)是用以表示网页服务器HTTP响应状态的3位数字代码。它由 RFC 2616 规范定义的,并得到RFC 2518、RFC 2817、RFC 2295、RFC 2774、RFC 4918等规范扩展。所有状态码的第一个数字代表了响应的五种状态之一。 各状态码具体含义 1xx 消息 这一类型的状态码,代表请求已被接受,需要继续处理。这类响应是临时响应,只包含状态和某些可选的响应头信息,并以空结束。由于 HTTP/1.0 协议中没有定义任何 1xx 状态码,所以除非在某些试验条件下,服务器禁止向此类客户端发送 1xx 响应。 100 客户端应当继续发送请求。这个临时响应是用来通知客户端它的部分请求已经被服务器接收,且仍未被拒绝。客户端应当继续发送...阅读全文

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