InfraPub 为您找到相关结果 53

Debian升级内核开启TCP_BBR 实现网络单边加速

自从锐速发布以来,这款牛逼的单边加速神器的确为一些线路不太优秀的服务器带来了更优秀的体验。但是呢,过高的价格和不再低端售卖。导致了我们并无法实现一个免费好用的单边加速功能。 但是谷歌为我们带来了干货 新的 TCP 拥塞控制算法 BBR (Bottleneck Bandwidth and RTT)。 目前在 Linux Kernel 4.9 中加入了该算法,所以我们只要升级内核就可以爽一波了。难懂的技术说明,我们也不说了,TCP BBR 的目的就是要尽量跑满带宽,并且尽量不要有排队的情况。 注: 更新内核有一定风险,请注意备份。 TCP BBR 只要 Linux 发行版的 Kernel 即内核版本大于等于 4.9 即可方法是通用的,如何升级至 Kernel 将在下面介绍。 修...阅读全文

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

Tmux 快速教程:快捷键和配置

Tmux 简单来说就是终端里的『窗口管理器』,如果我使用终端登录到远程主机并运行前台程序,那么这个窗口等于就被占用了,想要看一下 CPU 的使用率,就得再连接一次。但是如果在远程主机上运行 tmux,那么就可以多个控制台(类似于窗口),相当高效,比方说可以像下面这样: 需要注意的是,这里是在我本地使用 tmux,最好在远程主机也安装 tmux,这样就只需要连接一次。 Hello World 前面提到的窗口管理只是 tmux 功能的一小部分,另一个很有用的功能就是,连接到远程主机之后,一旦断开,那么当前账户登录的任务就被取消了,但是使用 tmux 可以在断开之后继续工作,下次登录可以查看。其他的功能还有: 窗口切换,每个窗口里还可以分割面板 配置方便,可以使用脚本 类似 vim 的双层操...阅读全文

博文 2017-11-07 15:17:49 debian.cn

Kubernetes v1.21 新特性预览

Secret 时,大量的 watch 事件会急剧增加 kube-apiserver 的负载,并会导致错误配置过快传播到整个集群。在这种情况中,给不需要经常修改的 ConfigMap 和 Secret 设置 immutable: true 就可以避免类似的问题。注意,设置 immutable: true 之后,ConfigMap 和 Secret 内容更新时需要删除并重新创建,且使用它们的 Pod 也需要删除重建。IPv4/IPv6 双栈支持 BetaIPv4/IPv6 双栈支持在 v1.20 的时候进行了重构,并将于 v1.21 中进入 Beta 版本(默认),kubeadm 也已经支持创建 IPv4/IPv6 双栈集群。该特性后,Kubernetes Service 和 Pod 会同时分配...阅读全文

博文 2021-03-30 20:24:36 mp.weixin.qq.com

Debian 9 Stretch 安装配置 Caddy Server

Caddy 是一个用 Golang 开发的高效 Web Server,相比 Nginx,它的配置和使用要简单很多,能自动 HTTPS、并且支持 HTTP/2 和 QUIC。 下载安装 Caddy 首先去 Download Caddy 选择你需要的插件,然后复制下方的 One-step installer script (bash),例如我的是 $ curl https://getcaddy.com | bash -s http.cache,http.cors,http.expires,http.filemanager,http.git,http.ipfilter,http.minify,http.nobots,http.ratelimit,http.realip...阅读全文

博文 2017-12-24 10:18:33 debian.cn

分布式 NewSQL 数据库 TiDB

TiDB 3.1.0 GA 版本现已发布,该版本的更新集中在 Bug 修复。具体的更新有如下内容: 兼容性变化 TiDB支持 TiDB 在启动服务时,在 report-status 配置项情况下,如果发现 HTTP 监听端口不可用,则直接退出启动 #16291ToolsBackup & Restore (BR)BR 不支持在 3.1 GA 版本之前的 TiKV 集群上进行恢复 #233 新功能 TiDB支持在 explain format = "dot" 中展示 coprocessor 任务的信息 #16125通过 disable-error-stack 配置项减少日志的冗余 stack 信息 #16182Placement Driver (PD)优化热点 Region 调度...阅读全文

博文 2020-04-18 22:05:02 3.1.0 发布

使用apt

-free #deb-powerpc http://ftp.us.debian.org/debian unstable main contrib non-free #deb-s390 http://ftp.us.debian.org/debian unstable main contrib non-free #deb-sparc http://ftp.us.debian.org/debian unstable main contrib non-free clean http://ftp.cn.debian.org/debian 自动同步 只需 root 权限 cron 自动运行 apt-mirror 命令即可。 # m h dom mon dow command 0 0 * * * apt...阅读全文

博文 2021-01-28 17:50:18 mirror搭建debian镜像源

十个增加 Linux Shell 脚本趣味的小工具

