Debian 爱好者社区 为您找到相关结果 828

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

Chrony 是一个多功能的 NTP (Network Time Protocol) 实现,类 Unix 系统上 NTP 客户端和服务器的替代品。它可以通过 NTP 服务或者类似 GPS 钟接收器的硬件级参考钟来系统钟,具有更好的钟准确度,并且对于那些歇性互联网连接的系统很有帮助。Chrony 是免费开源的,并且支持 GNU/Linux 和 BSD 衍生版、Solaris 等。 Chrony 有两个核心程序:一个是 chronyd 守护进程,主要用于调整内核中运行的系统服务器。它确定计算机增减的比率,并对此进行调整补偿。另一个是 chronyc,它提供一个用户界面,用于监控性能并进行多样化的配置。chronyc 可以在 chronyd 实例控制的计算机上工作...阅读全文

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

Django 3.0 发布第一个版本 开始支持异步功能

Django 3.0 发布了第一个版本3.0a1,正式版版本将于今年12月份发布。3.0版的Django带来了一些新特性,其中最值得关注的应当是其开始支持异功能。 django路线图 此前有草案提出要 让 Django 支持异 。聚集于 HTTP 中件视图和 ORM,开发者要在 Django 中添加异支持,维护对 Python 的支持,并且将完全向后兼容。 该设想最终会替换掉 Django 中的大多数阻塞部分,包括 Session、Auth、ORM 与 Handlers 等,使其 原生支持异 。而 API 将继续存在并得到完全支持,其中一些最终将转变为原生异代码的包装器。 ASGI 模式将 Django 作为原生异应用程序运行,原有的 WSGI 模式将围绕每个...阅读全文

博文 2019-09-13 07:21:28 debian.cn

RabbitMQ 高可用实现镜像队列

于单点失效是有弹性的,但是也需要注意:尽管 exchange 和 binding 能够在单点失效问题上幸免于难,但是 queue 和其上持有的 message 却不行,这是因为 queue 及其内容仅仅存储于单个节点之上,所以一个节点的失效表现为其对应的 queue 不可用。 举例说明,如果一个 RMQ 集群由三个节点组成(RMQ集群节点的模式也是有讲究的,一般三个节点会有一个 RAM,两个 DISK),exchange、bindings 等元数据会在三个节点之,但 queue 上的消息是不会的,且不特殊设置的情况下,Queue 只会在一个节点存在。 可能有的学会提另一个问题,我从三个 RMQ 节点的监控面板,都可以看到这个 Queue?这个是对的,这是由于 Queue 的元...阅读全文

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

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

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

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

PostgreSQL 增量同步方案设计

# PostgreSQL 增量方案详细设计 ## 一:方案目的 通过PG实例的增量数据方案,解决PG在数据迁移中需要进行全量,需要长停服务的问题. 通过该方案,打通PG和其他数据产品的数据通道,做到PG和其他数据产品和异构数据库的实. ## 二:增量方案的技术背景 该方案基于PostgreSQL 9.4版本的逻辑流复制技术. PG9.4 可以做到,利用逻辑流复制,把表的增量数据,以自定义格式的形式组织起来被客户端订阅. 自定义格式的增量数据是逻辑流复制的关键,通过PG内核给出了开放的接口(5个回调函数),可以把增量数据以任意的形式输出. PG的客户端根据需要按照服务端规定的格式解析,就能得到完整的增量数据. ## 三:订阅增量数据的订阅规则 PG增量方案...阅读全文

博文 2025-03-13 10:41:48 joseph

在 Kubernetes 上扩展 TensorFlow 模型

由于人工智能 / 机器学习日益集成到应用和业务流程中,因此生产级机器学习模型需要更多可扩展的基础设施和计算能力,以用于训练和部署。 现代机器学习算法在大量数据上进行训练,并且需要数十亿次迭代才能使成本函数最小化。这类模型的垂直扩展会遇到操作系统级别的瓶颈,包括可提供的 CPU、GPU 和存储的数量,而且对于这种类型的模型,已经证明效率并不高。更为高效的并行处理算法,例如异训练和 allreduce 式训练,需要一个分布式集群系统,由不的 worker (工作器)以协调的方式学习。 可扩展性对于在生产环境中服务深度学习模型也非常重要。将单个 API 请求处理到模型预测端点可能会触发复杂的处理逻辑,这将花费大量。由于更多用户访问模型的端点,为了有效地处理客户端请求,需要更多服务实例...阅读全文

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

和流程。 kubelet是kubernetes集群中Node节点的工作进程。当一个Pod被kube-sheduler成功调度到Node节点上后, kubelet负责将这个Pod创建出来,并把它所定义的各个容器启动起来。kubelet也是按照控制器模式工作的,它的工作核心是一个控制循环,源码中称之为syncLoop,这个循环关注并处理以下事件: Pod更新事件,源自API Server;Pod生命周期(PLEG)变化, 源自Pod本身容器状态变化, 例如容器的创建,开始运行,和结束运行;kubelet本身设置的周期(Sync)任务;Pod存活探测(LivenessProbe)失败事件;定的清理事件(HouseKeeping)。 在上文描述的CronJob任务中, 每次运行Job任务都会创...阅读全文

