InfraPub 为您找到相关结果 107

SQLite 3.30.0 发布,使用最广泛的数据库引擎

SQLite 3.30.0 发布了,SQLite 是一个 C 实现的 SQL 数据库引擎,它的特点是小型、快速、自包含、高可靠性和功能齐全。SQLite 嵌入在所有手机和大多数计算机中,也捆绑在为数众多的其它应用中,是世界上使用量最大的数据库引擎。 此版本更新内容包括: 添加对聚合函数的 FILTER 子句的支持添加对 ORDER BY 子句中的 NULLS FIRST 和 NULLS LAST 语法的支持增强了 index_info和index_xinfo 编译指示,以提供有关 WITHOUT ROWID 表在磁盘上的表示形式的信息新增 sqlite3_drop_modules() 接口,使应用程序可以禁用不需要的自动加载的虚拟表改进 CLI 中的 .recover dot...阅读全文

博文 2019-10-06 12:03:42 debian.cn

Debian下编译安装Golang

”(Bootstrap),也就是用Go来实现Go、用Go来编译Go。之前都是用C来实现,编译Go项目就是编译C语言。 因此,只要把源码checkout到1.4版本,就可以不需要依赖于Go自身,解决自我依赖悖论。 git checkout go1.4 ./all.bash 二次编译错误:import cycle not allowed import cycle not allowed package ./cmd/dist imports bytes imports errors imports runtime imports runtime/internal/atomic imports runtime Go不支持循环导入,不知算进步还是退步。 不过,这里倒是体现了价值,提前报错。这个错误的主要原因,是编译时把...阅读全文

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

协议介绍之深入了解 gRPC

选择。 如果大家对解析 HTTP/1.x 很感兴趣,可以研究下 http-parser,一个非常高效小巧的 C library,见过不少框架都是集成了这个库来处理 HTTP/1.x 的。 Request/Response HTTP/1.x 另一个问题就在于它的交互模式,一个连接每次只能一问一答,也就是client 发送了 request 之后,必须等到 response,才能继续发送下一次请求。 这套机制是非常简单,但会造成网络连接利用率不高。如果需要同时进行大量的交互,client 需要跟 server 建立多条连接,但连接的建立也是有开销的,所以为了性能,通常这些连接都是长连接一直保活的,虽然对于 server 来说同时处理百万连接也没啥太大的挑战,但终归效率不高。 Push 用...阅读全文

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

Debian GNU/Linux Stretch 9.6 发布

DSA-4261 vim-syntastic DSA-4262 symfony DSA-4263 cgit DSA-4264 python-django DSA-4265 xml-security-c DSA-4266 linux DSA-4267 kamailio DSA-4268 openjdk-8 DSA-4269 postgresql-9.6 DSA-4270 gdm3 DSA-4271 samba DSA-4272 linux DSA-4273 intel-microcode DSA-4274 xen DSA-4275 keystone DSA-4276 php-horde-image DSA-4277 mutt DSA-4278 jetty9 DSA-4279 linux DSA...阅读全文

博文 2018-11-12 15:19:22 debian.cn

Intel:当下绝大多数用户不会受益PCIe 4.0技术

在AMD发布的7nm锐龙3000处理器及Navi架构RX 5700显卡中,PCIe 4.0都是重要的技术升级,而且是消费级首发支持,这对AMD来说很重要,因为以往引领新平台技术升级的主要是Intel,这次不一样了,AMD要夺回“技术发展的C位。 对于PCIe 4.0技术的好处,AMD日前开始强调该技术的三大优势: 速度更快,x16 双向带宽达到了 32GB/s,是 PCIe 3.0 的两倍。向下兼容,PCIe 4.0 能兼容 PCIe 3.0 设备。更多连接,PCIe 4.0 带宽高,1条顶2条,可以连接更多设备而不需要担心性能下降。 面对AMD在PCIe 4.0上的宣传,Intel这边也坐不住了,日前在一场活动中开始怼PCIe 4.0,Intel表示绝大多数用户从PCIe 4.0技术都不...阅读全文

Kiwi TCMS 6.11发布 开源测试用例管理系统

隆时,始终保留测试用例的原始默认测试器、重构为基于类的视图、修复了版本值在 b/c 验证中失败的问题、修复了在 UI 中显示错误版本值的问题。将 Clone TestCase 页面转换为 Patternflix,极大地简化了 UI 和更新行为:允许克隆成多个测试计划、删除“Filter another plan”选项,将改为“Add TP to TC”、克隆的 TC 将显示在 TestPlan 的底部、始终保持原来的默认测试器 API RPC 方法 Bug.Report() 的第一个参数已从 test_case_run_id 重命名为 Execution_id。这可能会破坏现有的 API 脚本,这些脚本试图通过名称而不是位置传递此参数 Settings 允许 ENV 变量...阅读全文