-Windows 系统发送消息 smbclient可以和 SMB/CIFS服务器通信。它可以向MS-Windows系统的指定用户发送消息: smbclient -M WinXPPro < 或者 echo "${Message}" | smbclient -M salesguy2 10. Bash Socket 编程 你可以在bash中一个socket链接,并且传输数据。Bash有两个特殊的设备文件: /dev/tcp/host/port - 如果hostname,和port是合法的话,bash会尝试一个TCP连接。 /dev/udp/host/port - 如果hostname和port是合法的话,bash会一个UDP连接。 你可以利用这个技术来测试一台主机的端口是否是的,而不需要使用...阅读全文

博文 2018-04-09 09:38:50 debian.cn

Pardus 17.1 发布,基于 Debian 的发行版

此次更新内容:新版本提供了三个不同名称的独立 ISO 映像表明意图 — Xfce,DDE(Deepin 桌面环境)和服务器。 发行说明仅以土耳其语提供,但在临时的 Pardus 版本中,在线翻译服务翻译了更改日志: 下载目录的默认名称已从“下载”更改为“İndirilenler”; 系统设置菜单已改进; 默认打印机测试页面已重新设计; 预先定义的“pardus”用户的密码在直播系统时被移除; gdebi 程序运行图形界面时发生的崩溃是固定的; gnome-disks 程序某些部分的 bug 已经修复; 新增桌面壁纸; 许多软件包已经更新; 主题已经刷新; 深度桌面媒体支持添加; 许多安全和系统性能补丁已被添加 完整内容请查看 发布主页 。 下载地址:http...阅读全文

Linux内存buffer和cache的区别

在Linux的内存分配机制中,优先使用物理内存,当物理内存还有空闲时(还够用),不会释放其占用内存,就算占用内存的程序已经被关闭了,该程序所占用的内存用来做缓存使用,对于过的程序、或是读取刚存取过得数据会比较快。 一. 内存使用说明 Free 命令相对于top 提供了更简洁的查看系统内存使用情况: [root@debian ~]$ free total used free shared buffers cached Mem: 1035108 1008984 26124 0 124212 413000 -/+ buffers/cache: 471772 563336 Swap: 2096472 842320 1254152 这里显示的单位是KB。 在Linux的内存分配机制中,优先使用物...阅读全文

Debian 上安装搭建 Shadowsocks 服务

在使用了一段时间后,决定由 CentOS 转移到 Debian 上,以便在低配置的服务器上网站能更加的稳定,Shadowsocks 服务也有之前的 python 版本转移到了 shadowsocks-libev 版本,原因是 libev 的版本是用 C 语言写的,会更加的节省内存,更重要的是该 libev 一直在不断的维护着,更新也很频繁。 搭建环境 本人还是在 Vultr.com 的 VPS 上安装了 Debian 8.0 x86 minimal 系统,在 Debian 8(Jessie) 编译 libev 版本需要 debian-backports 来安装 dh-systemd 和 init-system-helpers. 首先要在 debian 的源列表中添加 backports...阅读全文

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

通过 Hostapd 进行 WIFI 热点共享上网

=3,192.168.11.1 dhcp-option=6,192.168.11.1 cache-size=1024 conf-dir=/etc/dnsmasq.d 3.3 使用命令vi /etc/resolv.dnsmasq.conf编辑该文件,并添加如下内容: nameserver 114.114.114.114 nameserver 223.5.5.5 nameserver 223.6.6.6 3.4 使用命令vi /etc/resolv.conf编辑该文件,并添加如下内容: nameserver 127.0.0.1 4、启动相关服务: 4.1.分别使用命令: systemctl enable dnsmasq.service systemctl disable hostapd.service 和关闭两项服务...阅读全文

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

GitLab 11.5 正式版发布 大量安全新功能

GitLab 11.5 正式版已发布 ,该版本带来了许多关于安全的新功能。如新的 Group Security Dashboard、Operations Dashboard,和对 GitLab Pages 的访问控制权限等。 Group Security Dashboard Group Security Dashboard 提供了项目组中所有项目 SAST 漏洞的摘要,以及可用于启动修复过程的可操作条目列表。例如,可以使用建议的解决方案 issue,或者如果需要将其归类为误报,则只需关闭该条目。将来会添加对其他测试(依赖扫描、容器扫描和 DAST)的支持。 Operations Dashboard GitLab 11.5 引入了一个新的、以操作为中心的仪表板,提供了用户感兴趣的每个项目...阅读全文

博文 2018-11-23 10:08:31 debian.cn

Git 免用户名密码访问代码库

config --global credential.helper store store为永久存储,当然也可以设置临时的: git config –global credential.helper cache 默认为15分钟,如果想设置保存时间的话,可以输入: git config credential.helper 'cache --timeout=3600' 这样就设置了一个小时的有效时间。 执行完后查看 %HOME% 目录下的 .gitconfig 文件,会多了一项: [credential]helper=store 重新git bash会发现git push时不用再输入用户名和密码。在 Debian 等 Linux 系统中方法一致,只需要在自己的 $HOME 下创建 .git...阅读全文

博文 2018-11-28 12:55:36 debian.cn

Debian 如何安装无线网卡驱动