如何在一个U盘上安装多个Linux发行版

U 盘上安装多个 Linux 发行版的方式呢?我们将在本教程中看到如何做到这一点。 如何创建有多个 Linux 发行版的可启动 USB 我们有一个工具正好可以做到在单个 U 盘上保留多个 Linux 发行版。你所需要做的只是选择要安装的发行版。在本教程中,我们将介绍如何在 U 盘中安装多个 Linux 发行版用于现场会话live session。 要确保你有一个足够大的 U 盘,以便在它上面安装多个 Linux 发行版,一个 8 GB 的 U 盘应该足够用于三四个 Linux 发行版。 骤 1 MultiBootUSB 是一个自由、开源的跨平台应用程序,允许你创建具有多个 Linux 发行版的 U 盘。它还支持在任何候卸载任何发行版,以便你回收驱动器上的空用于另一个发行版。 下载...阅读全文

博文 2017-10-18 13:42:20 debian.cn

得物云原生全链路追踪Trace2.0-采集篇 - OSCHINA

的调用链路通常复杂多变,站在流量角度上看,需要完整地知道它的来源,上下游链路,异调用等等,这对于 CAT 来说可能略显超纲。 缺少图表定制化能力: CAT 虽供多维度报表分析,但定制化能力非常有限,在当,业内的图表组件定制化解决方案逐向 Grafana + Prometheus 靠拢,但若使用 CAT,则无法享受强大的图表绘制能力。与此,随着云原生社区可观测性项目 OpenTracing 的崛起,大约不到半年我们逐下线了 CAT,向 OpenTracing 生态演进。 三、 0x02 第二阶段 持续创造 基于OpenTracing全链路采样监控 OpenTracing 为全链路追踪 Trace 定制了完整的一套协议标准,本身并不提供实现细节。在 OpenTracing 协议中...阅读全文

博文 2022-12-10 06:50:41 中文开源技术交流社区

架构师详解 Nginx 架构

主进程(master process)生成一个子进程(worker process)出来和客户端建立连接进行交互,直到连接断开,该子进程就结束了。使用进程的好处是各个进程之相互独立,不需要加锁,减少了使用锁对性能造成影响,降低编程的复杂度,降低开发成本。其次,采用独立的进程,可以让进程互相之不会影响,如果一个进程发生异常退出,其它进程正常工作,master 进程则很快启动新的 worker 进程,确保服务部中断,将风险降到最低。缺点是操作系统生成一个子进程需要进行内存复制等操作,在资源和上会产生一定的开销;当有大量请求,会导致系统性能下降。 异非阻塞 每个工作进程使用异非阻塞方式,可以处理多个客户端请求。当某个工作进程接收到客户端的请求以后,调用 IO 进行处理,如果不能...阅读全文

博文 2018-05-01 23:10:47 debian.cn

Linux Lite 宣布使用基于 Linux Kernel 4.14 的内核

系统菜单中的 Lite Tweaksv 工具,选择“Kernel Installer”功能来安装更新,样在安装完成之后需要重启你的电脑。 Linux Kernel 4.14 LTS 的主要功能就是为 x86 硬件部署了更大的存储限制,虚拟地址空提升至 128PiB,物理硬件空提升至 4PiB。此外还引入了全新的 ORC unwinder 来改进内核追踪和内核尺寸。 Linux Kernel 4.14 LTS 为 Btrfs 和 SquashFS 文件系统引入了 zstd 压缩,能够从用户存储到 sockets 实现 zero-copy 数据,改进 SMP 的 cpufreq 协调, non-blocking buffered 读取,以及对 PCID 指令更快的 TBL 刷新。...阅读全文

Proxmox VE 6.2发布 开源虚拟机平台

VE 对所有对象(例如 VM、storage、nodes 等)使用基于角色的用户和权限管理。新的 LDAP 使 LDAP 用户和组到 Proxmox 用户和组权限框架中。添加了对 API 令牌的全面支持和集成,从而允许其他系统、软件或 API 客户端对REST API 的大部分进行无状态访问。API 令牌可以为单个用户生成,并且可以选择配置单独的权限和到期日期以限制访问的范围和持续。如果 API 令牌遭到破坏,则可以撤销该令牌,而不必禁用用户本身。 进一的显着增强: QEMU/KVM:已启用对复制磁盘的实迁移(使用 zfs 进行存储复制)的支持。由于简化了卸载过程,因此测试 Ceph 存储变得更加容易。 下载地址:https://www.proxmox.com...阅读全文

博文 2020-05-18 19:18:30 debian.cn

细数k8s支持的4种类型的container - 侃豺小哥

。由于这种模块化,您只需编写和测试git器一次,即可在众多应用程序中重复使用它。而且,如果有人编写它,您甚至不需要这样做。 实现辅助功能 。这种场景一般出现在DevOps中。比如将收集日志的组件以Sidecar的方式部署,实现收集日志的用途,或是部署一个Sidecar组件从配置中心监听配置变化,实更新本地配置。 生命周期 Sidecar容器的所有问题都与容器生命周期相关性有关。由于Pod中的常规容器之没有区别,因此无法控制哪个容器首先启动或最后终止,但是先正确运行Sidecar容器通常是应用程序容器正确运行的要求。 从1.18版本开始,K8S内置的Sidecar功能将确保Sidecar容器在正常业务流程开始之前就启动并运行,即通过更改pod的启动生命周期,在init容器完成后启动...阅读全文