博文 2019-08-03 17:18:49 debian.cn

Raspberry Pi 4 发布 8G 内存版本

USB 2.0 插槽的位置卸下了开关模式电源,并在 USB-C 接口旁添加了一个新开关,这样可以提供更高的峰值电流以匹配 8GB 内存版本的需求。 操作系统镜像方面,现在 Raspberry Pi 支持 64 位,其包含与常规 32 位镜像相同的应用程序集和相同的桌面环境,不过只是针对 Debian arm64 构建的。同时现在开始,32 位和 64 位操作系统镜像都不再使用 “Raspbian” 这一名称,改用新的统一的名称:Raspberry Pi OS,这样更便于用户识记。 64 位镜像下载地址:https://www.raspberrypi.org/forums/viewtopic.php?f=117&t=275370 在这一年时间里,Raspberry Pi 4 已经卖出了近 300...阅读全文

博文 2020-05-30 12:19:06 debian.cn

24个含中文输入法平台的自生系统光碟

): DLBw32_obdog_yong_zhcn_20220201.iso C. 8 个含中文输入法的繁体中文自生系统光碟: (下载地址: https://sourceforge.net/projects/icakechineselanguagepets/files/DebLive_bookworm/Live_CD_Traditional_Chinese/) 64 位元: 小企鹅 (fcitx) 输入法平台(含23个中文输入法): DLBw64_obdog_fcitx_zhhk_20220201.iso 智能汇流排(ibus) 输入法平台(含23个中文输入法): DLBw64_obdog_ibus_zhhk_20220201.iso 智能通用(scim) 输入法平台(含22个中文输入法): DLBw64_obdog_scim_zhhk_20220201...阅读全文

博文 2022-03-06 01:40:50 icake

思科前员工离职后删库 直接损失达240万美元

会议、视频消息、文件共享和其他协作工具等。 Ramesh 认罪时表示自己 “部署代码时行为鲁莽,并有意无视了可能对思科造成伤害的巨大风险。” 由于 Ramesh 的行为,超过 16,000 个 WebEx Teams 帐户被关闭长达两周,导致思科花费约 1,400,000 美元的员工时间来恢复应用程序,并向受影响的客户退款超过 1,000,000 美元。 目前,此次事件没有造成客户数据泄露。Ramesh 被控违反《美国法典》第 18 篇第 1030(a)(5)(B) 和 (c)(4)(A)(i)(I) 条,“故意未经授权访问受保护的计算机并轻率地造成损害”。这项罪名的最高法定刑罚是 5 年监禁和 25 万美元的罚款。 被告 Ramesh 本人正在保释中,保释金为 50,000 美元。量刑听证...阅读全文

博文 2020-08-29 10:27:23 debian.cn

Docker 快速入门之 Dockerfile

["executable", "param1", "param2"] 样例: ENTRYPOINT ["top","-b"] CMD ["-c"] 上面的 -c 参数可以在启动时覆盖 docker run -it --rm --name test top -H。 如果要覆盖 ENTRYPOINT 指令则用 --entrypoint 参数启动容器。 3.10 VOLUME VOLUME 指令用于为容器创建一个挂载点,这个挂载点可以用来挂载 本地文件/文件夹 也可以用来挂载 数据卷。其中若在启动一个新容器时没有指定挂载目录,则会自动创建一个数据卷,当容器被销毁时,数据卷如果没有被其它容器引用则会被删除。语法: VOLUME ["/data1","/data2"] 3.11 USER USER 指令用于设置执行 RUN...阅读全文

博文 2017-12-16 13:50:31 debian.cn

理解 Linux 的虚拟内存

前不久组内又有一次我比较期待的分享:“Linux 的虚拟内存”。是某天晚上加班时,我们讨论虚拟内存的概念时,leader 发现几位同事对虚拟内存认识不清后,特意给这位同学挑选的主题。 我之前了解一些操作系统的概念,主要是毕业后对自己大学四年的荒废比较懊恼,觉得自己有些对不起计算机专业出身,于是在工作之余抽出时间看了哈工大在网易云课堂的操作系统公开课,自己也读了一本讲操作系统比较浅的书 《Linux内核设计与实现》,而且去年自己用 C 写简单的服务器时,也追根究底了解了更多的系统底层知识。多亏了这些知识,让我对应用层的知识更有掌控感,也在上次排查问题时(从应用到内核查接口超时)助了我一臂之力。 前几天另一位同事来问另一个虚拟内存相关的问题,我才发现对于虚拟内存,我的理解还不够深刻,一些概念还...阅读全文

博文 2018-11-25 11:03:49 debian.cn

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

Dell,联想一样的“组装机”。语言特性的设计者,才是像 Intel,AMD,ARM,Qualcomm 那样核心技术的创造者。 合理的入门语言 所以初学者要想事半功倍,就应该从一种“合理”的,没有明显严重问题的语言出发,掌握最关键的语言特性,然后由此把这些概念应用到其它语言。哪些是合理的入门语言呢?我个人觉得这些语言都可以用来入门: Scheme C Java Python JavaScript 那么相比之下,我不推荐用哪些语言入门呢? Shell PowerShell AWK Perl PHP Basic Go 总的说来,你不应该使用所谓“脚本语言”作为入门语言,特别是那些源于早期 Unix 系统的脚本语言工具。PowerShell 虽然比 Unix 的 Shell 有所进步,然而它仍然没有摆脱...阅读全文

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

树莓派64位系统Debian 9先行测评:性能最高提升30倍

: sysbench —test=cpu —num-threads=8 —max-requests=100000 run #测试内存性能 #内存随机测试: sysbench —test=memory --memory-block-size=1K –memory-total-size=1G --memory-access-mode=rnd run #内存连续测试: sysbench —test=memory --memory-block-size=1K –memory-total-size=1G --memory-access-mode=seq run #测试网络性能: iperf3 -c 192.168.1.2 #八线程测试共享线程锁: sysbench --test=threads --num...阅读全文

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

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的变化

不与版本帝争,16 年后 SciPy 1.0 版终发布

个月发布周期模式; 2011 年:SciPy 迁移到 GitHub; 2011 年:支持 Python 3; 2012 年:新增稀疏图(sparse graph)模块,以及统一优化接口; 2012 年:移除 scipy.maxentropy; 2013 年:支持用 TravisCI 做持续集成; 2015 年:新增用于 BLAS/LAPACK 的 Cython 接口,以及一个基准套装; 2017 年:新增一个统一的 C API:scipy.LowLevelCallable; 移除 scipy.weave; 2017 年(10月):SciPy 1.0 发布; 1.0 版部分新亮点 首次可用于 PyPI,持续集成已在 Windows 和 OS X 平台可用了,Linux 暂不行; 一套新的...阅读全文

博文 2017-10-26 13:54:33 debian.cn

Debian 环境中安装git服务器 Gogs(下)

$GOPATH/src/github.com/gogits/gogs go build 确保你没有遇到错误。 现在使用下面的命令运行 Gogs Go Git 服务器。 ./gogs web 此命令将会默认运行 Gogs 在 3000 端口上。 打开网页浏览器,键入您的 IP 地址和端口号,我的是 http://192.168.150.100:3000/ 。 你将会得到与如下的 web 界面, Gogs 已经在您的 Debian 系统上安装完毕。现在返回到您的终端,并且键入 Ctrl + C 中止服务。 步骤 5 - 配置 Gogs Go Git 服务器 本步骤中,我们将为 Gogs 创建惯例配置。 进入 Gogs 安装目录并新建 custom/conf 目录,复制默认的配置文件到 custom 目录,并...阅读全文

博文 2018-03-10 09:52:28 debian.cn

树莓派4发布:性能飙升 配件丰富 价格不变

(USB-C、3A)、GPIO 接头支持 5V DC @ 3A、或以太网供电(需单独的 PoE HAT)。工作温度:0 - 50 ℃摄氏度。 据悉,树莓派 4 主板及桌面套件已于今日开售,感兴趣的朋友可访问与之合作的 element14、OKdo 等授权零售商,或前往英国剑桥 Grand Arcade 购物中心的实体店。 1GB 版本的售价为 35 美元 / 33 英镑,2GB 版本为 45 美元 / 43 英镑,4GB 版本为 55 美元 / 53 英镑 —— 约合 288 / 376 / 464 RMB 。...阅读全文

博文 2019-06-25 08:43:29 debian.cn

树莓派4上如何安装 Raspbian Buster

Win32DiskImager 中打开、浏览该文件。单击 “Write”,就可以开始往SD卡中录入系统镜像了。这一步会花费些时间,一般两分钟左右。写入完成后,我们会看到如下所示的 “写入成功” 的提示。 现在您就可以在系统中,安全地弹出 microSD卡 并继续下一步了。 启动树莓派4 将闪存SD卡插入 树莓派4 底部的SD卡插槽中,接入 USB-C 的电源线,然后连接显示器和键盘。我们就可以看到炫丽的树莓派启动画面了。在Pi的第一次启动时,屏幕右上方会显示几个 Raspberry Pi 徽标。 Raspbian的启动速度明显快于 NOOBS,因为 NOOBS 功能更多,更强大,为我们提供更多的选择和安装替代操作系统的窗口。 树莓派启动后,我们就会看到漂亮的壁纸和初始的 Raspberry Pi 设置向导。只需按照屏幕...阅读全文

博文 2020-02-04 19:33:29 debian.cn

以太网技术联盟宣布800千兆以太网规格

的大目标是制定800Gbase-R规范(base-R表示当前媒体上的当前标准系列,base-T和base-C表示前几代)。 与以前的以太网迭代一样,许多技术将被重用和开发。800Bbase-R规范(或800gbe)需要对媒体访问控制(MAC)和物理编码子层(pc)进行新的定义。这些将从 IEEE 802.3bs 标准中 400GbE 的现有规范中重新定义,重新定义为在8条 106gbps 信道上工作。为了兼容性,规范中的其他部分(如前向错误控制)保持不变。 RobStone等技术工作组主席说:“这项工作的目的是尽可能重新利用标准的400GbE逻辑,以创建一个800GbE的MAC和PC规范,从而为实施多速率以太网端口的用户提供最低的开销成本。”...阅读全文

博文 2020-04-12 15:10:55 debian.cn

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

他们长度大一往二维数组中填写数字时,每个位置的数字跟他上方或者左方或者左上方数字有关系,这样处理边界数字时不用处理这种情况,方便接下来的循环 */ int dp[][] = new int[m+1][n+1]; /* * 初始化第一行第一列 * dp[0,j]表示啥?表示字符串1的长度是0,字符串2的长度是j,这两个字符串的最长公共子序列的长度是0,因为,字符串1 根本就没有嘛 */ for(int i=0;i<=m;i++){ dp[i][0] = 0; } for(int i=0;i<=n;i++){ dp[0][i] = 0; } for(int i=1;i<=m;i++){ for(int j=1;j<=n;j++){ /* * 如果当c[i][j]时,字符串1从头开始长度是i,字符...阅读全文

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

深入了解Docker背后的namespace技术

容器中创建namespace,不要让他影响到你,我选择提供一个容器预加载所有依赖项的方法。我使用 --net host标志,这样可以在容器内看到host的网络接口。也需要提供--privilged标签,以保证拥有正确的权限去通过容器创建新的namespace。 以下是Dockerfile内的内容: FROM debian:jessie RUN apt-get update && apt-get install -y \ gcc \ vim \ emacs COPY containers/ /containers/ WORKDIR /containers CMD ["bash"] 我会使用C语言来解释这个例子,因为它比Go语言更容易去解释底层的细节。 NET Namespace network...阅读全文

博文 2015-05-17 10:03:00 debian.cn

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

的资源一直不释放的话,那么其他阻塞的线程就都不能工作了。 非阻塞则相反,强调的是线程之间并不互相妨碍,所有的线程都会不断尝试向前执行。 死锁、饥饿和活锁这三种情况表示的是多线程间的活跃状态,对于线程来说,以上的情况都是 “非友好” 的状态。 1、死锁一般是指两个或者两个以上的线程互相持有对方所需的资源,并且永远在等待对方释放的一种阻塞状态。例如有两个线程A和B同时共享临界区的资源C,当A占用C时,B处于阻塞状态,然而A的释放需要用到B的资源,这样一来,就变成了A一直在等待B,B也一直在等待A,互相之间永远在等待对方释放的状态。 一般来说,死锁的发生是由于程序的设计不合理导致,而且死锁很难解决,最好的方式就是预防。 2、饥饿是指某一个或者多个线程因为种种原因无法获得所需的资源,导致一直无法执行...阅读全文

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

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

-4812](https://www.debian.org/security/2020/dsa-4812) | [xen](https://packages.debian.org/src:xen) | | [DSA-4813](https://www.debian.org/security/2020/dsa-4813) | [firefox-esr](https://packages.debian.org/src:firefox-esr) | | [DSA-4814](https://www.debian.org/security/2020/dsa-4814) | [xerces-c](https://packages.debian.org/src:xerces-c) | | [DSA-4815...阅读全文

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

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对象。和其它的引用类型一样...阅读全文

WebAssembly:无需容器的 Docker (上)

?WasmEdge 是一个高性能的 WebAssembly 运行时:是开源的,属于 CNCF。支持所有主要的 CPU 架构(x86、ARM、RISC-V)。支持所有主要操作系统(Linux、Windows、macOS)以及其他操作系统,例如 seL4 RTOS、Android。针对云原生和边缘应用程序进行了优化。可扩展并支持标准和新兴技术使用 Tensorflow、OpenVINO、PyTorch 进行人工智能推理Tokio 的异步网络。 支持微服务、数据库客户端、消息队列等。与容器生态、Docker 和 Kubernetes 无缝集成(如本文所示!)解释型语言呢?到目前为止,我们只提到了 C 和 Rust 等编译语言可以编译为 WebAssembly。 对于 Python、Ruby 和 PHP 等解释型语...阅读全文

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

RabbitMQ 高可用实现镜像队列

rabbitmqctl在离线节点上执行forget_cluster_node命令,迫使RabbitMQ在未启动的slave节点中选择一个作为master。当在A节点执行rabbitmqctl forget_cluster_node -offline B时,RabbitMQ会mock一个节点代表A,执行forget_cluster_node命令将B提出cluster,然后A就能正常启动了。最后将新的slave节点加入A即可重新恢复镜像队列 场景5:A先停,B后停,且A和B均无法恢复,但是能得到A或B的磁盘文件 这个场景更加难以处理。将A或B的数据库文件($RabbitMQ_HOME/var/lib目录中)copy至新节点C的目录下,再将C的hostname改成A或者B的hostname。如果copy过来的是A节点...阅读全文

博文 2018-12-30 19:21:59 debian.cn

WebAssembly:无需容器的 Docker (下)

解在 Docker + Wasm 背景下的 Wasm container 有什么好处以及如何运行一个服务 WordPress 的 php.wasm 镜像。动手示例让我们开始吧! 在动手示例中,我们将使用编译为 Wasm 的 PHP 解释器。 我们会:构建一个 Wasm 容器。比较 Wasm 和原生二进制文件。比较传统容器和 Wasm 容器。展示 Wasm 的可移植性前期准备如果想在本地重现这些示例,你需要使用以下部分或全部内容来准备你的环境:WASI SDK - 从构建 C 代码构建 WebAssembly 应用程序PHP - 为了比较而运行本机 PHP 二进制文件WasmEdge Runtime - 运行 WebAssembly 应用程序Docker Desktop + Wasm (本文写...阅读全文

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

Debian 使用VSFtpd安装配置架设FTP服务器

. Vsftpd添加FTP账号 A. 登录Linux主机后,运行命令:”useradd ftp-clin003 -s /sbin/nologin “。该账户路径默认指向/home/ftp-clin003目录;如果需要将用户指向其他目录,请运行命令:useradd ftp-clin003 -s /sbin/nologin –d /www(其他目录) B. 设置ftp-clin003用户密码,运行命令:”passwd ftp-clin003” ; 输入两次密码,匹配成功后,就设置好了ftp-clin003用户的密码了。 C.测试连接,您可以在“我的电脑”地址栏中输入 ftp://IP 来连接FTP服务器,根据提示输入账户密码。 umask=022 umask=022中”022″是八进制的写法,如果换成二进制是...阅读全文

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

Debian Jessie、Stretch 下安装配置 PHP7.2

module for PHP php-solr - PHP extension for communicating with Apache Solr server php-stomp - Streaming Text Oriented Messaging Protocol (STOMP) client module for PHP php-gearman - PHP wrapper to libgearman php-phalcon - full-stack PHP framework delivered as a C-extension php-ds - PHP extension providing efficient data structures for PHP 7 php-sass...阅读全文

博文 2017-12-16 14:16:25 debian.cn

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

如果你是在一个大型组织,你运行了 NFS 或者 Samba 服务给不同的用户,你将会需要灵活的挑选并设置很多复杂的配置和权限去满足你的组织不同的需求。Linux(以及其他Unix等POSIX兼容的操作系统)有一个被称为访问控制列表(ACL)的权限控制方法,它是一种权限分配之外的普遍范式。例如,默认情况下你需要维护3个权限组:owner、group和other。 使用ACL后,你可以设置权限给其他用户或组,而不单只是简单的"other"。可以允许指定的用户A、B、C拥有写权限而不再是让他们整个组拥有写权限。 ACL支持多种Linux文件系统,包括ext2, ext3, ext4, XFS, Btrfs等。如果你不确定你的文件系统是否支持ACL,请参考文档。 首先我们需要安装工具来管理ACL...阅读全文

Linux 27周年:这27件有趣的事实你可能不知道

开发和发布时间表后,新版本的 Linux kernel 现在基本每隔 66 天左右发布一次。 18、Linux 不是 Linus Trovalds 唯一知名的作品,还有 Git 版本控制系统和潜水应用 SubSurface 。 19、据估计,90% 的好莱坞视觉效果在生产流程的某个阶段依赖于 Linux 。 20、根据 openhub.net 的统计数据,超过 95% 的 Linux 是用 C 语言编写的。 21、最新版本的 Linux kernel 可能有 13.3%的代码由空行组成。这并非毫无意义,空行是严谨的编码风格的一部分,使内核保持整洁、高效和有序。 22、基于 Linux 的 Android 是目前全球最成功的移动操作系统。 23、Linux 的每个内核版本都有一个有趣的代号,比...阅读全文

Proxy-Go v6.6 发布啦

,HTTP(S)\SOCKS5\SPS 代理支持客户端用入口 IP 连接过来的, 就用入口 IP 作为出口 IP 访问目标网站的功能。如果入口 IP 是内网 IP,出口 IP 不会使用入口 IP 支持限速,HTTP(S)\SOCKS5\SPS 代理支持限速. SOCKS5 代理支持级联认证. 证书参数使用 base64 数据, 默认情况下-C,-K 参数是 crt 证书和 key 文件的路径, 如果是 base64://开头, 那么就认为后面的数据是 base64 编码的, 会解码后使用. 下载地址: Gitee GitHUB...阅读全文

博文 2018-12-01 09:52:14 Go v6.6 发布 新增智能模式

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

(NameSpace) HDFS 支持传统的层次型文件组织结构。用户或者应用程序可以创建目录,然后将文件保存在这些目录里。文件系统名字空间的层次结构和大多数现有的文件系统类似:用户可以创建、删除、移动或重命名文件。 Namenode 负责维护文件系统的名字空间,任何对文件系统名字空间或属性的修改都将被 Namenode 记录下来。 HDFS 会给客户端提供一个统一的抽象目录树,客户端通过路径来访问文件,形如:hdfs://namenode:port/dir-a/dir-b/dir-c/file.data。 4. NameNode 元数据管理 我们把目录结构及文件分块位置信息叫做元数据。NameNode 负责维护整个 HDFS 文件系统的目录树结构,以及每一个文件所对应的 block 块信息(block 的...阅读全文

7大维度看国外企业为啥选择gRPC打造高性能微服务

这些服务进行交互,这是另一个优势,它可以自动生成需要的所有类。这个生成的代码负责消息建模,并提供一个存根类,其中包含与您的服务端点相关的重复方法调用。 支持多种语言,包括C ++,Java,Python,Go,Ruby,C#,Node,Android,Objective-C和PHP。但是,使用protobuf文件维护和同步生成的代码是个问题。我们已经能够通过使用Protobuf文件自动生成客户端库来解决这个问题,会在即将发布的下一篇博客文章中分享更多的内容。 gRPC最好的特性之一是支持中间件模式,被称为拦截器。它允许扩展所有的gRPC实现(这对企业来说很重要),能够轻松访问所有请求,从而实现自己的微服务最佳实践。gRPC还内置了对一系列认证机制的支持,包括SSL / TLS。 gRPC社区...阅读全文

博文 2018-03-19 17:51:32 debian.cn

DevOps 越来越流行,2019 年这八大趋势值得关注

。 在 2019 年,将会发生从 CI 管道到 DevOps 装配线的转变。DevOps 装配线专注于自动化和连接多个团队执行的活动,例如开发人员的 CI,运维人员的基础架构配置和配置管理,测试人员的测试自动化,SecOps 的安全补丁,发布负责人的语义版本控制和部署到多种环境,等等。 下图展示了单个应用程序或服务的典型装配线: 自动化将成为主要焦点 关于 DevOps,我们谈论了很多自动化方面的内容。如果可能的话,零接触(zero-touch)自动化就是未来的发展方向。这并不是说你一定要自动化一切,只是说如果有必要,你就应该能够做到。了解 DevOps 周期的六个“C”,并确保在这些阶段之间应用自动化,这才是关键,这将是 2019 年的主要目标。 测试人员要学习编码 DevOps 对知道如何编...阅读全文

博文 2018-12-10 22:49:57 debian.cn

如何校验 Debian 软件包的 MD5

/acpid OK /etc/init/acpid.conf OK /etc/default/acpid OK ... 下一步,如果想在debsums的输出中只显示变化的文件,请使用-c或--changed选项。我在自己的系统中没有找到任何变化的文件。 $ sudo debsums --changed 下一个命令输出没有md5sum信息的文件,这里我们使用-l和--list-missing选项。在我的系统上,该命令没有显示任何文件。 $ sudo debsums --list-missing 现在只要指定名称,就可以校验单一软件包的md5和: $ sudo debsums apache2 校验已安装软件包的MD5和: /lib/systemd/system/apache2.service.d...阅读全文

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

Monit:开源服务器监控工具

.tar.gz 注意:Monit是一个开源工具,但M/Monit是收费的。 安装 yum install monit 当然也可以下载源码安装。 当前使用版本: # monit -V This is Monit version 5.17.1 Built with ssl, with pam and with large files Copyright (C) 2001-2016 Tildeslash Ltd. All Rights Reserved. 常用命令 monit -t # 配置文件检测 monit # 启动monit daemon monit -c /var/monit/monitrc # 启动monit daemon时指定配置文件 monit reload # 当更新了配置文件需要重载...阅读全文

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

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

图工具就能生成 SVG 图片。 上面图片中,最顶层的函数g()占用 CPU 时间最多。d()的宽度最大,但是它直接耗用 CPU 的部分很少。b()和c()没有直接消耗 CPU。因此,如果要调查性能问题,首先应该调查g(),其次是i()。 另外,从图中可知a()有两个分支b()和h(),这表明a()里面可能有一个条件语句,而b()分支消耗的 CPU 大大高于h()。 五、局限 两种情况下,无法画出火焰图,需要修正系统行为。 (1)调用栈不完整 当调用栈过深时,某些系统只返回前面的一部分(比如前10层)。 (2)函数名缺失 有些函数没有名字,编译器只用内存地址来表示(比如匿名函数)。 六、Node 应用的火焰图 Node 应用的火焰图就是对 Node 进程进行性能抽样,与其他应用的操作是一样的...阅读全文

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

Kafka 3.0新特性全面曝光,真香!

.tgz -C /opt/install/修改kafka的配置文件broker.properties:[hadoop@bigdata01 kafka_2.12-3.1.0]$ cd /opt/install/kafka_2.12-3.1.0/config/kraft/[hadoop@bigdata01 kraft]$ vim broker.properties修改编辑内容如下:node.id=1controller.quorum.voters=1@bigdata01:9093listeners=PLAINTEXT://bigdata01:9092advertised.listeners=PLAINTEXT://bigdata01:9092log.dirs=/opt/install...阅读全文

博文 2022-04-28 16:02:11 mp.weixin.qq.com

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

Amazon SSE-C规范的密钥,以及通过使用外部密钥管理服务 OpenstackBarbician)类似于Amazon SSE-KMS规范。 RGW具有初步的类似AWS的存储桶策略API支持。现在,策略是一种表达一系列新授权概念的方式。未来,这将成为附加身份验证功能的基础,例如STS和组策略等。 RGW通过使用rados命名空间合并了几个元数据索引池。 新增S3对象标记API; 只支持GET / PUT / DELETE和PUT。 RGW多站点支持在桶级启用或禁用同步。 RBD RBD目前通过新的–data-pool选项来创建rbd,对EC池具有完整稳定的支持。 RBD镜像的rbd-mirror后台进程是可用的。我们建议您多部署几个rbd镜像来实现可靠性。 RBD镜像的rbd-mirror守护进程...阅读全文

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

Java Annotations详解

="Jakob", age=37, newNames={"Jenkov", "Peterson"} ) public class MyClass { } 元素的默认值 你可以为一个元素指定默认值(有点像C++中的方法哈)。这样在注释初始化时那个元素就可以忽略了。如下定义了一个包含默认值的注释 @interface MyAnnotation { String value() default ""; String name(); int age(); String[] newNames(); } 在调用时,可以忽略包含默认值的元素,这里指的是value元素,如: @MyAnnotation( name="Jakob", age=37, newNames={"Jenkov", "Peterson...阅读全文

博文 2013-03-02 08:04:55 CSDN博客

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

在TKE上使用Kubecost进行成本管理

,即为计算 Pod 资源请求(Request)或者使用量(Usage)消耗的成本。根据不同类型的资源,按照 Pod 所在 Node 的 IaaS 计价方式作为基本参考,来计算 Pod 所使用的成本费用。 目前云厂商的 Node 计费模式一般是**包年包月(Month)**、**按量计费(Hour)**和**竞价实例**。当 Kubecost 计算 Pod 成本时,即使是相同请求量的 Container,在不同类型的 Node 上成本消耗也不一致。 上述三种计费模式中,由于用户购买的是一个整体实例,因此按照实例计费,不针对单独一个资源计费。而通过使用 Kubecost,可以参照模型分析资源类型分摊成本、每种资源分摊成本。 例如,一个云厂商提供的某种 Node(虚拟机、物理机),CPU 为1核(C...阅读全文

CCPA vs. GDPR:欧美这两部个人数据保护法有什么差异?

的并满足以下一个或多个条件[9]: (a) 年度总收入超过2,500万美元; (b) 每年独自或与他人联合,为商业目的购买、出售、分享不少于50,000个消费者、家庭或设备的个人信息; (c) 有不少于50%的年收入来自于出售消费者个人信息;或 (d) 是处理个人信息的服务供应商。 其中,“加州消费者”的定义参照加州税法的规定。该法规定“居民”包括“以非临时目的居住在加州境内的自然人”以及“以临时目的居住在加州境外的加州居民”。[10] 与GDPR不同的是,CCPA明文指出了不受CCPA管辖的情况——即如果企业的商业行为每个方面完全在加州以外进行,则不受CCPA的管辖。 这里的“商业行为每个方面”,包括“消费者所在地”、“个人信息出售行为发生地”等方面。我们应针对这些方面对个案综合判断企业是...阅读全文

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

: apiVersion: batch/v1beta1 kind: CronJob metadata: name: hello spec: schedule: "*/1 * * * *" jobTemplate: spec: template: spec: containers: - name: hello image: busybox args: - /bin/sh - -c - date; echo Hello from the Kubernetes cluster restartPolicy: OnFailure 每运行一次Job都要创建一个Pod, 每创建一个Pod,CNI插件需要申请一次VPC IP,当Pod被销毁时,CNI插件需要释放该VPC IP。 因此理论上,通过该CronJob每天需要进行...阅读全文

我要彻底放弃 Debian 操作系统!-Michael Stapelberg

施。 虽然拥有一个lint工具(能实现快速、本地/离线的反馈)非常好,但最好的情况还是完全不需要lint工具。实施变更(例如C++团队为所有包引入了一个新的强化标志)的团队应该能够让我明确看到他们的工作。 然而,实际情况却恰恰相反,目前所有的包都由于lint而变得不干净,所有的维护者都需要阅读新内容是什么、可能会造成怎样的破坏、是否有影响以及怎样的影响、手动运行一些测试、最后再决定是否采用。整个过程的工作量巨大,而且还需要手动执行机械的更改。 特别是,在Debian的变更模型中,所有更改的工作都会分派给包维护者。在工作中,我们发现相反的工作方式更好:即让负责变更的团队自行选择那些能影响更多用户的更改,这样可以显著地提高效率,从而降低总体的成本和时间。当然,有些例外情况(例如滥用语言功能的大型...阅读全文

博文 2019-03-22 17:01:23 Michael Stapelberg

Docker 核心原理

用,容器之间相互隔离,并且能按需分配资源。大大提高了运维效率和资源利用率 架构 Docker使用了 C/S 体系架构,Docker 客户端与 Docker 守护进程通信,Docker 守护进程负责构建,运行和分发 Docker 容器。Docker 客户端和守护进程可以在同一个系统上运行,也可以将Docker客户端连接到远程Docker守护进程。 我们日常在命令行的操作 docker build, docker push, docker pull, docke build 等等操作都是客户端通过 rest api 请求与 Docker 守护进程交互。 实现原理 下面我们就介绍一下 Docker 在实现隔离,资源控制,文件系统等关键部分所采用的的技术 Namespace Linux manaul...阅读全文

博文 2021-02-25 09:14:23 lxkaka

分布式运行时 Dapr 知多少

化分布式应用开发的技术复杂度。 How Dapr Works 那Dapr如何简化分布式应用的开发呢?下面我们来看一看Dapr的主要特性。 一图胜千言:Dapr通过以HTTP/gRPC API这种与语言无关的方式暴露封装的分布式能力供应用调用,从而支持使用任意语言或框架进行开发集成。目前官方已经提供了Go,Node,Python,.NET,Java, C++,PHP,Rust,Javascript的Sdk,简化Dapr的集成。 其中Dapr的核心构建块(Building Block)就是用来提供各种不同的分布式能力,我们来分别看一看。 1. Service-to-service invocation(服务调用) 提到跨服务方法调用,这个大家肯定会想,这简单啊,不就是服务暴露API就好了嘛。是...阅读全文

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

的语言,你只需要将问题讲清楚即可。 - 有时候工具不好用也会影响的文档写作。如果没有一个很好的写作工具将写文档嵌入到开发工作流程中的话,写作确实会增加工作的负担。 - 大多数人将写文档看做是工作的额外负担。 我代码都没时间写,哪有时间写文档!,这其实是错误的观念,文档虽然前期有投入,但能让你代码的后期维护成本大幅降低,磨刀不误砍柴工这个道理相信大家都还是能理解的。 ## 如何产出高质量文档 ## 既然理解了好文档的重要性,我们如何保证在时间的长河中维护好一份文档,这里有些相关的方法论,大家可以参考下。 ## 像管理代码一样管理文档 ## 对于如何写出好代码,整个技术圈已经有好多经验的总结了,比如书籍《重构》《代码简洁之道》…… 针对各种编程语言,也有相关的规范,比如国外的Google C...阅读全文

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