在安装 Debian 10 的时候提示没有iwlwifi驱动,因为当时没有安装有 iwlwifi 的驱动盘,跳过后开机发现没有 wifi。这里我们将介绍,有线网正常的状态下,如何下载安装 iwlwifi 驱动,并 wifi 。 因为我用的是 Intel Wireless-N 的无线网卡,所以本教程以 Intel Wireless-N 为例说明。如果你使用的是其他厂商的无线网卡,请参考 Debian wiki,查找相应的配置方法。如果不确定无线网卡的型号,可以通过命令 lspci 查询,或者在 dmesg 的命令输出中找到线索。 更新安装源 我们需要添加 non-free 的安装源,到系统中,更新 /etc/apt/sources.list,添加以下记录: deb http...阅读全文

博文 2020-02-19 15:18:51 debian.cn

程序员如何才能成为独立开发者?

大概这几条路: 1)自己做开源项目,足够好,然后鼓励你的关注者给你donate,老外常年用paypal收打赏。厉害一点,直接有人给你包了。 2)用心写各种demo或者教程,好看易懂,勤维护,也有人给你打赏,写的多了还可以出书,类似阮一峰和廖雪峰。 3)多做前端,写几个自己开发的工具类app,笔记啊,图片识别的类似小工具,真的好用,可以加一些小广告,或者升级付费的功能。 4)开直播做培训,口条要好,一定要把一些教程练得特别熟练,表演的好像阿里P8以上那种其实都可以自己手写一个新的jvm的大牛但是想普惠众生,而江湖隐退来开课办班,帮助大家提高技能和基本功,这种目前好多人在做。 5)程序员都在用的AWS有好消息!AWS(亚马逊云计算)中国区新用户注册即可免费使用12个月云服务产品啦!每注册一...阅读全文

U盘启动的 UEFI 版和装机版有什么区别

目前出现U盘启动盘制作工具,一般有两个版本装机版和 UEFI 版本。大家可能不知所措,不知道究竟该下载哪个版本使用了? uefi就必须主板支持才能用,一般老电脑都不支持,所以不支持的用装机版或者普通版,新电脑用uefi版。 UEFI版: UEFI 版简单来说就是新一代的BIOS,图形的界面,用鼠标点就可以,再深入一点,这种BIOS里面有一项EFI启动,了这个功能,装好的电脑开机启动速度大大加快。2012年以后的电脑和主板基本都带有EFI功能。 优点: 1. 免除了u盘启动设置 2. 可直接进入菜单启动界面: 3. 进入pe快捷方便 UEFI进入方法: 1、主板UEFI启动优先的,启动电脑会直接进入支持uefi的PE。 2、BIOS启动菜单选择U盘带UEFI字样的。 装机版: 装机版为最...阅读全文

博文 2014-04-25 10:08:57 debian.cn

高性能缓存服务器 Nuster

README Naster 使用方法 在global中添加cache on, 然后在backend或listen中添加 cache filter 和 cache rule Naster 指令 cache syntax: cache on|off [data-size size] default: none context: global 控制是否缓存。 可以设置data-size来控制缓存数据的内存使用量。可以使用m, M, g 和 G. 默认是 1MB,同时也是最小使用量。只有 http 内容计算在内,并不包括使用缓存带来的内存开销。 filter cache syntax: filter cache [on|off] default: on context: backend, listen 定...阅读全文

博文 2017-12-15 22:17:31 debian.cn

Debian 系统如何配置 iptables

:/home# reboot root@localhost:~# iptables -L 结束语 按照上述步骤进行配置,可以实现开机加载iptables规则。如果发生问题,多配置几遍就可以。Centos的配置主要在/etc/sysconfig/iptables进行配置,然后使用chkconfig开机启动即可。在实际的运维需求中,可以根据应用系统情况,合理的开放端口。...阅读全文

博文 2018-08-08 16:35:38 debian.cn

Zoom 5.0是重大更新 增强加密功能提供更多安全选项

。 Zoom 升级到 AES 256 位 GCM 加密标准,为会议数据提供了更多的保护和防篡改功能。这为 Zoom 会议、Zoom 视频网络会议和 Zoom 电话数据的保密性和完整性提供了保障。Zoom 5.0 将于本周内发布,支持 GCM 加密,一旦所有账户启用 GCM,该标准将生效。 现在通过点击界面会议菜单栏中的安全图标,就可以找到Zoom的安全功能。会议密码是现有的 Zoom 功能,Zoom 5.0 对大多数客户,包括所有基本版、单授权专业版和 K-12 客户,都默认了会议密码。对于管理账户,账户管理员现在可以定义密码复杂度(如长度、字母数字和特殊字符要求)。此外,Zoom Phone 管理员现在可以调整访问语音信箱所需的密码长度。 另外,Zoom 5.0 将为大型企业提供新的数据结构,允...阅读全文

博文 2020-04-23 07:54:44 debian.cn

Debian 安装配置 v2ray 服务端