博文 2021-08-20 11:45:32 博客园

深度解密基于 eBPF 的 Kubernetes 问题排查全景图

一、当 Kubernetes 成为云原生事实标准,可观测性挑战随之而来当前,云原生技术以容器技术为基础,通过标准可扩展的调度、网络、存储、容器运行接口来提供基础设施。,通过标准可扩展的声明式资源和控制器来提供运维能力,两层标准化推动了开发与运维关注点分离,各领域进一提升规模化和专业化,达到成本、效率、稳定性的全面优化。在这样的大技术背景下,越来越多的公司引入了云原生技术来开发、运维业务应用。正因为云原生技术带来了越发纷繁复杂的可能性,业务应用出现了微服务众多、多语言开发、多通信协议的鲜明特征。,云原生技术本身将复杂度下移,给可观测性带来了更多挑战:​1、混沌的微服务架构,多语言和多网络协议混杂业务架构因为分工问题,容易出现服务数量多,调用协议和关系非常复杂的现象,导致的常见问题...阅读全文

博文 2022-03-21 09:11:51 joseph

Intel 再曝“幽灵”类漏洞:二四六代酷睿受影响

Bridge处理器、四代Haswell处理器和六代Skylake处理器都未能对该漏洞免疫。目前研究人员对AMD处理器的实验还在进行中。 不过与先前CTS-Labs实验室不,这几位研究者已于更早些发现了漏洞,但他们给予了英特尔充足的,到最近才将其发表。 研究人员认为,BranchScope是目前首个良好的、直接攻击分支预测单元的手段。对分支预测单元在信道攻击上的漏洞,BranchScope扩展了处理器领域对此的认知。 他们认为,现存的安全补丁和微码更新智能防护部分来自BranchScope的攻击,但还需要进一的措施才能完全免疫。但是英特尔则对漏洞的危害状况保持着乐观的态度。 英特尔表示:“我们一直在与这些研究人员合作,并已确定他们描述的问题与先前的信道攻击相似。因此我们认为,现有的软件修复方...阅读全文

博文 2018-03-30 08:48:47 debian.cn

提问的智慧(精简版)

遇到问题,当然应该大胆提问!但绝对不是随便截个图丢给其他人,等待解决方案。原文请见 提问的智慧 (How To Ask Questions The Smart Way) 。这篇文章对于社区提问给出了很多建议,现作要点精简如下。请你做到完成了 RTFM (Read The Fucking Manual) 和 STFW (Search The Fucking Web) 两个骤。通常,用这两句之一回答你的人会给你一份包含你需要内容的手册或者一个网址,而且他们打这些字的候也正在读着。这些答复意味着回答者认为你需要的信息非常容易获得;你自己去搜索这些信息比灌给你,能让你学到更多。按发生先后列出问题症状问题发生前的一系列操作,往往就是对找出问题最有帮助的线索。因此,你的说明里应该包含你的操作...阅读全文

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

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

Redis使用的最大内存: maxmemory 100mb 在内存占用达到了maxmemory后,再向Redis写入数据,Redis会: 根据配置的数据淘汰策略尝试淘汰数据,释放空 如果没有数据可以淘汰,或者没有配置数据淘汰策略,那么Redis会对所有写请求返回错误,但读请求仍然可以正常执行 在为Redis设置maxmemory,需要注意: 如果采用了Redis的主从,主节点向从节点数据,会占用掉一部分内存空,如果maxmemory过于接近主机的可用内存,导致数据内存不足。所以设置的maxmemory不要过于接近主机可用的内存,留出一部分预留用作主从。 数据淘汰机制 Redis提供了5种数据淘汰策略: volatile-lru:使用LRU算法进行数据淘汰(淘汰上次使用...阅读全文

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

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

记录的更改)。在我们的例子中,控制器通过一个 Informer 注册一个创建事件的特定回调函数(更多信息参加下文)。 当 Deployment 第一次对外可见,该 Controller 就会将该资源对象添加到内部工作队列,然后开始处理这个资源对象: 通过使用标签选择器查询 kube-apiserver 来检查该 Deployment 是否有与其关联的 ReplicaSet 或 Pod 记录。 有趣的是,这个过程是状态不可知的,它核对新记录与核对已经存在的记录采用的是相的方式。 在意识到没有与其关联的 ReplicaSet 或 Pod 记录后,Deployment Controller 就会开始执行弹性伸缩流程: 创建 ReplicaSet 资源,为其分配一个标签选择器并将其版本号设置...阅读全文

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

Facebook 正式发布 JavaScript 包管理器 Yarn 1.0

