Nginx 发布 Stable Version 1.12.0
据 ZDNet 的报道,PHP 7.x 中最近修复的一个远程代码执行漏洞正被恶意利用,并会导致攻击者控制服务器。编号为 CVE-2019-11043 的漏洞允许攻击者通过向目标服务器发送特制的 URL... 10月29日 1,671 评论...阅读全文
据 ZDNet 的报道,PHP 7.x 中最近修复的一个远程代码执行漏洞正被恶意利用,并会导致攻击者控制服务器。编号为 CVE-2019-11043 的漏洞允许攻击者通过向目标服务器发送特制的 URL... 10月29日 1,671 评论...阅读全文
在今年 10 月份,深圳支流科技把微服务网关 APISIX 贡献给 Apache 基金会后,过了仅仅一个多月的时间,Apache APISIX 发布了一个新的版本 0.9。 Apache APISIX 的 0.9 版本,是经过 APISIX 开发者社区和 Apache 孵化器社区投票发布的官方版本,企业和个人用户都免费使用。 Apache APISIX 进入 Apache 孵化器的这一个多月的时间里,代码贡献者从 27 人增加到 45 人,几乎每个工作日都有新的贡献者加入;新合并的 PR 有 82 个,平均每个工作日有 3 个 PR 合并;使用的公司包含了贝壳找房、腾讯云、网易、NASA等知名企业和科研机构, Apache APISIX 是微服务 API 网关,不仅可以帮你处理传统的南北向...阅读全文
当 Torvalds 将某些代码标记为“dontuse”,通常表明这个问题比较大。在 5.12 首个候选版本更新中,破坏了交换文件(swapfile)的处理。具体来说,更新后的代码会失去指向 swapfile 开头的正确偏移。用 Torvalds 自己的话来说,“交换还是会发生,但它发生在文件系统的错误部分,最终结果显然是灾难性的”。这样 Linux 内核如果想要将内存中的内容分页到磁盘上的时候,数据就会落在相同磁盘和 swapfile 活跃的分区的随机部分上,而且这不是作为文件,而是作为垃圾直接写入到磁盘的原始扇区。这意味着不仅要覆盖现有文件中的数据,还要覆盖相当大块的元数据,这些元数据的损坏很可能会导致整个文件系统无法挂载和使用。Torvalds 继续指出,如果你根本不使用 swap...阅读全文
在许多互联网领域,尤其是Web PKI和SSL/TLS行业中,我们大多生活在过去的决定中。脆皮密码、差强人意的协议设计以及不怎么标准的软件始终牵绊着前进的步伐。往往一个新操作系统或库的问世都会迅速被大量使用,然后整个生态系统需要花上很多年的时间处理各种遗留的设计缺陷。 随着互联网规模和重要性的增长,我们试图做出更明智的决定,以避免或至少缩短这一周期。最近,两个操作系统进行了更新,反映了两种不同的保持生态健康的做法: Debian推动了其预发行版本的更改,将只支持TLS 1.2;而微软则开始在Windows Server 2008添加TLS 1.2支持。 这两个选择代表了相反的观点 - 一个展望未来,另一个回顾过去。 Debian发布了一个新版本的OpenSSL库,用于其不稳定的构建 - 一...阅读全文
作为RISC精简指令集的代表,MIPS处理器曾经比ARM还要火,比ARM更早支持64位,也是安卓系统支持的三大指令集之一,只不过现在MIPS指令集在移动、嵌入式领域影响比ARM小多了,这方面的原因也是多方面的。 MIPS在被辗转卖了几次之后,最终结局倒也不坏——MIPS走向开源了,上周末官方宣布开放了MIPS R6指令集及相关工具,32位、64位MIPS都可以免费下载使用。 2012年Imagination Technologies斥资1亿美元收购了MIPS公司,准备加强CPU业务,这样就能提供完整的CPU、GPU授权,不过Imagination Technologies在这方面并不算成功,在苹果放弃他们的PowerVR GPU授权之后,Imagination Technologies也把...阅读全文
命令退出MySQL shell: MariaDB [(none)]>\q 下载并安装Observium Observium有两个版本:开源版本和订阅版本,开放源代码版本可以免费下载,功能较少,安全修复程度较低,而订阅版本则附带额外的功能和硬件支持。 您可以使用以下命令从官方网站下载Observium的开源版本: wget http://www.observium.org/observium-community-latest.tar.gz 下载后,使用以下命令提取下载的存档: tar -xvzf observium-community-latest.tar.gz 接下来,将提取的目录复制到Apache Web根目录: cp -ar observium /var/www/html/ 接下来,重命...阅读全文
块,和Flannel vxlan的veth很类似。Pod1 访问 Pod2 流程如下:1、数据包从 Pod1 出到达Veth Pair另一端(宿主机上,以cali前缀开头)。2、进入IP隧道设备(tunl0),由Linux内核IPIP驱动封装,把源容器ip换成源宿主机ip,目的容器ip换成目的主机ip,这样就封装成 Node1 到 Node2 的数据包。代码语言:javascript复制此时包的类型: 原始IP包: 源IP:10.244.1.10 目的IP:10.244.2.10 TCP: 源IP: 192.168.31.62 目的iP:192.168.32.633、数据包经过路由器三层转发到 Node2。4、Node2 收到数据包后,网络协议栈会使用IPIP驱动进行解包,从中拿到原始IP包...阅读全文
Kubernetes v1.21 下个月就要发布了(v1.21.0 将于 4 月 8 日发布),本文梳理该版本带来的新特性,以便你为下个月的升级做好准备。PodSecurityPolicy 弃用PodSecurityPolicy(PSP)是 Kubernetes 1.8 开始就支持的 Beta 特性,大量应用于容器的安全策略控制。但由于其 API 不够灵活、认证模型不够完善且配置更新繁琐等缺陷,PodSecurityPolicy 将在 v1.21 正式弃用[1],并将在 v1.25 中从代码库中删除。已经使用 PodSecurityPolicy 的用户建议迁移到 Gatekeeper[2]。不可变 ConfigMap/Secret 进入稳定版当集群包含大量 ConfigMap 和...阅读全文
HTTP header。HTTP header 各个 fields 使用 \r\n 分隔,然后跟 body 之间使用 \r\n\r\n 分隔。解析完 header 之后,我们才能从 header 里面的 content-length 拿到 body 的 size,从而读取 body。 这套流程其实并不高效,因为我们需要读取多次,才能将一个完整的 HTTP 请求给解析出来,虽然在代码实现上面,有很多优化方式,譬如: 一次将一大块数据读取到 buffer 里面避免多次 IO read 读取的时候直接匹配 \r\n 的方式流式解析 但上面的方式对于高性能服务来说,终归还是会有开销。其实最主要的问题在于,HTTP/1.x 的协议是 文本协议,是给人看的,对机器不友好,如果要对机器友好,二进制协议才是更好的...阅读全文
Chaos Mesh 是社区驱动的项目,项目的迭代和演进离不开社区。开源以来,Chaos Mesh 迅速成为了混沌工程领域最耀眼的开源项目之一,并且在短短的一年,在 Github 上积累了 3k+ star,吸引了 70+ 贡献者,以及吸引腾讯、小鹏汽车、Dailymotion、网易伏羲实验室、JuiceFS、APISIX、美团等在内的数十家知名用户。...阅读全文
代码内进行了优化,但也有触及一些内存管理代码。他为实现每个核心 I/O 的最佳性能而进行的优化都可以通过 linux-block 的 perf-wip 分支找到。这些性能优化补丁目前已加入下一周期的合并队列,应该会在 Linux 5.16 中实现合并。...阅读全文
Windows Vista还贵的收费服务。) 由于Ubuntu直接抄袭Debian的特色内容,所以有的网友称Ubuntu为“番茄花园版的Debian”。这个系列的发行版以标新立异为荣,轻率修改关键代码,对用户极不负责。例如对随机数发生器的非官方修改导致openssl密钥容易重复,直到现在Ubuntu还在不断追加black list,让其用户苦受倒悬之危。 Ubuntu区别于其它大多数发行版的另一显著特征就是临近版本之间改动极大。经常有人抱怨:“我的Ubuntu升级后不能启动了。”(例如7.04版升级到7.10时,很多用户无法进入X Window.) 同时Ubuntu为了进一步增加用户的麻烦,用dash取代了bash,带来繁多的兼容问题。不幸的是,在其自身的论坛上,Ubuntu被证实在一些只兼容dash的...阅读全文
Linus Torvalds揭示了为什么在2018年夏天将会有一个Linux Kernel 5的理由。他还讨论了对新的Linux Kernel维护者的需求。 在最近结束的布拉格开源峰会上,Linux创始人Linus Torvalds与VMware副总裁进行了座谈,并讨论了Linux内核的相关问题。 Linux内核需要新的维护者 Linux内核已经有26岁,内核维护者比26岁还要老。这就产生了一个问题,因为虽然内核开发有很多年轻的贡献者,但是内核维护者(负责审核向内核提交代码的人)是40多岁的人, 甚至50多岁了。部分问题是维护内核的复杂性。 但是Torvalds认为,内核维护者的主要原因是“老”,因为他们需要从疯狂的邮件流入中了解补丁。这需要良好的经验。 第二个原因是内核维护者应该足够长的...阅读全文
这两天开源配置管理工具 saltstack 爆出了CVSS得分为10分的漏洞。如果你对CVSS的评分没有概念,那么前几年震惊互联网的 openssl心脏滴血漏洞,CVSS base评分是5.0,由此可知这次爆出来的 saltsatck 漏洞是多么严重。 漏洞信息: 该漏洞是 F-secure 研究人员在3月份发现的,目前该漏洞已经在最新版本中修复。本次极高危漏洞,是由两个不同的漏洞引起的,一个是身份验证绕过漏洞 CVE-2020-11651,一个是目录遍历漏洞没有过滤掉不受信任的输入 CVE-2020-11652,从而导致攻击者可以不受限制的访问 salt-master 的整个文件系统。 攻击者获取salt-master的权限后,便可以控制整个被salt-master管理的数据中心的各主机...阅读全文
[\\S\\s]+?\\") src = re.ReplaceAllString(src, "") //去除所有尖括号内的HTML代码,并换成换行符 re, _ = regexp.Compile("\\<[\\S\\s]+?\\>") src = re.ReplaceAllString(src, "\n") //去除连续的换行符 re, _ = regexp.Compile("\\s{2,}") src = re.ReplaceAllString(src, "\n") return strings.TrimSpace(src) } ``` 转自 https...阅读全文
树莓派中的实现,可以将树莓派变成 Chromebook。Windows 10:是的,甚至有用户经过一番折腾,成功在 Raspberry Pi 4 上安装了 Windows 10,但由于硬件架构适配性不足等原因,运行速度很慢,慎用。 Lakka:该操作系统专为一些复古游戏而设计,预装了一系列模拟器,可以将树莓派变成一台老式游戏机。6.太空中运行着两台树莓派这绝对算是一个有趣的冷知识。国际空间站运行着两台“Astro Pis”设备,事实上,这是经过特别改良的 Raspberry Pi B+ 型,这两台树莓派经过“空间改造”以适应太空环境,并配备了官方的 Raspberry Pi Sense HAT。欧洲航天局会举办定期竞赛,孩子们提交的代码可以在外太空的这两台设备上远程运行,以进行一些有趣的空间...阅读全文
微服务。 以上是Dapr官方GitHub仓库上对Dapr的简介。文字虽短,口气却很大,因为其除了涵盖了当前所有的技术热点:分布式、云、微服务,还自我标榜为:分布式应用运行时。分布式应用我们或多或少有些了解,运行时也听到不少,比如常见的语言运行时:Java 运行时,.NET 运行时,Go 运行时等等,那运行时又是什么东西?简要来说:运行时是程序运行依赖的执行环境。以.NET 程序运行时CLR为例,它为.NET应用程序提供了一个托管的代码执行环境负责应用程序在整个执行期间的内存管理、线程管理、安全管理、远程管理、即使编译等。 那分布式应用运行时,就是提供分布式应用运行所依赖的的执行环境。那运行分布式应用需要哪些环境依赖呢?回答这个问题,我们要先思考开发分布式应用的挑战是什么?明确了挑战,那就找到...阅读全文
上个月 Debian 开发团队就是否支持非 systemd 初始化系统的问题进行了投票,最后达成的共识是“选择 systemd 但同时探索替代方案”,而 Debian Policy 近期的更新也反映了这一点。 Debian Policy 4.5 是最新的版本,其中包含对“选择 systemd 但同时探索替代方案”这一投票结果响应的指南。 最新的 Debian Policy 手册指出,带有系统服务的软件包应该包括 systemd 服务单元,如果没有 systemd 单元,则鼓励使用 init 脚本,否则是可选的。此外,手册还鼓励 init 脚本支持"status"参数。如果软件包包含 init 脚本,则要求使用 update-rc.d。 Debian Policy 还有一个值得关注的更新是...阅读全文
Debian 团队宣布 Debian 9 Stretch 在发布时将不太可能会支持 Secure Boot。Debian 9 的代码在今年 2 月冻结,之后开发者的精力转向解决 bug 等问题上。 UEFI Secure Boot 是微软在 Designed for Windows 8 认证时要求 OEM 的产品必须支持,它的设计目的是防止恶意程序潜入到引导进程,用户如果想要在机器上安装替代操作系统,那么该操作系统需要获得微软的有效签名。Debian 团队称,shim 得到了微软签名,但 dak 没有。 开发者表示,虽然 Stretch 在发布时可能不会支持 Secure Boot,但在 Stretch 生命周期内引入 Secure Boot 支持仍然是可能的。...阅读全文
Raspberry Pi 基金会表示,他们正在致力于为 Raspberry Pi 提供开源 Vulkan 驱动程序的支持。 Vulkan 是“新一代图形和计算 API,可提供对现代 GPU 的高效、跨平台访问”。它是 OpenGL 的下一代版本,和 DirectX 12 一样都是基于 AMD 私有的 Mantle API,不同的是 Vulkan 是开源的图形 API,它承诺通过给予开发者访问硬件底层的能力而大幅提升 3D 应用的性能。 对 Vulkan 的支持现在在 Android 智能手机中很常见。三星就长期支持 Vulkan,以改善 Galaxy 设备上的图形和游戏性能。Vulkan 也有得到 SteamOS 上类似 Valve 等的重量级游戏支持。 不过,Vulkan 才刚刚进入...阅读全文
虽然2016年内Linux在桌面领域并没什么大动作,但作为开源运动的绝对代表,它依然给我们带来一系列大新闻。本文列出了2016年Linux领域的十条大新闻,赶紧看看是不是你关注的。 虽然2016年内Linux在桌面领域并没什么大动作,但作为开源运动的绝对代表,它依然给我们带来一系列大新闻。下面一起来看。 1. Linux迎来25岁生日 岁月如梭,25年前Linus Torvalds向comp.os.minix Usenet小组宣称,他正在“为386(486)AT克隆机开发一款自由操作系统(只是种爱好,不会像GNU那种庞大且专业)。”自1991年开始,Linux的发展速度远远超出了Torvalds的想象。各类规模的企业都在使用Linux,而Linux也支撑着各类计算机、移动设备乃至联网硬件...阅读全文
一、HAProxy简介 (1)HAProxy 是一款提供高可用性、负载均衡以及基于TCP(第四层)和HTTP(第七层)应用的代理软件,支持虚拟主机,它是免费、快速并且可靠的一种解决方案。 HAProxy特别适用于那些负载特大的web站点,这些站点通常又需要会话保持或七层处理。HAProxy运行在时下的硬件上,完全可以支持数以万计的 并发连接。并且它的运行模式使得它可以很简单安全的整合进您当前的架构中, 同时可以保护你的web服务器不被暴露到网络上。 (2)HAProxy 实现了一种事件驱动、单一进程模型,此模型支持非常大的并发连接数。多进程或多线程模型受内存限制 、系统调度器限制以及无处不在的锁限制,很少能处理数千并发连接。事件驱动模型因为在有更好的资源和时间管理的用户端(User...阅读全文
} /*** * go特有变量交换 */ func SwapGo(list []int, i, j int) { list[i],list[j]=list[j],list[i] } /*** * go变量高阶交换(不推荐,一般不好理解) */ func SwapGoAdvanced(list []int, i, j int) { list[i]=list[i]+list[j] list[j]=list[i]-list[j] list[i]=list[i]-list[j] } 运行排序方法 使用终端执行go get github.com/e9ab98e991ab/go-algorithm执行touch main.go执行vim main.go拷贝下方代码块代码到main.go文件中wq保存后直接执行go run...阅读全文
Linux 4.15 将支持加州伯克利开发的开源指令集架构 RISC-V。RISC-V 开发者 Palmer Dabbelt 在邮件列表上宣布,Linux 版 RISC-V 已被接受合并到 Linux 4.15。RISC-V 是基于精简指令集(RISC)原则的一个开源指令集架构。 与大多数指令集相比,RISC-V 指令集可以自由地用于任何目的,允许任何人设计、制造和销售 RISC-V 芯片和软件。虽然这不是第一个开源指令集,但它具有重要意义,因为其设计使其适用于现代计算设备。有了 Linux 内核的支持,RISC-V 的普及度有望进一步提高。...阅读全文
在 Systemd (linux 操作系统流行的 init 系统和服务管理器) 中发现了一个关键漏洞, 这使得远程攻击者有可能触发缓冲区溢出, 从而通过 dns 响应在目标计算机上执行恶意代码。 Systemd是什么 systemd 是一种系统初始化程序。和 sysVinit 以及 upstart 一样,systemd 会成为系统开机时启动的第一个进程(至少 PID 是 1),由它掌管计算机接下来要做的事情,例如读取 fstab 挂载磁盘和按照 runlevel 的设定启动各种服务。其安全的重要性不言而喻。 Systemd远程代码执行漏洞 CVE-2017-9445 该漏洞编号 CVE-2017-9445 ,实际上驻留在 " systemd-resolved " 的...阅读全文
Netty+Nacos+Disruptor自研企业级API网关 download:https://www.51xuebc.com/thread-566-1-1.html React18+TS+NestJS+GraphQL全栈开发示例 全栈开发是指一位开发人员可以熟练掌握前端、后端和数据库等多个领域的技术,能够完整地开发一个应用程序。在本文中,我们将介绍如何使用React18+TS+NestJS+GraphQL这个技术组合来进行全栈开发。 技术选型 在开始开发之前,我们需要选择合适的技术栈。以下是我们所采用的技术: React 18:React18是React框架最新版本,它具有更好的性能、更好的可访问性、更好的代码拆分等特点,可以提高开发效率和应用性能...阅读全文
Linux Kernel 5.10 LTS 的第八个维护版本更新于今天正式发布,本次更新最值得关注的改进就是终于解决了 5.10 Btrfs 性能倒退的问题。在去年圣诞节的时候,Linux 5.10 就被反馈 Btrfs 出现了明显的性能倒退问题。例如简单解压一个 Linux 内核源码.tar.zst 文件,可能需要花费数倍的时间。 虽然修复 Btrfs 性能倒退的补丁在去年年底就已经推出,但直到今天才整合到 mainline 上。而且,在即将到来的 Linux 5.11 上还将会对 Btrfs 进行大量的改进。 总体来说,Linux 5.10.8 的情况应该不错。Btrfs 开发者 Josef Bacik 在该页面上评论道:“5.10+patch比普通的5.9快了很多,因为我的系列补丁更...阅读全文
Chrony 是一个多功能的 NTP (Network Time Protocol) 实现,类 Unix 系统上 NTP 客户端和服务器的替代品。它可以通过 NTP 服务或者类似 GPS 时钟接收器的硬件级参考时钟来同步系统时钟,具有更好的时钟准确度,并且对于那些间歇性互联网连接的系统很有帮助。Chrony 是免费开源的,并且支持 GNU/Linux 和 BSD 衍生版、Solaris 等。 Chrony 有两个核心程序:一个是 chronyd 守护进程,主要用于调整内核中运行的系统时间和时间服务器同步。它确定计算机增减时间的比率,并对此进行调整补偿。另一个是 chronyc,它提供一个用户界面,用于监控性能并进行多样化的配置。chronyc 可以在 chronyd 实例控制的计算机上工作...阅读全文
Git v2.12.2 发布了,Git 是一个开源的分布式版本控制系统,用以有效、高速的处理从很小到非常大的项目版本管理。是 Linus Torvalds 为了帮助管理 Linux 内核开发而开发的一个开放源码的版本控制软件。 部分更新内容: git status –porcelain” is supposed to give a stable output, but a few strings were left as translatable by mistake. “Dumb http” transport used to misparse a nonsense http-alternates response, which has been fixed. “git diff...阅读全文
换到 HTTPS HTTPS 可阻止第三方侦听或修改客户端和服务器之间通信的 中间人攻击 。理想情况下,应该在安装 WordPress 前激活 HTTPS,如果在安装后再添加,可能需要更新 WordPress 设置。 HTTPS 还可以提升网站的 Goggle PageRank。诸如 SiteGround 这类网站托管服务提供商会提供免费的 SSL 证书。 2. 限制 MySQL 连接地址 确保你的 MySQL 数据库拒绝来自外部的人员和系统连接到本地服务器的行为。大多数受管理的 Web 主机默认情况下都会执行此操作,但那些使用专用服务器的主机可以将下面的代码添加到 MySQL my.cnf 配置文件的 [mysqld] 部分: bind-address = 127.0.0.1 3. 使用强...阅读全文
global.outboundTrafficPolicy.mode 参数,用于定制 Egress 通信的缺省行为,目前的缺省值为 ALLOW_ANY,即允许全部 Egress 通信。 新增 Sidecar 资源 目前版本中,Sidecar 会包含整个网格内的服务信息,在 1.1 中,新建了 Sidecar 资源,通过对这一 CRD 的配置,不但能够限制 Sidecar 的相关服务的数量,从而降低资源占用,提高传播效率;还能方便的对 Sidecar 的代理行为做出更多的精细控制——例如对 Ingress 场景中的被代理端点的配置能力。 ExportTo 多个路由管理对象加入了这一字段,用于指定该资源的生效范围。 路由的区域感知能力 新增了对 AZ/Region 等的区域感知能力,降低跨区请求造成的性能损耗。 对 TCP 服务提供鉴权支持 在既有的 HTTP...阅读全文
Kubernetes 1.18 发布了,这是 2020 年首次版本发布。此版本包含 38 项功能增强,其中 15 项为稳定版功能、11 项 beta 功能以及 12 项 alpha 版功能。 主要更新亮点包括: Kubernetes 拓扑管理器 beta 拓扑管理器的作用是让 CPU 与其它设备(例如 SR-IOV-VF)实现 NUMA 对齐,进而让工作负载运行在优化环境中以降低延迟。在拓扑管理器推出之前,CPU 与设备管理器只能彼此独立地做出资源分配决策。此版本拓扑管理器已经发展到 beta 版本。 Serverside Apply beta 2 beta 2 版本将跟踪并管理所有新 Kubernetes 对象的字段变更,确保用户及时了解哪些资源在何时进行过更改。 使用...阅读全文
。Ingress 作为 Kubernetes 的初代入口网关,资源模型过于简单,以致无法适应当今的可编程网络。Gateway API 作为 Kubernetes 入口网关的最新成果,它通过角色划分将关注点分离,并提供跨 namespace 支持使其更适应多云环境,已获得大多数 API 网关的支持;入口网关(南北向)与服务网格(东西向,集群内路由)存在部分功能重叠,Gateway API 为两者的融合提供了新的参考模型。三是 eBPF 开始兴起。越来越多的开源项目使用 eBPF 技术,比如 Cilium 将 eBPF 引入容器原生网络,Merbridge 使用 eBPF 加速 Istio 中的透明流量劫持,Pixie 使用 eBPF 来构建可观察性堆栈,SkyWalking 使用 eBPF 来诊断服务网格的...阅读全文
:~# uname -a Linux longsays 4.9.0-040900-generic #201612111631 SMP Sun Dec 11 21:33:00 UTC 2016 x86_64 GNU/Linux 可见已经是最新的了。 关闭 TCP BBR sed -i '/net\.core\.default_qdisc=fq/d' /etc/sysctl.conf sed -i '/net\.ipv4\.tcp_congestion_control=bbr/d' /etc/sysctl.conf sysctl -p 执行完上面的代码,就使用reboot重启VPS后才能关闭bbr,重启后再用下面的查看bbr状态代码,查看是否关闭了。 因为BBR是集成在内核中的,所以不能卸载,除非更换其他的内核。...阅读全文
通过以下方式界定: 不可更改或可变地 by-reference。这可以通过诸如ref my_var或ref mut my_var分别明确地实现,在大多数情况下,绑定模式将自动推导。by-value,或者当绑定变量的类型实现 Copy 时 by-copy,否则 by-move。 以往,Rust 将禁止在表达式的保护结构中共享对 match 表达式中 if 守卫的 by-move 绑定的引用,这意味着以下代码将被拒绝: fn main() { let array: Box<[u8; 4]> = Box::new([1, 2, 3, 4]); match array { nums // ---- nums is bound by move. if nums.iter().sum::() == 10...阅读全文
JBoot 是一个基于 JFinal 和 Undertow 开发的微服务框架。提供了 AOP、RPC、分布式缓存、限流、降级、熔断、统一配置中心、Opentracing 数据追踪、metrics 数据监控、分布式 session、代码生成器、shiro 和 jwt 安全控制、swagger api 自动生成等功能。 Jboot v1.7.1 主要更新如下: 新增:redis 添加自定义序列化配置的功能 新增:Jboot.java 添加方法 service(Class clazz, JbootrpcServiceConfig config) 方便获取 rpc service 新增:JbootController 添加 getRawObject() 方便获取 api 传过来的 json 数据...阅读全文
统资源,所以,随着客户端的增多,其性能也就越差。 而边缘触发,由于监控的是FD的状态变化,所以整体的系统通知并没有那么频繁,高并发下整体的性能表现也要好很多。但是由于此模式下,用户需要积极的处理好每一笔数据,带来的维护代价也是相当大的,稍微不注意就有可能出错。所以使用起来须要非常小心才行。 至于二者如何抉择,诸位就仁者见仁智者见智吧。 行文到这里,关于epoll的讲解基本上完毕了,大家从中是不是学到了很多干货呢? 由于从netty研究到linux epoll底层,其难度非常大,可以用曲高和寡来形容,所以在这块探索的文章是比较少的,很多东西需要自己照着man文档和源码一点一点的琢磨(linux源码详见eventpoll.c等)。这里我来纠正一下搜索引擎上,说epoll高性能是因为利用mmap技...阅读全文
还有人记得Intel的安腾处理器(Itanium)吗? 日前,Linux之父Linus Torvalds在一篇代码评论中透露,计划进行一次补丁合并,结果就是移除对Intel安腾处理器的支持。 他说,惠普企业已经不再接受安腾硬件订单,Intel一年前也停止接单,尽管最终的出货日期定在今年7月29日,但显然不会有这样的订单存在。安腾,已经死透了。 资料显示,安腾诞生于2001年,是Intel与惠普合作开发,当时提出了划时代的IA64纯64位架构。然而,生不逢时,“过去超前”,不像AMD x64那样兼容x86 32位,需要专门的操作系统,合作伙伴们因为维护量大、客户群体小众而纷纷放弃(甲骨文、微软Windows Server 2008 R2后已经停止维护支持安腾的OS)。 目前最新的安腾是...阅读全文
/etc/apt/sources.list 和 /etc/apt/sources.list.d/ 目录下的 .list 文件定义的。 $ sudo apt-get upgrade #更新系统所有已安装软件包,只更新包会忽略依赖关系 $ sudo apt upgrade $ sudo apt-get upgrade -u #-u 列出可升级软件列表 $ sudo apt-get upgrade -s #模拟升级 $ sudo apt-get dist-upgrade #根据依赖关系更新系统所有已安装软件包 $ sudo apt-get --reinstall install pkgname #只升级指定的软件包 $ sudo apt-get source pkgname #只下载源码包 $ sudo...阅读全文
带动了以X86为基础的处理器的飞速发展。就在PC从企业级市场走向民用市场的同时,半导体行业也在酝酿着一场变革。从英特尔身上折射出来的市场对处理器的需求,让半导体厂商们看到了红利。于是,在此期间,各大厂商都开始着手于处理器架构的研究,2017 年图灵奖获得者John Hennessy 和 David Patterson 在其所著的《计算机架构的新黄金时代》一文中曾提到,20 世纪 80 年代我们做的研究(在计算机领域)能为我们带来回报,能改善成本、能源、安全以及性能。在巨大的回报之下,处理器架构也迎来了百家争鸣的时代。从公开的消息显示,20世纪80年代期间诞生的处理器架构不仅包括我们耳熟能详的ARM以及MIPS,SPARC、DEC Alpha、PA-RISC和其他一些产品也在同一时期出现,这些...阅读全文
: GNOME 桌面 3.30 Debian Stretch 版中的 GNOME 桌面在 Buster 中从 1.3.22 升级到了 1.3.30。在 GNOME 桌面发布版中新包含的一些包是 gnome-todo、tracker 替代了 tracker-gui、gstreamer1.0-packagekit 的依赖,因此可以通过自动地安装编码解码器来做播放电影之类的事。对于所有包来说一个大的改变是从 libgtk2+ 到 libgtk3+。 Linux 内核 4.19.0-4 Debian 使用 LTS 内核版本,因此你可以期待更好的硬件支持和长达 5 年的维护和支持周期。我们已经从内核 4.9.0.3 到 4.19.0-4。 OpenJDK 11.0 Debian 在很长时间里都是 OpenJDK...阅读全文
计、开发自己的技术和产品。1.0版本:最终正式版,公开发布。 事实上,0.5版本发布之后,厂商们已经可以开始设计测试芯片,为后续工作提前做好准备。 尽管升级速度加快,但是每一代PCIe规范的变化都相当大,尤其是带宽每次都翻一番,并兼容所有前代规范。 PCIe 6.0也不例外,向下兼容PCIe 5.0/4.0/3.0/2.0/1.0的同时,数据率或者说I/O带宽会再次加倍来到64GT/s,PCIe 6.0 x1单向实际带宽8GB/s,PCIe 6.0 x16单向带宽128GB/s、双向带宽256GB/s。 PCIe 6.0将延续PCIe 3.0时代引入的128b/130b编码方式,但加入全新的脉冲幅度调制PAM4,取代PCIe 5.0 NRZ,可以在单个通道、同样时间内封包更多数据,以及低延迟...阅读全文
的主要问题是缺乏对现代密码的支持(如ECDHE和AEAD),在规范中存在支持旧密码的要求,在计算机工程发展的现阶段,其可靠性受到质疑(例如,要求支持 TLS_DHE_DSS_WITH_3DES_EDE_CBC_SHA,MD5 和 SHA-1 用于完整性检查和认证)。对传统算法的支持已经导致了ROBOT、DROWN、BEAST、Logjam和FREAK等攻击。然而,这些问题并不是协议的直接漏洞,而是在执行层面上被关闭了。TLS 1.0/1.1协议本身并不包含可以被利用来进行实际攻击的关键漏洞。...阅读全文
文件的偏移的组合. PG的位点概念对于物理流复制和逻辑流复制是统一的. 1) PG对应逻辑 slot 的位点信息保存在数据库端,具有断点续传特性. 2) 除非需要跳过某部分数据,则使用 0/0 去请求拉取对应 slot 的逻辑日志. 3) PG的位点不对应时间点. 对于客户端,在建立连接后,读到的增量信息以消息的形式出现,可以分为三类信息 1) 事务开始,begin 2) 事务结束,commit 3) 事务中单个表的变化信息,分为 a) insert b) update c) delete 根据表 REPLICA 的状态不同,各类DML收到的信息略有变化. ## 五:编译和使用 ### 1 编译 1 编译机上下载安装 PG94 或更高版本的二进制,或用源码安装. 2 使用软链接或别的方式,把...阅读全文
在用 Golang 开发过程中,我们一定能在代码里很多函数或方法都会传递 context, 也会经常遇到这样的报错 context deadline exceeded。你有想过或去探究过 context 到底是什么吗,为什么会遇到上述的报错。在这里我们就分析一下 context 是什么及用途。 首选 Golang 中的 context 值得是 context.Context 接口,Golang 在 1.7 版本中引入标准库的接口。context 主要用来在 goroutine 之间传递上下文信息,包括:取消信号、截止时间、key-value 等。 Context 定义 Context 接口定义如下 1 2 3 4 5 6 7 8 9 10 type Context interface...阅读全文
SwitchHosts 是一个用于快速切换本地 hosts 文件的小程序,便于开发人员快速修改测试域名的解析记录。SwitchHosts 基于 Electron 开发,同时使用了 React、Ant Design 以及 CodeMirror 等框架/库,项目主页为 https://oldj.github.io/SwitchHosts/。 SwitchHosts 主界面 SwitchHosts 功能特性 快速切换本地 hosts 文件hosts 文件语法高亮在线 hosts 方案系统托盘图标快速切换macOS: 支持 Alfred workflow 快速切换 下载安装 switchhosts 你可以直接下载源码到本地运行或编辑,或者在下面下载可执行版本: SwitchHosts! 下载地址1...阅读全文
Google 宣布了 新拥堵控制算法 TCP BBR。Google 官方博客称新算法将 google.com 和 YouTube 的全球网络吞吐量平均改进了 4%,在某些国家改进了 14%+。 Google 解释说,现有的 TCP 拥堵控制算法源自 1980 年代,是为低带宽数据传输设计的,解决拥堵主要考虑丢包,也就是在网络堵塞的时候路由器将会丢弃新的数据包。BBR 代表 Bottleneck Bandwidth and Round-trip propagation time,它的拥堵控制采用了不同的方法,考虑了网络实际的数据交付率有多快。根据最近测量的网络交付率和往返时间构建显示模型,最大化近期可用带宽和最小化近期往返延迟。BBR 使用这些数据决定数据发送速率有多快。 Google 已经...阅读全文
★Privoxy 是啥? 简而言之,Privoxy 是一款功能很强的,开源的,跨平台的 HTTP 代理工具。 其官网链接在“这里”;其维基百科的词条在“这里”。 ★Privoxy 能干啥? 从表面上看,Privoxy 只是一个 HTTP 代理。但是它提供了非常强大的【定制功能】。利用这些定制功能,可以完成很多你意想不到的事情。 简单列举一下,Privoxy 【至少】可以实现如下功能: 1. 根据定制的规则,进行代理转发(链式代理) 在咱们天朝,这个功能主要是用来辅助翻墙。 先说明一下:此处提及的“链式代理”(洋文是“a chain of multiple proxies”),跟俺经常提及的“多重代理”,【不是】一回事儿。 这个“链式代理”,有时候也可以称之为“代理转发”。它跟“端口转发”有...阅读全文
的定制能力。ECharts 底层依托了开源渲染引擎 ZRender ,支持 Canvas 和 SVG 等多种方式的渲染,支持 PC 、移动端、数据大屏、服务端渲染等多种设备场景。 目前,在 2018 年初发布的新版本 ECharts (4) 中,一些常用图表已支持最高达千万级的数据可视化,并且提供了小程序、无障碍访问等支持。基于 WebGL 的 ECharts-GL 能支持各种 3D 图表渲染、以及海量数据的渲染加速。目前,各种基于 ECharts 的扩展库,以及相关的可视化服务系统已经形成了丰富的产品体系和活跃的社区环境。ECharts 目前在 GitHub 上拥有 25k+ 的关注和 2k+ 的相关项目。大量的社区的反馈和贡献使 ECharts 不断地迭代进化。 业内人士认为,进入...阅读全文
2.7 版本与低版本互操作性的问题上,我们增加了一些兼容性代码,典型如服务治理规则、Package 重命名、注册 URL 简化等。 Package 重命名 com.alibaba.dubbo -> org.apache.dubbo 注册 URL 简化服务治理规则配置 更新说明出处 下载地址: Source code(zip)Source code(tar.gz) 新增功能 Bug修复及优化 升级与兼容性 目录...阅读全文