v3.5 is installed. ``` 看上面输出,里面有 UUID 和 PORT 字段,这两个字段加上 IP地址,就是我们连接服务器的关键,只需要把这几个字段填入客户端,我们就能通过这台服务器科学上网了。 启动v2ray服务进程:`systemctl start v2ray` 如果远程服务器和本地的连接速度不满意,可以参考之前的[Debian升级内核TCP_BBR 实现网络单边加速](https://debian.cn/articles/62)。...阅读全文

博文 2021-03-11 16:49:32 diablo4

Kubernetes 使用 PodPreset 注入信息到 Pods_哎_小羊的博客

Docker、VirtualBox、Minikube、Kubectl 的安装过程,着重介绍一下如何配置 PodPreset 以及使用。 3、K8s 启用 PodPreset 配置 K8s 默认不 PodPreset 支持的,其 API 类型为 settings.k8s.io/v1alpha1,如果不确认集群是否已 PodPreset 支持,可以通过 kubectl api-versions 命令查看是否存在该类型,或者 kubectl get podpreset 命令查看,如果没会提示 error: the server doesn't have a resource type "podpreset" 错误。 启用 PodPreset,可以通过 K8s ApiServer 增加...阅读全文

博文 2021-01-27 18:47:00 CSDN博客

从 Debian 安装 Proxmox VE,并配置网络和双硬盘

sudoer(嘛,死循环了1visudo 在文件最后加上一行1username ALL=(ALL:ALL) NOPASSWD:ALL username 是你当前的用户,你想从哪个用户免密切换到 root 在我这里是1customer ALL=(ALL:ALL) NOPASSWD:ALL visudo 命令使用的是 nano 编辑器 所以修改好了后,ctrl+x,y,回车 回到 customer 用户, sudo su,可以免密进入 root ,说明配置好了 bbr因为内核版本在 4.9 以上,可以直接 bbr。 修改系统参数12echo "net.core.default_qdisc=fq" >> /etc/sysctl.confecho "net.ipv4...阅读全文

博文 2021-03-01 20:20:31 驱蚊器喵的插座

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

systemctl enable gogs 使用下面的命令 Gogs 服务器并设置为开机启动。 Gogs 服务器现在已经运行在你的 Debian 系统上了。 使用下面的命令检测: netstat -lnptu systemctl status gogs 您应该会得到下图所示的结果。 步骤 7 - 为 Gogs 安装和配置 Nginx 反向代理 在本步中,我们将为 Gogs 安装和配置 Nginx 反向代理。我们会在自己的库中调用 Nginx 包。安装 Nginx, sudo apt update sudo apt install nginx -y 进入 /etc/nginx/sites-available 目录并且创建虚拟主机文件 gogs,粘贴下面的代码到配置文件: server { listen...阅读全文

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

腾讯在贵州有个山洞:放置腾讯业务最核心数据

干嘛的?“如果把腾讯比作一个工厂,那么数据中心就是车间,信息需要在这里集中处理、存储、交换。”腾讯技术工程事业群任职数据中心技术总监朱华说。 那个名叫T-block的技术,是腾讯数据中心自主研发的第四代技术。 腾讯数据中心的技术发展,总共经历四个阶段: 第一代(2006-2009),基本是沿用了传统电信机房的解决方案(厂房改造,风冷,N+1冗余),只在局部做了点优化,比如冷热通道隔离; 第二代(2007-2011),从天津数据中心的大而全模式,10万量级、大型离心冷水机组、10KV Switch Gear、变压器上楼、中压油机、UPS、STS、AHU、MAU、封闭热通道、预作用水消防、水侧Free cooling、Air side economizer; 第三代TMDC(2011...阅读全文

博文 2018-04-06 08:44:38 debian.cn

Python 社区有了新治理模式

投票,也就是弹劾机制,可将任期内的当权者赶下台;它严格限定了在委员会里,只允许少于 50% 的成员是企业(5 人委员会里最多有 2 个);并且关注到核心开发者的选举/淘汰、如何更新治理提案等问题。 而且,PEP 8016 中也提出了新的 PEP 流程,目前的 PEP 流程是提案人确定 PEP 的选题方向,提案人负责收集与整合来自整个社区的反馈。然后,相关领域的专家们汇总全部讨论,并为期 14 天的审查,之后进行社区投票。如果一个 PEP 很有争议,任何专家成员都可发起动议来拒绝通过它,这需要超过 2/3 的票数。PEP 8016 的 PEP 流程:理事会在必要时可直接地批准/否决 PEP,但最好是设置流程来避免这样做决策,例如,将决策权委派给团队或者 BDFL 代表。 7 种治理方案一览...阅读全文

ChaosMesh 的基本功能有哪些

Mesh 通过 Kubernetes 原生的 RBAC(基于角色的权限控制)功能对权限进行管理。用户可以根据实际的权限需求自由地创建多种 Role,然后绑定到用户名 Service Account 上,最后生成 Service Account 对应的 Token。用户使用该 Token 登陆 Dashboard,只能在该 Service Account 允许的权限范围内进行 Chaos 实验。此外 Chaos Mesh 还支持通过设置 Namespace Annotation 的方式特定 Namespace 下混沌实验的权限,进一步保障混沌实验的可控性。​​​​​​​...阅读全文

三位候选人正进行 2022 Debian 项目负责人选举

2022 Debian 项目负责人选举已,本次选举的流程和以往一样,有三位候选人:Felix Lechner、Hideki Yamane 和现任 Debian 负责人 Jonathan Carter ,三人分别以一个页面进行自我介绍,并等待社区开发者为其进行不记名投票。​下面来介绍一下三位候选人。Felix Lechner同时受新时代思想以及古老宗教的启发,拥有扎实的理论基础,试图让 Debian 重新焕发活力。现担任美国加州的图书馆馆长(公务员),妻子来自中国,最好的朋友来自印度。Debian 贡献Debian 商标团队的一员,努力保护 Debian 的品牌;设计了 Debian 的密钥到期提醒功能;共同维护 了 Lintian (Debian 软件包追踪工具)及其网站;维护...阅读全文

Debian Linux下LNMP环境配置

-address = 127.0.0.1”这句话在作祟。把地址绑定到了127.0.0.1上,因此远程无法访问到数据库,这里我们把它注释掉就可以了,或者你的服务器是指定ip的话就配置成你服务器的ip地址就可以了。 当然也有可能是你的mysql没有远程访问账户的权限,如果是这个原因,只需在mysql的user表里添加一条记录即可: grant all PRIVILEGES on thedb.* to user1@'%'identified by 'complex-password'; FLUSH PRIVILEGES; 然后重启一下mysql的服务: service mysql restart 3.安装PHP 使用apt工具安装: apt-get install php5-fpm php5-gd php5...阅读全文

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

Raspberry Pi 推出 Zero W

Raspberry Pi 基金会 推出了 Pi Zero W。作为 Pi Zero 的一个新型号,Pi Zero W 在主板上新集成了 WiFi 和蓝牙,其 10 美元的售价要比 Pi Zero 贵上一倍,但是与五年前发布的 Raspberry Pi Model B 的 35 美元售价相比依然便宜不少。具备主板联网功能的 Pi Zero W 将物联网项目的更好前景。 一年前主板上具有 WiFi 和蓝牙的 Pi 3 Model B 推出 之后,下一步明显就是具备无线功能的 Pi Zero。要在最初的 Pi Zero 中添加联网功能,或是需要增加一个昂贵(与主板价格相比)且布局复杂的 USB OTG 适配器以及 USB WiFi 加密锁,或是要 绕过 USB WiFi 加密锁的内部机制...阅读全文

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

下一代时间同步服务 Chrony 详解

定期轮询,因此具备间歇性网络连接的系统仍然可以快速同步时钟。 安装 Chrony 从 Centos 7.x 开始的最小发行版中都已经预装并了 Chrony。如果你的系统上没有安装 Chrony,你也可以使用下面的命令轻松安装它。 $ apt -y install chrony # [On Debian/Ubuntu] $ yum -y install chrony # [On CentOS/RHEL] 安装完成后,你可以使用以下命令来检查 chronyd 的状态。 $ systemctl status chronyd # [On SystemD] $ /etc/init.d/chronyd status # [On Init] 如果要在开机引导时自动启用 Chrony 的守护程序,你可以...阅读全文

博文 2021-01-04 08:41:14 debian.cn

Kubernetes 部署 Nacos 1.4 集群 · 小豆丁

。 输入用户名/密码: nacos/nacos ,登录 Nacos 后会看到如下页面: 六、Nacos 变量参数及其说明 Nacos 提供了很多可以配置的参数,以环境变量的方式让我们进行配置,部分参数如下所示: 参数名称 默认值 参数描述 SERVER_SERVLET_CONTEXTPATH /nacos 指定 Nacos 服务前缀。 NACOS_APPLICATION_PORT 8848 指定 Nacos 端口。 TOMCAT_ACCESSLOG_ENABLED false 是否访问日志。 SPRING_DATASOURCE_PLATFORM 指定数据库平台,目前只支持 mysql。 MYSQL_DATABASE_NUM 1 数据库数量。 MYSQL_SERVICE_HOST 指定数据库主...阅读全文

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

阿里巴巴版 JDK 首发 GA 版 生产环境可用

某些测试用例,启动阶段跑分会有 10% 的提高。该特性在阿里巴巴的双 11 抢购场景中得到了大量验证。目前,阿里巴巴正在社区努力推进,希望通过 JEP 的方式将该功能推到上游 OpenJDK 社区。 下图是阿里一个应用在“双十一”期间使用 JWarmUp 时的效果: 说明:图中蓝线是正常启动 (默认分层编译),红线是启用 JWarmUp 的 CPU 使用率。 (1)是了 JWarmUp 选项,在应用启动时候,流量进来之前积极加载和编译方法。(2)是流量进来的时刻。(3)是正常模式启动下,CPU 消耗 100% 维持了 70s。(注:作图省略了一部分数据)(4)对应的绿线是稳定后 CPU 的使用率。 可以看到应用 JWarmUp 后在流量进来的时候 JWarmUp 可以减少大量 CPU...阅读全文

博文 2019-07-11 10:24:52 debian.cn

深入理解Golang之context

cancelCtx取消时,会将后代节点中所有的cancelCtx都取消,propagateCancel即用来建立当前节点与祖先节点这个取消关联逻辑。如果parent.Done()返回nil,表明父节点以上的路径上没有可取消的context,不需要处理;如果在context链上找到到cancelCtx类型的祖先节点,则判断这个祖先节点是否已经取消,如果已经取消就取消当前节点;否则将当前节点加入到祖先节点的children列表。否则一个协程,监听parent.Done()和child.Done(),一旦parent.Done()返回的channel关闭,即context链中某个祖先节点context被取消,则将当前context也取消。这里或许有个疑问,为什么是祖先节点而不是父节点?这是因为当前...阅读全文

博文 2021-01-27 09:05:27 知乎

Kafka生产问题总结以及性能优化

定要配置重试要根据业务情况而定。也可以用同步发送的模式去发消息,当然acks不能设置为0,这样也能保证消息发送的有序。 kafka保证全链路消息顺序消费,需要从发送端开始,将所有有序消息发送到同一个分区,然后用一个消费者去消费,但是这种性能比较低,可以在消费者端接收到消息后将需要保证顺序消费的几条消费发到内存队列(可以搞多个),一个内存队列一个线程顺序处理消息。 如果为了性能好,不允许所有消息只在同一个分区,同时又要保证顺序消费,那么可以给每条消息加一个下标,当消费者拿到消息后先不急着消费,而是先判断下标,然后根据下标以此进行消费; 2.1.4 消息积压 1)线上有时因为发送方发送消息速度过快,或者消费方处理消息过慢,可能会导致broker积压大量未消费消息。 此种情况如果积压了上百万未...阅读全文

博文 2023-01-05 23:16:48 CSDN博客

说透IO多路复用模型_京东云开发者的博客

,会获取到此套接字的文件描述符。 然后,bind到指定的地址进行监听listen。这样,服务端就在特定的端口启动起来并进行监听了。 之后,利用accept方法来监听客户端的连接请求。一旦有客户端连接,则将获取到当前客户端连接的connection文件描述符。 双方建立连接之后,就可以进行数据互传了。需要注意的是,在循环开始的时候,务必每次都要重新设置当前connection的文件描述符,是因为文件描描述符表在内核中被修改过,如果不重置,将会导致异常的情况。 重新设置文件描述符后,就可以利用select函数从文件描述符表中,来轮询哪些文件描述符就绪了。此时系统会将用户态的文件描述符表发送到内核态进行调整,即将准备就绪的文件描述符进行置位,然后再发送给用户态的应用中来。 用户通过...阅读全文

博文 2023-01-01 15:13:50 CSDN博客

开源社区纠纷不断:20 年的 Debian 开发者被排挤出项目

欺负项目成员3 月 8 日,外媒通过电子邮件联系了现任领导人 Jonathan Carter,就他对 Preining 问题的看法进行咨询,但没有收到任何回复。而据报道,目前 2022 Debian 项目负责人选举已,三位候选人:Felix Lechner、Hideki Yamane 和 Jonathan Carter 正在竞选。3 月 9 日,发送给 Carter 的邮件被转到 Debian 新闻团队和项目负责人手中 ,新闻团队的一位发言人回应说:“目前我们没有关于 Norbert Preining 的声明。”Preining 表示,基本上发生的事情是 DAM 认为他在欺负该项目的成员。DAM 是 Debian 客户经理团队,可以批准和开除项目成员。“我猜他们指的是我与 Martina...阅读全文

Kubernetes 1.9发布:Apps Workloads通用版本与生态系统扩展

我们很高兴在今年之内进行第四次——也是最后一次版本更新公告,即Kubernetes 1.9的诞生! 今天发布的版本在发展水平方面更加突出,功能越来越丰富,稳定性更为强大,社区贡献也更加令人瞩目。作为今年年内的第四次成果发布,我们希望借此机会回顾Kubernetes项目在各个关键性领域取得的进展。其中特别值得一提的是Apps Workloads API正式发布通用稳定版。这将确保潜在用户切实获得运行关键性任务工作负载时所必需的功能稳定性。项目的另一大重要里程碑则在于以测试版本形式提供Windows支持能力,这为众多仅面向Windows的应用程序与工作负载了一扇通往Kubernetes的大门,从而显著扩展了Kubernetes的实施场景与企业就绪水平。 Workloads API通用版本...阅读全文

博文 2017-12-17 01:00:00 debian.cn

Gitlab CI 配置文件 .gitlab

。CI_COMMIT_REG_NAME就是一个很好的例子,它的值表示用于构建项目的分支或tag名称。除了在.gitlab-ci.yml中设置变量外,还有可以通过GitLab的界面上设置私有变量。 更多关于variables。 cache Gitlab Runner v0.7.0 开始引入。 cache用来指定需要在job之间缓存的文件或目录。只能使用该项目工作空间内的路径。 从GitLab 9.0开始,pipelines和job就默认了缓存 如果cache定义在jobs的作用域之外,那么它就是全局缓存,所有jobs都可以使用该缓存。 缓存binaries和.config中的所有文件: rspec: script: test cache: paths: - binaries/ - .config 缓存git中没有被跟踪的文件...阅读全文

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

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

= 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

技术部门的 SEO 规范

robots 文件禁止搜索引擎抓取。未完成内容的网站、栏目不得上线。不存在页面必须返回 404 代码。每个月使用线上工具确认不存在页面服务器头信息。服务器 gzip 压缩。4XX、5XX 类服务器头信息不正常增多,及时通知SEO部门进行进一步检查。新站一律使用 https。开通子域名,需与 SEO 部门提前沟通并获得同意。 网站结构和URL URL一经确定上线,不得在没有得到SEO部门同意和提供对应机制的情况下,对URL做任何改动。除了已规划禁止搜索引擎抓取和收录的内容外,网站所有URL一律静态化。站内搜索结果页面使用robots文件禁止搜索引擎抓取。网站栏目与URL目录需一一对应,一级分类对应一级目录,二级分类对应二级目录。最多分级至二级目录,如果产品/页面数需要三级以上分类,请先与SEO部门沟...阅读全文

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

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

资源,从而获取虚拟货币的一种程序,需要较高的硬件配置及用电量。 而单凭一个矿工的力量是挖不到比特币的。于是“安某”便想到可以利用自己的职务之便利用百度的服务器来自己的发家致富之路,只是他可能没想到的是事情会败露的这么快。 那么,他具体是怎么做的呢? 首先,他用自己的工作账户上传了一个压缩文件 miner.tar.gz ,其中包含一个名为 java_4u3 的脚本, 而这个脚本可以自动执行解压缩、创建目录、删除目录、自动连接代理进行网络交换,达到控制服务器的目的。 然后,编译了一个挖矿程序,并将上述程序部署非法控制了百度的 155 台服务器上,利用公司为其配备的苹果电脑上的 iterm 软件控制所有服务器的中控机,通过中控机上传挖矿脚本,并通过 iterm 软件发出批量下载指令,让 200...阅读全文

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

利用 NAT VPS 进行流量中转

过 iptables 实现 IP 端口数据包转发服务配置关于 NAT VPS 的使用说明NAT VPS 的正确食用方式NAT VPS 主机端口转发(流量中转)教程国内中转高性价比方案:NAT VPS + iptables 端口流量转发通过国内服务器转发流量Ubuntu UFW 防火墙设置Setup a Shadowsocks relay在 Azure 搭建 ShadowSocks 国内跳板,并 UDP 转发UFW Essentials: Common Firewall Rules and CommandsHow To Setup a Firewall with UFW on an Ubuntu and Debian Cloud ServerConfigure Uncomplicated...阅读全文

博文 2021-03-11 21:16:11 Silearner

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

该数据的主体而仅仅是同步过来的备份,那么可以关闭Redis的数据持久化机制。 但通常来说,仍然建议至少RDB方式的数据持久化,因为: RDB方式的持久化几乎不损耗Redis本身的性能,在进行RDB持久化时,Redis主进程唯一需要做的事情就是fork出一个子进程,所有持久化工作都由子进程完成 Redis无论因为什么原因crash掉之后,重启时能够自动恢复到上一次RDB快照中记录的数据。这省去了手工从其他数据源(如DB)同步数据的过程,而且要比其他任何的数据恢复方式都要快 现在硬盘那么大,真的不缺那一点地方 RDB 采用RDB持久方式,Redis会定期保存数据快照至一个rbd文件中,并在启动时自动加载rdb文件,恢复之前保存的数据。可以在配置文件中配置Redis进行快照保存的时机...阅读全文

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

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

,CPU持续上升到99% 5分钟内,大量应用报警,并且拒绝服务,RDS的监控显示出现大量慢SQL,联系服务器数据库提供商进行协助 8分钟内,进行数据库主备切换(业务会受损,但是也没办法,没有定位到问题) 9分钟内,部分业务恢复,但是一些业务订单的回调消息堆积超过20w,备库的CPU使用率也持续上升 15分钟内,备库CPU使用率超过97%,业务再次中断,进行切回主库,并进行限流 20分钟内,关闭一些次要应用的流量入口 25分钟内,主库CPU使用率恢复正常 30分钟内,逐步关闭的限流应用 35分钟内,所有应用恢复正常 接下来就是与服务器数据库提供商成立应急小组紧急优化可能出现的慢SQL,虽然说可能解决了一些慢SQL,但此次并没有定位到具体的问题,也就为几天后再次发生宕机事件埋下了伏笔 事故影响 某...阅读全文

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

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

。 syncLoop收到pleg channel传来事件后,进入相应的sync同步处理流程。对于PLEG事件来说,对应的处理函数是HandlePodSyncs。这个函数一个新的pod worker goroutine,获取pod最新的podCache信息,然后进入真正的同步操作:syncPod函数。 syncPod将podCache中的pod最新状态信息(podStatus)转化成Kubernetes API PodStatus结构。这里值得一提的是,syncPod会通过podCache里各个容器的状态,来计算出Pod的状态(getPhase函数),比如Running,Failed或者Completed。然后进入Pod容器运行时同步操作:SyncPod函数,即将当前的各个容器状态与Pod API定义的...阅读全文

“Debian 章程有毒” - OSCHINA

1996年,Bruce Perens 接下了 Debian 创始人 Ian Murdock 的接力棒,成为 Debian 社区历史上第二位当家人。也就在这一年,不满20岁的 Joey Hess 为了满足自己打包游戏的爱好成为了 Debian 成员之一。 某天,加利福尼亚州的阳光正好,旧金山湾区(硅谷所在地)的某一角落,Bruce Perens 敲响了 Joey —— 这位刚来此地工作的年轻人的大门。 “I’m going to take you on a tour of the Bay Area. ” 他们开着车随意地在湾区闲逛,当经过各大科技公司时,也会聊上两句。这次兜风是 Joey 第一次和社区的人面基,从此了 Joey 通往这个全新世界的大门,而 Bruce Perens 这位大...阅读全文

博文 2021-12-06 13:55:33 中文开源技术交流社区

Docker 核心原理

vethxxx 这样的名字命名,从而将宿主机上的所有容器都连接到这个内部网络上。虚拟网桥的工作方式和物理交换机类似,这样主机上的所有容器就通过交换机连在了一个二层网络中。 容器访问外部网络 请求通过 veth pair 到达 docker0 处,docker0 网桥了IP forwarding功能,将请求发送至宿主机eth0; 宿主机处理请求时,使用 SNAT 规则,将源地址替换成了宿主机 ip,然后把报文转发出去 外部访问容器 docker run -p 时,docker 实际是在 iptables 做了DNAT规则,实现端口转发功能。 1 2 3 4 5 # iptables -t nat -L Chain DOCKER (2 references) target prot opt source...阅读全文

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

译:零信任对 Kubernetes 意味着什么

Foundation 毕业的服务网格项目,它提供了一个以简单性为目标和重点的实现,直接从 Kubernetes ServiceAccounts 提取工作负载标识来达到“零配置”,默认双向 TLS。同样,Linkerd 的基于 Rust 的微代理提供了一个极简的零信任实现。当然,仅仅在集群中添加一个服务网格并不是万能的。安装后,必须完成定义、更新和评估授权策略的工作。集群运维人员必须小心确保所有新创建的 pod 都与它们的 sidecar 组件配对。当然,服务网格本身必须像集群上的任何软件一样进行维护、监控和迭代。然而,不管是不是灵丹妙药,服务网格确实提供了从集群中默认的未加密、未经身份验证的流量转变为具有强大工作负载身份和丰富授权系统的默认加密、经过身份验证的流量——这是朝着零信任迈出的一大步。总结零信任...阅读全文

Apache Kafka发布 3.0 正式版

生成在 3.0 和KIP-730 中,Kafka 控制器现在完全接管了生成 Kafka 生产者 ID 的责任。控制器在 ZK 和 KRaft 模式下都这样做。这让我们更接近桥接版本,这将允许用户从使用 ZK 的 Kafka 部署过渡到使用 KRaft 的新部署。KIP-679:Producer 将默认启用最强的交付保证从 3.0 开始,Kafka 生产者默认幂等性和所有副本的交付确认。这使得默认情况下记录交付保证更强。KIP-735:增加默认消费者会话超时Kafka Consumer 的配置属性的默认值session.timeout.ms从 10 秒增加到 45 秒。这将允许消费者在默认情况下更好地适应暂时的网络故障,并在消费者似乎只是暂时离开组时避免连续重新平衡。KIP-709:扩展...阅读全文

博文 2021-09-26 14:13:03 joseph

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

眼光羡慕别人。 于是在工作一年半的时候,选着了裸辞,其实还是很佩服自己,因为多数人都是骑驴找马。多数时候是招聘 3、5、8 年经验的人。但是,当你顾虑越多的时候,越容易失败。 所以,找到你的追求,然后就去追去。 失败不可怕,需要对自己、未来充满信心 当时的我真的很弱,但是我就是想找个地方提升自己的技术,提升自己的价值。 刚好有个朋友是阿里 B2B 的,当时也没有太多关注阿里,也不知道阿里到底有哪些子公司。但是,我的朋友,热心的说:“要不要我帮你内推试试?”,我就是抱着试一试的心态,想去尝试下,知道阿里的技术强,但是到不到阿里的要求。 于是了我奇葩的入职阿里经历。 第一次面试,阿里 B2B 的岗位,就有很多知识不知道,面试官问了一致性 hash,那个年代的我,哪里知道。不过面试官还是和我聊...阅读全文

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