Workspaces) 越来越多的科技公司开始采用单体仓库模式(mono-repository — 方便跨项目共享代码,避免依赖问题)来进行代码控制,这种模式也正逐渐被开源社区和一些小型公司所采纳。 因此,Yarn 增加了一个新特性 ——工作区。工作区可以自动从多个 package.json 中收集所有的依赖项,并一次性将它们安装完毕。项目根目录下会生成一个独立的 yarn.lock 来锁定这些文件。此外,如果多个工作区之存在依赖,Yarn 会为它们创建链接,这样所有的项目就可以始终共享最新的代码。 自动合并 yarn.lock 文件 (Auto-merging of lockfiles) 多个开发者在开发一个项目,可能会需要更新包依赖,从而导致 yarn.lock 文件出现冲突。如果只有一两个...阅读全文

博文 2017-09-19 14:43:15 debian.cn

如何在 Debian 中安装 DHCP 服务器

动态主机配置协议(DHCP)是一种用于使主机能够从服务器自动分配 IP 地址和相关的网络配置的网络协议。DHCP 服务器分配给 DHCP 客户端的 IP 地址处于“租用”状态,租用通常取决于客户端计算机要求连接的或 DHCP 服务器配置的。 DHCP 如何工作? 以下是 DHCP 实际工作原理的简要说明: 一旦客户端(配置为使用 DHCP 的机器)连接到网络后,它会向 DHCP 服务器发送DHCPDISCOVER数据包。 当 DHCP 服务器收到DHCPDISCOVER请求报文后会使用DHCPOFFER包进行回复。 然后客户端获取到DHCPOFFER数据包,并向服务器发送一个DHCPREQUEST包,表示它已准备好接收DHCPOFFER包中提供的网络配置信息。 最后,DHCP...阅读全文

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

Debian系统如何从 Jessie 升级为 Stretch

Debian 9(代号为 Stretch)当前为测试阶段,代码已进入开发的最后阶段并已冻结,预计 Stretch RC1 的发布为四月底,正式版大约在七月底左右发布。 目前作为个人用的VPS主机,可以开始尝鲜 Debian 9了。 当前 VPS 提供商还不提供 Debian 9 的镜像,如何直接从 Debian 8 升级到 Debian Stretch? 接下来就一为大家介绍 Debian 的垮镜像升级的一般骤。操作前请务必妥善备份现有系统,做好异地备份或者离线备份。 升级前准备: 备份当前系统的数据 这类大操作都是有风险,所以我们先做好最坏的打算:如果系统升级后完全不可用,我们怎么办? 创建备份,并且到异地。 一般的VPS环境,需要备份的文件有几大类,Web服务器配置文件...阅读全文

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

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

的比如Mysql不一样的是,Kafka中只有Leader副本会对外提供服务,Follower副本只是单纯地和Leader保持数据,作为数据冗余容灾的作用。在Kafka中我们把所有副本的集合统称为AR(Assigned Replicas),和Leader副本保持的副本集合称为ISR(InSyncReplicas)。ISR是一个动态的集合,维持这个集合会通过replica.lag.time.max.ms参数来控制,这个代表落后Leader副本的最长,默认值10秒,所以只要Follower副本没有落后Leader副本超过10秒以上,就可以认为是和Leader的(简单可以认为就是差)。另外还有两个关键的概念用于副本之:HW(High Watermark):高水位,也叫...阅读全文

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

谷歌开源更快更高效的 TensorFlow 运行时 TFRT

TensorFlow 官方博客宣布开源新的运行 TFRT,该运行提供了统一的、可扩展的基础结构层,并在各类硬件上均具有高性能。 TFRT 产品经理 Eric Johnson 表示,TFRT 将取代现有的 TensorFlow 运行。原有的 TensorFlow 运行最初是为图形执行和训练模型的工作负载而构建的。与之相比,新的运行将急切的执行需求放在第一位,特别强调架构的可扩展性和模块化。 它能够很好地满足开发复杂模型寻求更快迭代的开发者需求、在训练和服务生产模型改进性能的需求,以及希望以模块化方式将边缘和数据中心设备集成到 TensorFlow 中的硬件制造商需求。 简单来讲,TFRT 可以减少开发、验证和部署企业级模型所需的。 TFRT 利用了 eager 和图...阅读全文

博文 2020-05-01 09:30:31 debian.cn

高性能日志采集工具 logpipe 简单介绍

日志文件增长,某些应用会在目标目录下产生多个日志文件甚至现在不能确定将来的日志文件名,架构上要支持多输入多输出流式日志采集传输,为了达成以上需求,我研究了所需技术,评估实现难度并不高,就自研了 logpipe。 logpipe 是一个分布式、高可用的用于采集、传输、对接落地的日志工具,采用了插件风格的框架结构设计,支持多输入多输出按需配置组件用于流式日志收集架构,无第三方依赖。 logpipe 的一种用法是能异监控集群里的所有日志目录,一旦有文件新增或追加写,立即采集并传输到大存储上以相日志文件名合并落地,或者写入 HDFS。异意味着不影响应用输出日志的性能,实意味着一有日志立即采集,很多日志采集工具如 flume-ng、logstash 介绍文档通篇不提采集方式是否实还是周期...阅读全文

深入学习golang — channel

