GNS3 2.2.0 发布: 网络拓扑模拟工具
新年假期,Linus Torvalds在邮件列表中发表的一篇火热的帖子引发技术社区关注,人们借此讨论ECC内存的重要性,Torvalds在文章中抨击了英特尔在这方面的"坏政策",因为特定的市场细分使E... 01月05日 222 评论...阅读全文
新年假期,Linus Torvalds在邮件列表中发表的一篇火热的帖子引发技术社区关注,人们借此讨论ECC内存的重要性,Torvalds在文章中抨击了英特尔在这方面的"坏政策",因为特定的市场细分使E... 01月05日 222 评论...阅读全文
types 已废除,将会在10.0中移除。用stages替代。 与stages同义 variables GitLab Runner V0.5.0. 开始引入 GItLab CI 允许在.gitlab-ci.yml文件中添加变量,并在job环境中起作用。因为这些配置是存储在git仓库中,所以最好是存储项目的非敏感配置,例如: variables: DATABASE_URL:"postgres://postgres@postgres/my_database" 这些变量可以被后续的命令和脚本使用。服务容器也可以使用YAML中定义的变量,因此我们可以很好的调控服务容器。变量也可以定义成job level。 除了用户自定义的变量外,Runner也可以定义它自己的变量...阅读全文
Linstedt进一步解释说,通过这样做,它将保持Flash项目的生存和安全。他已经开发出一套可视化方法,将SWF和FLA文件转换为HTML5,Canvas,WebGL或Webassembly。开发者的另一个建议是独立的浏览器,可以播放Flash内容。 此外,参与请愿的开发者认为,Adobe可能有一些许可的组件不能被公开使用。尽管如此,Linstedt仍然希望这不会是一个障碍,他们呼吁Adobe请简单地留下某些组件被删除的说明,开发者将绕过它们,或者用开源替代方法来替换它们。 目前,这份请愿书已经获得了近4677份签名,签名数量正在稳步上升。即使在Adobe宣布到2020年结束对Flash的支持之前,苹果,谷歌,Mozilla 和 微软等公司也默认在各自的浏览器中阻止了 Flash 内容...阅读全文
Linus Torvalds 宣布推出最新的 Linux Kernel 4.14 稳定版,并开始接受 4.15 合并请求。 Linux 4.14 带来了许多新功能和变化,主要包括对驱动程序和硬件启用的改进,文件系统调整和性能优化等等,并将成为下一个长期支持版本(LTS)。 该版本优化了对 x86_64 硬件的内存支持,从原来的 256TiB 虚拟地址空间和 64TiB 物理地址限制优化至 128PiB 和 4PiB 。 其他更改: 新 Realtek Wi-Fi 驱动(RTL8822BE) 支持 Btrfs Zstd 压缩 支持 HDMI CEC(Raspberry Pi) 内存安全加密(AMD EPYC 处理器) 支持华硕 T100 触摸板 Heterogeneous Memory...阅读全文
Docker基于mamespace、cgroups、chroot等技术来构建容器,不是一个系统调用就能搞定,容器是一个用户态的概念。本文中Docker软件工程师Michael Crosby深入探讨了Docker对namespace技术的应用。 相信你在很多地方都看到过“Docker基于mamespace、cgroups、chroot等技术来构建容器”的说法,但你有没有想过为何容器的构建需要这些技术? 为什么不是一个简单的系统调用就可以搞定?原因在于Linux内核中并不存在“linux container”这个概念,容器是一个用户态的概念。 Docker软件工程师Michael Crosby将撰写一些列博客,深入到Docker运行的背后,探索在 docker run这段代码的背后发生了什么...阅读全文
》(LFS)是杰勒德·比克曼斯等人编写的久负盛名的安装Linux的教科书,描述了从源代码编译Linux系统的方法。这本书可以从在Linux From Scratch网站上免费下载到,下载链接如文末。书中详细地描述了如何从零开始构建一个完整的 Linux 系统,不过 LFS 包含的套件较少,一般来说 BLFS 提供的套件更多,其几个相关的子项目有如下这些: Beyond Linux From Scratch(BLFS) 标准LFS仅仅安装了足够让系统启动的基本软件,以及使新系统能够编译新软件包的开发工具。BLFS包括了更多的软件包,且都有相应指导。 Crosss Linux From Scratch(CLFS) 为需要进行交叉编译(即在一个平台上编译另一个平台的代码)的用户提供指导,正式版本为1.0...阅读全文
dnscrypt-proxy到这里还不行,因为你没有配置使用该DNS。如果你使用的是NetworkManager,那么就编辑文件 /etc/NetworkManager/conf.d/rc-manager.conf :[main] rc-manager=resolvconf然后编辑 /etc/resolvconf.conf:# Configuration for resolvconf(8) # See resolvconf.conf(5) for details resolv_conf=/etc/resolv.conf # If you run a local name server, you should uncomment the below line and # configure your...阅读全文
安全(比如沙箱)。 Btrfs:https://facebookmicrosites.github.io/btrfs/ Btrfs 是下一代文件系统,它以当下的数据中心为基础。它是一个写时复制(CoW)文件系统,专注于高级功能实现、容错、修复和轻松管理。Btrfs 旨在解决和管理大型存储子系统,并支持快照、联机碎片整理、池化和集成的多设备支持等功能。 Netconsd:https://facebookmicrosites.github.io/netconsd/ Netconsd 是一个基于 UDP 的 netconsole 守护程序,为 Linux netconsole 消息提供轻量级传输。它接收并处理来自 Linux 内核的日志数据,并将其作为结构化数据提供以给生产工程师以快速识别集群中问...阅读全文
能够帮助运行在 Wine/Proton 上的少量游戏,在现代化处理器(AMD Zen 2 或者英特尔 Connon Lake)上能够使用 Store Local Descriptor Table Register 或者 Store Task Register 指令。 6.XFS 文件系统 XFS 文件系统现在支持到 2486 年,克服了此前 Year 2038 的问题。 7.声卡支持 由于开放源代码社区的工作,终于在 Linux 下支持了 Creative Labs SoundBlaster AE-7 声卡。 8.任天堂 Switch 手柄支持 借助新的Nintendo HID驱动程序(另一个开源社区创建),Linux Kernel 5.10 终于添加了对任天堂 Switch 手柄的支持。任...阅读全文
本教程介绍如何在一个 U 盘上安装多个 Linux 发行版。这样,你可以在单个 U 盘上享受多个现场版live Linux 发行版了。 我喜欢通过 U 盘尝试不同的 Linux 发行版。它让我可以在真实的硬件上测试操作系统,而不是虚拟化的环境中。此外,我可以将 USB 插入任何系统(比如 Windows 系统),做任何我想要的事情,以及享受相同的 Linux 体验。而且,如果我的系统出现问题,我可以使用 U 盘恢复! 创建单个可启动的现场版 Linux USB 很简单,你只需下载一个 ISO 文件并将其刻录到 U 盘。但是,如果你想尝试多个 Linux 发行版呢?你可以使用多个 U 盘,也可以覆盖同一个 U 盘以尝试其他 Linux 发行版。但这两种方法都不是很方便。 那么,有没有在单个...阅读全文
网线即可交换机或路由器,以便将所有树莓派连接到一个内网中 安装的大部分工作都依赖网络,因此还需要能访问公网网络。 集群概览 在这个集群里,我们会使用三个树莓派。其中一个树莓派作为主节点,我们将它命名为 kmaster,并为其分配一个静态 IP 192.168.0.50(注:假设使用的私有网段是 192.168.0.0/24),而另外两个树莓派作为工作节点,分别命名为 knode1 和 knode2,也分别分配 192.168.0.51 和 192.168.0.52 两个 IP 地址。 当然,如果你的内网网段和我的不一样,注意 IP 与集群个节点角色的对应关系。 为了能通过主机名直接访问节点,我们会更新每个节点的 /etc/hosts 文件,记录IP到主机名的对应关系: echo -e...阅读全文
于在 Kubernetes 平台上简化证书管理的软件,它支持对接许多不同的证书源,如 Let's Encrypt 和 HashiCorp Vault。 如果你在使用 Apache APISIX Ingress Controller 时,遇到了证书管理的麻烦,那么使用 Cert Manager 将会是一个不错的选择,本文将介绍如何通过 Cert Manager 来创建证书并对接到 Apache APISIX Ingress Controller。 步骤一:环境准备 如果你希望按照本文的指导进行实际的操作,请确保以下环境和工具已准备就绪: 准备一个可用的 Kubernetes 集群,开发环境中,你可以使用 Kind 和 Minikube 安装 kubectl 安装 Helm v3 请注意,下文所...阅读全文
处理部分流量同时又不修改服务器的地址成为可能。 性能 HAProxy借助于OS上几种常见的技术来实现性能的最大化。 1,单进程、事件驱动模型显著降低了上下文切换的开销及内存占用。 2,O(1)事件检查器(event checker)允许其在高并发连接中对任何连接的任何事件实现即时探测。 3,在任何可用的情况下,单缓冲(single buffering)机制能以不复制任何数据的方式完成读写操作,这会节约大量的CPU时钟周期及内存带宽; 4,借助于Linux 2.6 (>= 2.6.27.19)上的splice()系统调用,HAProxy可以实现零复制转发(Zero-copy forwarding),在Linux 3.5及以上的OS中还可以实现零复制启动(zero-starting); 5,内存...阅读全文
有些矛盾。于是翻一下资料重新整理一下这些知识,希望下次在用到它们时能更顺畅。转载随意,请注明来源,文章持续修订。 由来 虚拟内存 毋庸置疑,虚拟内存绝对是操作系统中最重要的概念之一。我想主要是由于内存的重要”战略地位”。CPU太快,但容量小且功能单一,其他 I/O 硬件支持各种花式功能,可是相对于 CPU,它们又太慢。于是它们之间就需要一种润滑剂来作为缓冲,这就是内存大显身手的地方。 而在现代操作系统中,多任务已是标配。多任务并行,大大提升了 CPU 利用率,但却引出了多个进程对内存操作的冲突问题,虚拟内存概念的提出就是为了解决这个问题。 虚拟内存简单直观的解释 操作系统有一块物理内存(中间的部分),有两个进程(实际会更多)P1 和 P2,操作系统偷偷地分别告诉 P1 和 P2,我的整个内存...阅读全文
自己遇到了什么问题,就是来找解决方案的。还有一批人只有一个简单的想法,但不知道具体的问题。举个例子,以读数据库慢为例,前者已经知道数据库慢可能是因为数据量巨大且没有加索引,解决方案很简单 加索引,这时候他可能需要知道的是如何正确地加索引。而后者可能着重关注的是为什么读数据库会慢,这时候你可能需要额外重点介绍下数据库相关的原理。 ## 清晰的分类 ## 文档大致可以分为以下几种类型,每种类型也有自己不同的特点和写作侧重点。 ## 参考文档 ## 参考文档也是大部分开发人员日常会使用和书写的文档,比如我们使用某个框架或者工具,都会有API说明文档,这就属于参考类文档。 它并没有太多的要求,只要能向读者展示清楚如何使用即可,但无需向读者讲明具体的实现。 注:参考文档并不仅限于API文档,还包括文件...阅读全文
Debian和Ubuntu都有一组官方授予的针对贡献者的成员角色,他们可以以参加选举或其他官方决策等方式参与到项目的治理中,同时这也是给贡献者分配工作的一种手段,大部分贡献者对他们获得的身份都感到很自豪。 在一个发行版的发展过程中,成员结构扮演中重要的角色:它定义了受项目欢迎的贡献者类型,以及项目对贡献者的期望和贡献者拥有的权利。最后,这种方式形成了项目招募新贡献者的吸引力,而只有不断吸收新贡献者才能使项目保持活力。 本文将以Debian和Ubuntu对比为例,介绍不同背景的社区成员是如何进行贡献以及官方认可的。 简介 在具体介绍开始之前,先为大家简单的介绍一下Debian和Ubuntu这两个项目。 Debian是由各种开源协议下的自由软体组成的作业系统,由“Debian计划”组织维护...阅读全文
使用以下命令来实现。 $ systemctl enable chrony # [On SystemD] $ chkconfig --add chronyd # [On Init] 配置 Chrony Chrony 的默认配置文件为 /etc/chrony.conf,下面将介绍一些常用的配置项。 server hostname [option] server 指令用于指定要同步的 NTP 服务器。 server 0.centos.pool.ntp.org iburst 其中的 0.centos.pool.ntp.org 是 NTP 服务器的地址,默认有四组官方的 NTP 服务器。你也可以修改为自定义的时间服务器,例如:ntp1.aliyun.com。 iburst 是参数, 一般用此参数即可...阅读全文
励 Debian 做出改变,继而改进开发者参与维护的体验。Rails 核心成员纷纷宣布离职继不久之前 Rust 审核团队集体离职事件,近日,又有人发现不少 Rails 核心成员纷纷宣布离职。这还要溯源到去年 4 月,Basecamp 创始人以及 Rails 创建者不允许员工在内部谈论种族等政治话题,这引起了员工很多不满,很多人觉得自己被限制了自由言论。当时,很多核心员工选择离职来表示抗议。随着事情不断的发酵,DHH(Rails 创建者)关闭了自己推特的评论功能。如今 DHH 表示他无缘参加今年的 RailsConf 主题演讲,举办方给出的理由是因为去年他大部分时间都不在线。于是 DHH 就吐槽认为这是无稽之谈,不仅发文列举了他去年为Rails的贡献,还表示这是对政治和形态意识差异的报复。在这...阅读全文
比如,当我们需要查看 /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 ```...阅读全文
可以直接用 update-locale 命令修改,即时生效, ``` home@debian12:~$ sudo update-locale LANG=en_US.UTF-8 *** update-locale: Error: invalid locale settings: LANG=en_US.UTF-8 LANGUAGE="zh_CN:zh" ``` 执行命令时遇到上面的问题时, 可以编辑文件 `/etc/locale.gen`, 取消对 `en_US.UTF-8` 的注释, 然后运行这两个命令完成修改, ``` sudo locale-gen en_US.UTF-8 sudo update-locale LANG=en_US.UTF-8 ``` ...阅读全文
改了内核源码库中所有文件的20%左右。这真的是一个相当大的比例,虽然其中有一些是脚本,但总的来说,工作量不算小,"Torvalds说。 那么最近有什么值得注意的事情发生吗?好像并没有,这位Linux之父表示,一些RCU的修复才是值得关注的,但除了网络方面的工作,大部分的焦点都是针对小的驱动更新。 阅读Linus帖子原文:https://lwn.net/Articles/827819/...阅读全文
$convert image.png -define png:format=png32 newimage.png 10,文字注释 $convert image.png -draw "text 0,20 'some text'" newimage.png 从文件text.txt中读取文字,指定颜色,字体,大小,位置: $convert source.jpg -font xxx.ttf -fill red -pointsize 48 -annotate +50+50 @text.txt result.jpg 11,去掉边框 $convert image.png -trim -fuzz 10% newimage.png...阅读全文
Vinux 5.1 发布了。Vinux 是演化自 Ubuntu 的发行,面向盲人及弱视用户的需求作了优化。Vinux 缺省提供两份屏幕阅读器,以及对布莱叶文的显示支持和友好的用户社区。当从这份自启动运行镜像引导时,迎接用户的将是 Orca 阅读器,它让用户能通过键盘命令来浏览图形化的 GNOME 桌面。此外,Brltty 还通过 Orca 提供级别 1 和级别 2 的布莱叶文输出。 Vinux 提供屏幕阅读器,盲文支持和高对比度图标。 该项目的最新版本 Vinux 5.1,基于 Ubuntu 14.04.5 LTS,并提供三个桌面环境:Unity 7.2.4,GNOME 3.10.4 和 MATE 1.8。这次发布的版本不仅仅是关于 Unity 桌面的特性,还有 GNOME Shell 和...阅读全文
新年假期,Linus Torvalds在邮件列表中发表的一篇火热的帖子引发技术社区关注,人们借此讨论ECC内存的重要性,Torvalds在文章中抨击了英特尔在这方面的"坏政策",因为特定的市场细分使ECC内存不那么普及。Linus认为,纠错码(ECC)内存 "绝对重要",但 "英特尔在扼杀整个ECC产业方面起到了重要作用。" Torvalds用它惯常的热辣语言评论了ECC的重要性以及行业领导者和下游厂商有意无意地偷工减料:"因为它可怕的糟糕的市场细分政策......英特尔对整个行业和用户都是有害的,反对ECC的论点一直都是完全的不知所云......现在,即使是内存制造商也开始在内部做ECC,因为他们终于承认了一个事实,那就是他们绝对必须这样做。而内存制造商声称这是因为经济和低功率。而他们都...阅读全文
/etc/apt/sources.list.d/raspi.list 文件,删除原文件所有内容,用以下内容取代: deb http://mirrors.tuna.tsinghua.edu.cn/raspberrypi/ buster main ui 3.同步更新源,执行如下命令: sudo apt-get update 4.更新升级安装包,执行以下代码: sudo apt-get upgrade 出现以下情况时,输入y继续执行即可。 这时会安装较长时间,请耐心等待,放心,应该没问题的。 最后就是注意,如果你需要使用国内其他官方源是没有问题的,但是一定要注意把源里面的stretch 改成 buster即可。 最新Raspberry Pi OS 镜像使用帮助(清华源)...阅读全文
技术一面 基础面试 一面是通过电话直接沟通。 go的调度go struct能不能比较go defer(for defer)select可以用于什么context包的用途client如何实现长连接主协程如何等其余协程完再操作slice,len,cap,共享,扩容map如何顺序读取实现set实现消息队列(多生产者,多消费者)大文件排序基本排序,哪些是稳定的http get跟headhttp 401,403http keep-alivehttp能不能一次连接多次请求,不等后端返回tcp与udp区别,udp优点,适用场景time-wait的作用数据库如何建索引孤儿进程,僵尸进程死锁条件,如何避免linux命令,查看端口占用,cpu负载,内存占用,如何发送信号给一个进程git文件版本,使用顺序...阅读全文
用于选定的前缀),但服务器端无需进行任何内存操作。此外,现在支持选择加入/退出模式,因此,对于不使用广播模式的客户端,可以将其将缓存的内容准确告知服务器,以减少无效消息的数量。从根本上说,现在该功能在需要低内存模式和需要选择性(低带宽)模式时都更好。 2.这是许多用户的旧请求。现在,Redis支持一种模式,用于复制的RDB文件会在不再有用时立即删除。在某些环境中,最好不要将数据存储在磁盘上,而要存储在内存中。 3. ACL在某些方面更好。首先,有一个新的ACL LOG命令,该命令允许查看所有违反ACL的客户端,访问不应该访问的命令,不应该访问的密钥或尝试失败的身份验证。该日志实际上位于内存中,因此每个外部代理都可以调用“ ACL LOG”以查看发生了什么。这对于调试ACL问题非常有用。 但是...阅读全文
KVM。KVM 访客崩溃报告中添加其它信息,这使得在使用 KVM 虚拟化时更容易诊断和修复问题。 文件系统与存储 增强 Device Mapper MultipathingSCSI Multiqueue 驱动使块层可以通过 SSD 和多核系统很好地扩展性能 Stratis,一种管理本地存储的简单解决方案XFS 支持共享写时复制(COW)数据扩展区功能,因此两个或多个文件可以共享一组公共数据块。 此外还有关于网络、身份认证管理与安全等方面的内容,详情查看发布说明: https://blogs.oracle.com/linux/announcing-the-release-of-oracle-linux-8...阅读全文
wlan0 这不是真的吗?我很惊讶地发现,我珍贵的带宽对于 Pandora 很宽裕,每小时使用大约使用 500Kb。而且,像大多数流媒体服务一样,Pandora 的流量也有峰值,其依赖于缓存来缓解阻塞。 你可以使用 -G 选项对 IPv6 地址执行相同操作。请参阅手册页了解 iftop 的其他功能,包括使用自定义配置文件定制默认选项,并应用自定义过滤器(请参阅 PCAP-FILTER 作为过滤器参考)。 Nethogs 当你想要快速了解谁占用了你的带宽时,Nethogs 是快速和容易的。以 root 身份运行,并指定要监听的接口。它显示了空闲的应用程序和进程号,以便如果你愿意的话,你可以杀死它: $ sudo nethogs wlan0 NetHogs version 0.8.1 PID USER...阅读全文
每个人适用同样的规则(环境可能是公平的,因此你需要用自己的方法胜出)。英才制度意味着你需要用自己的方式脱颖而出。有些项目实施英才制度,例如,在邀请开发者加入项目团队之前,通过要求他们作出一些贡献,以表明他们了解项目的代码、规则和文化。确保增加新的开发人员到项目中的过程是众所周知的,并且这些流程是透明的(例如公开投票)。 5、供应商中立 为了实现真正的开放,开发者需要大家认可他们的贡献。如果项目是供应商中立的,那么这更容易实现。供应商中立的项目不由任何组织或机构主导;英才制度应以个人的贡献为基础,不能基于任何特定组织的目标或招聘方法。在供应商中立的基础上托管是实现此目标的一种方式。 6、有良好的定义和文件标准 文档化项目的代码格式规则(使代码格式化预设易于访问),对测试覆盖面、开发方法、软件和...阅读全文
、Bitbucket 和 Subversion。 Git Git 是一个分布式版本控制系统,用来在软件开发过程中跟踪源代码的更改。它是专为协调不同程序员的工作而设计的,也可用于跟踪各种文件集中的更改。它的优势包括速度、数据完整性以及对分布式非线性工作流的支持。 GitHub GitHub 提供了 Git 的分布式版本控制和源代码管理功能,自己也有很多特性。 GitLab GitLab 中的版本控制提供了世界一流的源代码管理功能,可帮助你的开发团队共享、协作并尽可能提高生产力。 Bitbucket Bitbucket 是 Atlassian 所有的、基于 Web 的版本控制库托管服务,可用在使用 Mercurial 或 Git 版本控制系统的源代码和开发项目上。 Subversion Apache...阅读全文
引言:众所周知,Nginx 服务器是一个高性能的 Web 和反向代理服务器。Nginx 在激烈的 Web 服务器竞争中依旧保持良好的发展势头,一度成为 Web 服务器市场的后期之秀,这一切跟 Nginx 的架构设计是分不开的。 一. Nginx 模块化设计 高度模块化的设计是 Nginx 的架构基础。Nginx 服务器被分解为多个模块,每个模块就是一个功能模块,只负责自身的功能,模块之间严格遵循“高内聚,低耦合”的原则。 核心模块 核心模块是 Nginx 服务器正常运行必不可少的模块,提供错误日志记录、配置文件解析、事件驱动机制、进程管理等核心功能。 标准 HTTP 模块 标准 HTTP 模块提供 HTTP 协议解析相关的功能,如:端口配置、网页编码设置、HTTP 响应头设置等。 可选...阅读全文
在 Debian Stretch 中,系统自带的 PHP 版本已经默认为 PHP 7.0。我们如何在 Debian 9 中,把 PHP 的版本降为 Php 5 呢?本文提供了一种多个 PHP 版本共存的方案,我们以安装配置 PHP-5.6 为例,并且支持在多个 PHP 的版本中切换。 首选,我们需要配置一个新的安装源,以便安装 php 5.6 的包,这里我们选择 deb.sury.org , 打开终端,运行以下命令, apt-get install apt-transport-https lsb-release ca-certificates 然后下载安装对应的GPG key 文件,使用命令, wget -O /etc/apt/trusted.gpg.d/php.gpg https...阅读全文
Homebrew 是一款 Mac OS 平台下的软件包管理工具,拥有安装、卸载、更新、查看、搜索等很多实用的功能。简单的一条指令,就可以实现包管理,你不用关心各种依赖和文件路径的情况,十分方便快捷。 引用官方的一句话:又提示缺少套件啦?别担心,Homebrew 随时守候。Homebrew —— OS X 不可或缺的套件管理器。 Homebrew的安装有一些前置依赖,具体如下, 64 位 Intel CPUMac OS X High Sierra 10.13 或更新的系统版本Xcode 的命令行工具 xcode-select --installBourne 兼容的 shell (zsh 或 bash) 安装 Homebrew 安装 Homebrew 只需要用普通用户,执行一条命令即可,如下...阅读全文
-versions #### API kubectl get events #### 查看事件 kubectl get nodes //获取全部节点 kubectl delete node k8s2 //删除节点 kubectl rollout status deploy nginx-test 创建 kubectl create -f ./nginx.yaml #### 创建资源 kubectl create -f . #### 创建当前目录下的所有yaml资源 kubectl create -f ./nginx1.yaml -f ./mysql2.yaml #### 使用多个文件创建资源 kubectl create -f ./dir #### 使用目录下的所有清单文件来创建资源 kubectl...阅读全文
解释,否则错误很容易产生,事情很容易被拖延。 以下是在选择框架时的一些设计考虑因素: 强类型 - 消息是否是强类型的?如果通过服务边界发送的消息清晰可见,那么可以消除由于类型而造成的设计和运行时错误。 打开解释 - 能够直接从服务API规范生成客户端库,减少了误解的问题。错误条件 - 有一套明确定义的错误代码可以更容易一致地交流问题。 文档 - 服务API应该是易读易懂的。定义服务API的格式应该尽可能清楚,准确地描述端点。 版本控制 - 更改是不可避免的,这是一个很好的选择,在某些时候,服务API将需要修改。所使用的消息传递格式和服务定义可以影响修改API并将其部署到生产的容易程度。是否有明确的路径来增加版本及其相应的库,并推出更改? 微服务最佳实践,为什么可扩展性是重要的 除了上面列出的...阅读全文
按Kubernetes每季推出新版本的周期,暨今年3月底发布1.6版后,应该即将有一波大公布。果不其然,作为Kubernetes 1.7开发团队成员之一的Mirantis,在近日宣布,Kubernetes 1.7版会如期在6月底发布。 在1.6版中,Kubernetes不仅新增了角色权限控管,还将集群规模扩大至5,000个节点,但对Kubernetes社区而言,1.6版只不过是求稳定,并无太多新功能。Mirantis表示:1.7版本则是全力锁定推新功能,预计会有超过50个新功能,例如丛集联邦、安全性以及容器网络。 而根据Kubernetes现今对外的文件,还可发现许多有趣的新功能,像是支持容器基础组件Containerd、加强容器Runtime接口等。在容器储存功能方面,则预计开始支持本地...阅读全文
Arch Linux 是第一个以全新的 ISO 镜像在 2020 年启动的 GNU / Linux 发行版之一,该镜像是第一个基于最新 Linux 内核系列的镜像。 Arch Linux 2020.01.01 是 2020 年的第一个 ISO 版本,由 Linux 5.4 内核系列提供支持,带来了许多新功能和增强功能。例如,对 Microsoft exFAT 文件系统的支持、“lockdown”安全功能、以及对 Android 上的应用程序内存管理的改进。 最重要的是,Arch Linux 2020.01.01 发行版还附带了整个 2019 年 12 月的所有软件包更新和安全补丁程序发行版,对于想要在新计算机上部署 Arch Linux 的人来说,该 ISO 镜像将是最新的安装介质。 值得...阅读全文
Linus Torvalds 在内核邮件列表上宣布释出 Linux 5.6。Torvalds 称,他没有看到内核开发受到新冠疫情影响的迹象,大部分人可能早就习惯了在家远程工作。 他估计 Linux 5.7 的发布不太会有变动,但有人错过合并窗口还是可能的,毕竟合并窗口没有你或你周围的人的健康更重要。 Linux 5.6 的特性包括: Arm EOPD 支持,时间命名空间,BPF 调度器和批映射操作,openat2() 系统调用,WireGuard VPN 实现,流队列 PIE 包调度器,2038 年问题接近解决,pidfd_getfd()系统调用,ZoneFS 文件系统,BPF TCP 拥堵控制算法实现,移除 /dev/random blocking pool 等等。 具体可阅读...阅读全文
美国证监会规定上市公司公开披露各种信息时要提交统一格式的文件,又叫Form(一般翻成“表格”)。根据不同的情况要提交不同的表格,比较重要的是S-1(招股书)或F-1(外国公司招股书),10-K(年报)、10-Q(季报)、8-K(重大事件)。 问题问到的三种Form的具体含义: 6-K Report of foreign private issuer pursuant to Rule 13a-16 or 15d-16 under the Securities Exchange Act of 1934(注册地不在美国的外国公司披露特定财务信息) 20-F Registration statement / Annual report / Transition report(注册...阅读全文
2012 年宣布的 GNU Guix 包管理器项目正式释出了 1.0.0 版本。在过去七年中,260 名开发者递交了超过 4 万个 commits,此外还有文档、翻译、设计等方面的大量工作。 GNU Guix 是事务性包管理器,可以安装在 GNU/Linux 发行版上,也可以作为 i686、x86_64、ARMv7 和 AArch64 机器的独立操作系统发行版。 用户可使用 Guix 安装应用程序并保持程序在最新状态,软件开发者可以产生一次性的软件环境,系统管理员可以更容易的部署复杂服务。 感兴趣的用户可以使用虚拟机镜像体验 Guix。...阅读全文
XXL-JOB是一个轻量级分布式任务调度平台,其核心设计目标是开发迅速、学习简单、轻量级、易扩展。现已开放源代码并接入多家公司线上产品线,开箱即用。 v2.0.0 Release Notes 1、调度中心迁移到 springboot ; 2、底层通讯组件迁移至 xxl-rpc ; 3、容器化:提供官方 docker 镜像,并实时更新推送 dockerhub(docker pull xuxueli/xxl-job-admin),进一步实现产品开箱即用; 4、新增无框架执行器 Sample 示例项目 “xxl-job-executor-sample-frameless”。不依赖第三方框架,只需 main 方法即可启动运行执行器; 5、命令行任务:原生提供通用命令行任务 Handler(Bean...阅读全文
Debian 项目宣布推出 Debian 10.9。新上线的 ISO 映像文件可以用来全新安装 Debian,它包含了所有最新的软件包更新。如果您的电脑上已经安装了 Debian 9,就不需要下载 Debian 10.9,只需将所有可用的更新应用到您的系统上,就可以使用最新的版本。 ![Debian 10.9发布 修正安全性并带来流行软件包的更新](https://wpfile.debian.cn/uploads/2019/04/debian-10-buster.png) 对于Debian 10.9,开发组对此描述: "Debian项目很高兴地宣布其稳定发行版Debian 10(代号为buster)的第九次更新。这个版本主要增加了对安全问题的修正,以及一些严重问题的调整…请注意,该点发布并...阅读全文
美国当地时间8月16日,即今天,Debian 在官网发文庆祝诞生 25 周年。 Debian 于1993年8月16日由 Ian Murdock 首次发布,最初将其称为"Debian Linux Release"。当时,他将这封著名的电子邮件发送到 comp.os.linux.development 邮件列表,宣布他正在开发新的 Linux 发行版,并正在寻找建议。他将其称为 Debian Linux Release,并表示这是由 Linux 开发者从头开始开发的,尽管它受到 Softlanding Linux System (SLS) 的启发。 Debian 的名称由 Ian Murdock 当时的女友 Debra 和 Ian Murdock 自己的名字合并而成,所以 Debian 一词是...阅读全文
8月16日,Debian 官方博客发文庆祝 Debian GNU/Linux 诞生 27 周年。 由于 COVID-19 大流行,官方表示今年无法像以往那样组织线下的现场庆祝活动,因此他们要求贡献者、开发者、维护者、团队、社区和用户在8月16日(和/或15日)在线宣传 Debian 项目和举办庆祝活动。 如果你所在地区没人组织庆祝活动,或者自己不想参加活动,Debian 团队提议使用 OBS Studio 把自己准备的庆祝活动录制下来然后上传至网络或者直接开直播。 Debian 于1993年8月16日由 Ian Murdock 首次发布,最初将其称为”Debian Linux Release”。当时,他将这封著名的电子邮件发送到 comp.os.linux.development 邮件列表...阅读全文
API 中的一种特殊的 ephemeralcontainers 处理器进行创建的,而不是直接添加到 pod.spec 段,因此无法使用 kubectl edit 来添加一个临时容器。 与常规容器一样,将临时容器添加到 Pod 后,将不能更改或删除临时容器。 为什么我们需要Ephemeral 容器? 我们知道容器的优点是它们通过使用不变方法提供所有必需的依赖项来运行隔离的进程。通过仅将所需的依赖项添加到镜像中,容器可以降低攻击面并提供更快的启动和部署。使用“distroless”方法构建容器镜像(基于scratch),通过仅包含已编译的应用程序二进制文件,将容器镜像提升到了一个新的水平。与普通的容器镜像不同,它们不基于任何种类的Linux发行版,因此不包含任何其他可通过kubectl exec执行...阅读全文
(User $user) => $user->id, $users) 需要注意几点: 短闭包可以直接访问闭包函数外面的变量,所以不需要再写 use 关键词以fn关键词开始$this 可以像普通的闭包一样使用短闭包只有一行代码,仅仅做返回声明使用,不允许使用return 关键词 还可以使用更严格类型的方式 $ids = array_map(fn(User $user): int => $user->id, $user); 预加载 PHP预加载可以极大的提高性能 优点:在PHP 7.4以前,如果你使用了框架来开发,每次请求文件就必须加载和重新编译。预加载在框架启动时在内存中加载文件,而且在后续请求中永久有效。 缺点:性能的提升会在其他方面花费很大的代价,每次预加载的文件发生改变时,框架需要重新启动。 属...阅读全文
"dns_packet_new" 函数中, 它是一个 dns 响应处理程序组件, 它为本地应用程序提供网络名称解析。 根据星期二发布的一个公告, 当系统试图在攻击者控制的 dns 服务上查找主机名时, 经过精心构造的恶意 dns 响应,可以远程崩溃 " systemd-resolved " 程序。 最终, 大量 dns 响应会溢出目标计算机的缓冲区, 从而使攻击者改写其内存,引发远程代码执行。这意味着攻击者可以通过其恶意的 dns 服务,在目标系统或服务器上,远程执行任何恶意软件。 ubuntu 开发者Chris Coulson在开发规范中这样描述, “直到 233版本的 systemd , certain sizes passed to dns_packet_new in systemd-resolved can...阅读全文
创建一个新角色“Merger”,他可以 commit,但只能合并来自其他人的 pr。合并不能决定主动将内容添加到 Django,也没有任何特殊的决策特权。 此外还会创建“Releaser”角色,他可以访问 Django 的发行版本并执行相关的机制,例如在关键文件中增加版本号。 另一方面,在有需要的情况下,技术委员会将保留为最终决策机构,并且还将负责就 Django 未来技术方向的想法和建议进行调查,并确定发布时间表。 但是,技术委员会的成员资格将不再仅限于 committer,技术委员会也不再由 committer 选举产生。凡是向 Django 技术贡献过的人都有资格竞选技术委员会委员,并由 Django 软件基金会的个人成员评选。选举的潜在候选人从此前的大约 50 位(committer...阅读全文
冲区,一个用于存储速度不同步的设备或优先级不同的设备之间传输数据的区域。通过缓冲区,可以使进程之间的相互等待变少,从而使从速度慢的设备读入数据时,速度快的设备的操作进程不发生间断。 在Free命令中显示的buffer和cache,它们都是占用内存: buffer : 作为buffer cache的内存,是块设备的读写缓冲区,更靠近存储设备,或者直接就是disk的缓冲区。 cache: 作为page cache的内存, 文件系统的cache,是memory的缓冲区 如果 cache 的值很大,说明cache住的文件数很多。如果频繁访问到的文件都能被cache住,那么磁盘的读IO 必会非常小。...阅读全文