可以提供一个可选的整型参数,用于设置该channel的缓冲区大小。该值缺省为0,用来构建默认的“无缓冲channel”,也称为“channel”。 Channel作为goroutine的一种通信机制,与操作系统的其它通信机制类似,一般有两个目的:,或者传递消息。 2. c := make(chan int) // Allocate a channel. // Start the sort in a goroutine; when it completes, signal on the channel. go func() { list.Sort() c <- 1 // Send a signal; value does not matter...阅读全文

博文 2021-01-25 12:39:17 博客园

粘合万种芯片的“万能胶” 是摩尔定律的续命丹吗? - 硬件

展已经有一段了,但业内一直各自为政,由于没有统一的接口标准,"胶水"芯片生态难建,大公司止不前,小公司也不敢迈出第一。长期以来,摩尔定律的持续演进被视为芯片性能提升的主要途径。经历四十多年的发展,构成芯片的晶体管几乎要缩小到原子级别,不仅面临难以突破的物理极限问题,制程升级的投入产出比也大幅下降,业界开始寻找新的办法提升产品性能,例如,通过改变封装的方式提升晶体管密度。提出摩尔定律的戈登本人也意识到了封装的重要性,他在论文中写道:"事实证明用较小的功能模块构建大型系统可能会更经济,这些功能模块将分别进行封装和互连。"简单来讲,也就是将原先生产好的芯片集成到一个封装中,达到减少产品开发和成本的目的,这些芯片模块可以是不工艺节点,最终通过裸片对裸片的方式连接在一起,这一类似于用胶水...阅读全文

博文 2022-04-08 07:35:46 cnBeta.COM

谷歌公开了内部管理Infra层的两个工具的Paper

:决定使用哪个incarnation作为intentDiff:如果intent和生产环境没有不,循环结束Check:当需要推送,验证现在是否可以推送,如果不能,循环结束Push:基于intent变更基础架构 图9:Enforcer的asset循环 这个循环不会一个接一个地检查每个incarnation,并且不保证每个incarnation都被执行,每个迭代使用最新的incarnation。该方案可以避免卡在受损的incarnation里。相反,有机会可以修复intent,这是自动的。因此,如果某个特定的中状态必须在生产环境中反映,则必须等待强制实施了该状态,之后才能再进一更新intent。 每个asset都是独立的,并且循环对于每个asset来说是独立运行的。但是,我们不会随意推送...阅读全文

博文 2023-01-08 11:23:20 CSDN博客

Google 开源漏洞扫描系统 Tsunami

系统执行两过程: 第一是侦查,在此期,Tsunami 会扫描公司网络中的开放端口。此后,它会测试每个端口并尝试识别在它们上运行的协议和服务,以防止因错误标记端口和测试设备的漏洞所造成的假漏洞。 第二是漏洞验证,在这里 Tsunami 使用通过侦察收集的信息来确认是否存在漏洞。为此,漏洞扫描程序会尝试完整地良性执行这个漏洞。漏洞验证模块还允许通过插件来扩展Tsunami。 在初始版本中,Tsunami 随附了用于以下安全问题的检测器: Exposed sensitive UIs:Jenkins,Jupyter和Hadoop Yarn之类的应用程序附带了UI,这些UI允许用户调度工作负载或执行系统命令。如果这些系统未经身份验证就暴露在Internet上,则攻击者可以利用应用程序的功能来...阅读全文

博文 2020-07-16 10:25:50 debian.cn

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

在使用 git ,如果不是使用ssh 和 key 验证的方式,则每次提交都会让输入用户名和密码,会显得比较麻烦,在服务器上配置也无法做到自动更新代码。那么如何解决这个问题呢?我们这里介绍除 ssh + key 以外的免密码登录方式。在全局中存储用户的账号密码 以 Windows 环境为例,在 %HOME% 目录中,一般为C:\Users\username(也可以是你自己创建的系统用户名目录)目录下,创建.git-credentials 文件。 文件内容为一行,样例如下: https://username:password@git.example.com 注:username对应的 git 服务器的用户名,password 为密码。然后再进入 git bash 中执行, git...阅读全文

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

gRPC 1.23.0 发布,Google高性能 RPC 框架

gRPC 1.23.0 发布了。gRPC 是 Google 开源的高性能、通用 RPC 框架,面向移动和 HTTP/2 设计,是由谷歌发布的首款基于 Protocol Buffers 的 RPC 框架。gRPC 基于 HTTP/2 标准设计,带来诸如双向流、流控、头部压缩、单 TCP 连接上的多复用请求等特性。这些特性使得其在移动设备上表现更好,更省电且节省空占用。 主要更新内容如下: Core 反向移植 #19924 到 v1.23.x. (#19935)为自定义 iomgr 添加缺少的 APP 回调上下文 (#19687)将 DNS 重新解析期的下限提高到 30 秒 (#19661)确保在 H2 的框架中至少有一个标题 (#19657)在使用 gevent 分叉修复段错误...阅读全文

博文 2019-08-18 18:31:20 debian.cn

Apache Kafka发布 3.0 正式版

。此外,不要错过 Kafka Connect 任务重启增强、KStreams 基于的改进以及 MirrorMaker2 更灵活的配置选项。常规变化KIP-750:弃用 Kafka 中对 Java 8 的支持在 3.0 中,Apache Kafka 项目的所有组件都已弃用对 Java 8 的支持。这将使用户有在下一个主要版本 (4.0) 之前进行调整,届 Java 8 支持将被取消。KIP-751:弃用 Kafka 中对 Scala 2.12 的支持对 Scala 2.12 的支持在 Apache Kafka 3.0 中也已弃用。与 Java 8 一样,我们给用户来适应,因为计划在下一个主要版本 (4.0) 中删除对 Scala 2.12 的支持。Kafka 代理、生产者、消...阅读全文

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

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

与 Virtual DOM 融合,Omi 既使用了虚拟 DOM,也是使用真实 Shadow DOM,让视图更新更准确更迅速 99.9% 的项目不需要什么旅行,也不需要旅行调试(Time travel debugging),而且也不仅仅 redux 能旅行,请不要上来就 redux,Omi store 系统可以满足所有项目。 局部 CSS 最佳解决方案(Shadow DOM),社区为局部 CSS 折腾了不少框架和库(使用js或json写样式,如:Radium,jsxstyle,react-style;与webpack绑定使用生成独特的className文件名—类名—hash值,如:CSS Modules,Vue),还有运行注入scoped atrr 的方式,都是 hack 技术...阅读全文

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

Go 泛型草案更新,明年8月Go 1.17引入

作为约束(constraints)使用,可被允许包含类型列表。在旧版的设计草案中,类型列表属于 contracts 的功能。更复杂的情况将使用参数化的 interface 类型. 为了帮助决定如何进一完善设计草案,团队还发布了翻译工具。此工具可用于类型检查,以及运行使用设计草案中描述的泛型版本编写的代码。它通过将泛型代码翻译为普通的 Go 代码来工作。此翻译过程有一定的局限性,不过团队主要是希望借此让大家对 Go 泛型的整体有所了解。如果泛型最终被吸纳,它们的实际实现可能会有所不。 此工具已在 Go playground 的变体上提供,这个 playground 的工作方式与常见的 Go playground 相,不过前者支持泛型代码。团队希望此工具能为 Go 用户提供尝试使用泛型的...阅读全文

博文 2020-06-23 07:40:34 debian.cn

谷歌安全博客披露“ 英特尔内核漏洞 ”更多细节

去年的候,Google 旗下 Project Zero 团队发现了一个由 CPU “ 预测执行 ” 导致的严重安全漏洞,而它也是一项被大多数现代处理器使用的性能优化方案。根据研究人员 Jann Horn 的演示,恶意攻击者可借此读取不该被它访问到的系统内存。某个未经授权的一方,可能在系统内存中读取到一些敏感信息,比如密码、加密密钥、或者在应用程序中打开的其它机密信息。 测试还表明,在一台虚拟机上发起的攻击,甚至能够访问到主机的物理内存。基于此,还可以获取在一主机上、不虚拟机的内存读取访问。 该漏洞影响许多 CPU,包括来自英特尔、AMD、ARM 的芯片,以及搭配运行的设备和操作系统。在获悉这种新型攻击的第一,谷歌安全和产品开发团队就积极动员了起来,以保护自家系统和用户数据。 万幸...阅读全文

博文 2018-01-06 23:38:25 debian.cn

Google Chrome开始加入HTTP/3和IETF QUIC支持

谷歌开始在其Chrome浏览器中实现对HTTP/3的支持,该公司在一篇博客中宣布。此次更新将带来一些额外的性能改进,主要得益于实现了QUIC作为传输协议。互联网工程任务组(或IETF)早在2015年就推出了HTTP/2,它带来的一大改进就是支持复用。 但是,它采用了TCP作为传输协议,以及TCP中的丢失恢复机制,所以丢失的数据包仍然会造成所有活动事务的延迟。通过采用QUIC,HTTP/3可以进一改善传输过程,因为丢失的数据包只会影响到直接受其影响的事务。 谷歌是QUIC的最初开发者,但该协议在IETF手中已经有一段了,现在IETF版本的QUIC与谷歌内部的QUIC有很大不。到目前为止,谷歌只支持自己的QUIC实现,而IETF则还在研究其版本,但现在这种情况正在改变。谷歌表示...阅读全文

博文 2020-10-08 11:16:05 debian.cn

PostgreSQL 13 正式版发布

索引所需的整体空使用率,提高了整体查询性能。 PostgreSQL 13 引入了增量排序,即在查询中较早骤的排序数据可以加速后面骤的排序。此外,PostgreSQL 现在可以使用扩展的统计信息(可通过CREATE STATISTICS访问)来为带有OR子句和IN/ ANY查找列表的查询创建改进的计划。 在 PostgreSQL 13 中,更多类型的聚合查询和分组查询可以利用 PostgreSQL 的高效哈希聚合功能,因为具有大型聚合的查询不必完全放入内存。对分区表的查询也得到了性能提升,因为现在有更多的情况下可以修剪分区和直接联接分区。 优化管理 清理(Vacuuming)是 PostgreSQL 管理的一个重要部分,使数据库在更新和删除行后能够回收存储空。此过程也会带来管理上的...阅读全文

博文 2020-10-04 20:07:23 debian.cn

SourceForge 大改版:全新的 Logo 和界面

一个 GitHub 导入工具,可将您的 GitHub 项目导入到 SourceForge 中,并在 SourceForge 上您的 GitHub 项目文件版本,以便利用这两个平台的优势。SourceForge 表示当开源项目有多个选项可以生存,开源社区会更好地提供服务,而这些选项并不相互排斥。...阅读全文

博文 2018-01-12 13:17:41 debian.cn

Elastic search 6.0.0 正式发布 大量新特性

性就是序列 ID,它允许基于操作的分片恢复。 以前,如果由于网络问题或节点重启而从集群断开连接的节点,则节点上的每个分区都必须通过将分段文件与主分片进行比较并复制任何不的分段来重新。 这可能是一个漫长而昂贵的过程,甚至使节点的滚动重新启动非常缓慢。 使用序列 ID,每个分片将只能重放该分片中缺少的操作,使恢复过程更加高效。 使用排序索引更快查询 通过索引排序,只要收集到足够的命中,搜索就可以终止。它对通常用作过滤器的低基数字段(例如 age, gender, is_published)进行排序可以更高效的搜索,因为所有潜在的匹配文档都被分组在一起。 稀疏区域改进 以前,每个列中的每个字段都预留了一个存储空。如果只有少数文档出现很多字段,则可能会导致磁盘空的巨大浪费。现在,你付出你...阅读全文

博文 2017-11-15 18:11:10 debian.cn

UCloud 叶理灯 谈:Docker、K8S 和 Serverless

使用,帮助他们减少在集群管理和资源整合方面的工作和投入。例如,我们网络能力、存储能力和计算能力的整合,就是让用户享受到原生K8S的好处,避免了很多运维的负担。 公有云的 K8S 处在底层 IaaS 和上层应用之,一方面向下整合IaaS能力,一方面向上托管客户的应用。在整合 IaaS 方面,不改变 K8S原生特性,因为 K8S 本身架构足够开放,例如在我们实现的网络插件,是基于我们 IaaS 的 VPC 网络,让 pod 可以和我们托管区和物理云区域打通,这是我们 IaaS 能力在 K8S 产品上的体现,算是我们的特色之一,但这是在 K8S 体系支持下的插件方式实现的,不影响我们提供原生 K8S;在应用层面,厂商也可以基于 K8S 提供一些周边的功能以帮助用户提高效率,但它和提供一个一致...阅读全文

博文 2019-06-14 08:28:49 debian.cn

TLS1.3 正式版发布 — 特性与开启方式科普

延迟会使人感觉到移动浏览速度很缓慢。不幸的是,数据加密会进一降低连接的速度。而 TLS1.3 有助于改善这种状况。 要向加密网站发送一条消息,你必须首先建立共用密钥。这一过程叫做一次握手。它要求有专门的消息往来于浏览器和网站之。只要你的浏览器连接到一个加密站点,TLS握手就会在后台发生。 对于TLS1.2来说,在请求发送出去之前,需要2次消息往来才能完成握手。通过移动网络访问一个站点,加载会额外增加超过半秒钟。而对于TLS1.3来说,首次握手只需要1次消息往来。这就像把一辆0-60迈加速需10秒的旅行车升级成一辆只需5秒的特斯拉Model S。如果一次连接所需的消息往来耗约100毫秒,那么TLS1.3的速度提升足以让那些反应迟缓(加载超过300毫秒)的站点变得足够快(加载...阅读全文

博文 2018-08-14 14:40:05 debian.cn

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

,它的价值马上就体现出来了。而写一份文档,随着的推移,它的价值才会逐渐体现出来。 你可能只写一次文档,将来它会被阅读上百次、上千次,因为一份好的文档可以在未来替你向别人回答类似下面这些问题。 1. 为什么当是这么决策的? 2. 为什么代码是这样实现的? 3. 这个项目里都有哪些概念? 4. …… 写文档样对于写作者也有非常大的收益: - 帮你构思规范化API: 写文档的过程也是你审视你API的过程,写文档会让你思考你API设计是否合理,考虑是否周全。如果你没法用语言将API描述出来,那么说明你当前的API设计是不合理的。 - 文档也是代码的另一种展现: 比如你两年后回过头来看你写过的代码,如果有注释和文档,你可以很快速理解代码。 - 让你的代码看起来更专业: 我们都有个感觉,只要文档...阅读全文

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

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

=> os.ReadFileTempDir => os.MkdirTempTempFile => os.CreateTempWriteFile => os.WriteFile 与此大家也不需要担心存在破坏性变更,因为有 Go1 兼容性的保证,在 Go1 中 io/ioutil 还会存在,只变更内部的方法调用: func ReadAll(r io.Reader) ([]byte, error) { return io.ReadAll(r) } func ReadFile(filename string) ([]byte, error) { return os.ReadFile(filename) } 大家在后续也可以改改调用习惯。 支持静态资源嵌入 如果我们希望把静态文件编译进 Go 的二进制文件的话,在以往需要借助 go...阅读全文

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

Linux内存buffer和cache的区别

冲区,一个用于存储速度不的设备或优先级不的设备之传输数据的区域。通过缓冲区,可以使进程之的相互等待变少,从而使从速度慢的设备读入数据,速度快的设备的操作进程不发生断。 在Free命令中显示的buffer和cache,它们都是占用内存: buffer : 作为buffer cache的内存,是块设备的读写缓冲区,更靠近存储设备,或者直接就是disk的缓冲区。 cache: 作为page cache的内存, 文件系统的cache,是memory的缓冲区 如果 cache 的值很大,说明cache住的文件数很多。如果频繁访问到的文件都能被cache住,那么磁盘的读IO 必会非常小。...阅读全文

Debian 相比 Ubuntu 有哪些不同之处

序。Ubuntu的标准安装程序被设计成主要为了要求尽量少的用户输入,以便确保安装简单、速度尽可能快。要是你遇到任何问题,可以试试专家模式安装程序,这是Debian安装程序稍稍改头换面的版本。 Debian安装程序显然有其他优先事项。比如说,其图形化版本是GUI,这有别于主要在工具包中的基于文本的安装程序:除了让害怕使用命令行的那些用户感到安心外,没有任何优势可言。 相比之下,Debian之前的声誉是,只要按照在线操作说明,此外每个阶段接受默认设置,通常就可以安装Debian。然而,如果你决定亲自选择,可以在安装过程的每一选择每个设置,这大大增加了安装所需的。Debian安装程序并不是迎合没有经验的用户,而是兼顾所有不水平的用户。它不是很漂亮,但是不用编译自己的程序包,所以你不可能找到...阅读全文

博文 2017-12-22 23:41:07 debian.cn

分布式 NewSQL 数据库 TiDB

,进行 rename table 潜在的问题修复多数据路径配置下进行 rename table 会导致数据丢失的问题修复某些场景下 TiFlash 存储空上报错误的问题修复开启 Region Merge 情况下从 TiFlash 读取潜在的问题ToolsTiDB Binlog修复因为 TiFlash 相关的 DDL job 导致 Drainer 中断的问题 #948 #942BR修复关闭 checksum 情况下,仍然执行 checksum 的问题 #223修复 TiDB 开启 auto-random 或 alter-pk ,增量备份失败的问题 #230 #231 详细更新说明请参考官网说明,点击这里访问 TiDB 的详细文档。...阅读全文

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

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

API收集堆栈跟踪和跟踪内存分配,因而其可以和OpenJDK、Oracle JDK和其他基于HotSpot JVM的Java应用在运行工作。 Github项目链接地址:https://github.com/jvm-profiling-tools/async-profiler Async-profiler可以跟踪以下类型的事件: CPU周期; 硬件和软件性能计数器,如缓存未命中、分支未命中、页面错误、上下文切换等; Java堆中的分配; 满足的锁定尝试,包括Java对象监视器和可重入锁; 支持的平台Linux / x64 / x86 / ARM / AArch64macOS / x64注意:macOS分析仅限于用户空代码。 生成的火焰图,绿色代表用户栈,黄色代表jvm,红色代表内核;横坐标...阅读全文

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

分布式任务调度平台 XXL

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

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

三大浏览器敦促网站管理员更换 SHA–1 认证

的影响,Mozilla在2016年11月初着手在部分beta用户中开展移除SHA-1的beta测试。Firefox默认使用手动安装的认证。 Edge Mircosoft Edge和Internet Explorer 11浏览器将于2017年2月14日停止加载使用SHA-1认证的网站,让用户决定是否忽视无效认证的警告并依然继续访问该网站。样,手动安装的或自签名的SHA-1认证将不会受到影响。 Safari Safari的提供商Apple也开始逐停止使用SHA-1和3DES这类被认为是不安全的算法。在最新版本的macOS中已经可以看到,对于SHA-1签名认证的网站,Safari浏览器将不再显示那个原有的绿色挂锁标志。在Sierra的发行说明中也建议应尽快停止使用SHA-1,但是并未给出更...阅读全文

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

PCIe 6.0完成0.5版本:明年正式版 总带宽256GB/s

计、开发自己的技术和产品。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,可以在单个通道、内封包更多数据,以及低延迟...阅读全文

博文 2020-02-22 22:20:38 debian.cn

Golang 操作 Kafka 样例

partition,又没有设置key,则会采用轮询⽅式,即每次取一小段的数据写入某 个partition,下一小段的写入下一个partition 复制代码 2.1.4. ACK应答机制 producer在向kafka写入消息的候,可以设置参数来确定是否确认kafka接收到数据,这个参数可设置 的值为 0,1,all 0代表producer往集群发送数据不需要等到集群的返回,不确保消息发送成功。安全性最低但是效 率最高。 1代表producer往集群发送数据只要leader应答就可以发送下一条,只确保leader发送成功。 all代表producer往集群发送数据需要所有的follower都完成从leader的才会发送下一条,确保 leader发送成功和所有的副本都完成备份。安全性最⾼高,但是效...阅读全文

博文 2023-01-10 13:46:09 掘金