InfraPub 为您找到相关结果 528

WireGuard简明介绍及使用指引

= 21841 [Peer] PublicKey = HIgo9xNzJMWLKASShiTqIybxZ0U3wGLiUeJ1PKf8ykw= Endpoint = 142.99.55.66:51520 AllowedIPs = 0.0.0.0/0 国内运营商对 udp 使用限制比较多,可能导致你所在地区体验较差。 官方原版wireguard是端对端全局代理,中国用户无法智能区分国内外流量。wireguard没有自带流量统计、多用户管理功能,这是目前wireguard没有被商家使用的原因。 在当前环境下,建议你优先使用wireguard代理,因为它安全性更高,速度稳定可靠。小众产品反倒存长久;ss可备用;人在江湖,总要备几架梯子。 实测发现,Vultr升级内核后,完美支持wireguard,效果很好...阅读全文

博文 2019-11-28 12:44:00 debian.cn

Golang后端面试题目

技术一面 基础面试 一面是通过电话直接沟通。 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文件版本,使用顺序...阅读全文

博文 2020-04-13 13:13:00 2020腾讯社招

ISTIO 1.1 正式版今日发布

global.outboundTrafficPolicy.mode 参数,用于定制 Egress 通信的缺省行为,目前的缺省值为 ALLOW_ANY,即允许全部 Egress 通信。 新增 Sidecar 资源 目前版本中,Sidecar 会包含整个网格内的服务信息,在 1.1 中,新建了 Sidecar 资源,通过对这一 CRD 的配置,不但能够限制 Sidecar 的相关服务的数量,从而降低资源占用,提高传播效率;还能方便的对 Sidecar 的代理行为做出更多的精细控制——例如对 Ingress 场景中的被代理端点的配置能力。 ExportTo 多个路由管理对象加入了这一字段,用于指定该资源的效范围。 路由的区域感知能力 新增了对 AZ/Region 等的区域感知能力,降低跨区请求造成的性能损耗。 对 TCP 服务提供鉴权支持 在既有的 HTTP...阅读全文

博文 2019-03-20 12:55:59 debian.cn

Proxmox VE 6.0 发布,基于 Debian 10.0 Buster

改进的 ISO 检测:安装程序检测 ISO 的方式已经被重新设计,包括了更多的设备,从而缓解了在某些硬件上检测的问题现在可以为整个池创建备份任务每 24 小时自动旋转一次认证密钥:通过将密钥存期限制为 24 小时,可以减少密钥泄漏或恶意管理员的影响用户界面中的 Node 视图提供了更快的 syslog 视图 下载地址: 官方地址:https://www.proxmox.com/downloadsCNNIC:https://mirrors.cnnic.cn/proxmox清华大学镜像站: https://mirror.tuna.tsinghua.edu.cn/proxmox/中科大镜像站: https://mirrors.ustc.edu.cn/proxmox/...阅读全文

博文 2019-07-18 13:58:35 debian.cn

Rust 1.39.0 发布,async/.await 稳定了

: &[u8]) -> usize { slice.len() } 现在可以以更简洁的方式: fn len( #[cfg(windows)] slice: &[u16], // This parameter is used on Windows. #[cfg(not(windows))] slice: &[u8], // Elsewhere, this one is used. ) -> usize { slice.len() } 这里可以使用的属性包括: 条件编译:cfg 和 cfg_attr控制 lint:allow、warn、deny 与 forbid应用于项目的过程宏属性使用的帮助程序属性 这在整个语言态中提供了一个更具可读性的基于宏的 DSL。 标准库中增加的 const fn 此版本中...阅读全文

博文 2019-11-11 09:44:43 debian.cn

多达 95% 的 HTTPS 链接能被黑客劫持

Web 管理员们并没有学会或被告知如何正确地设置 HSTS。 针对这些不安全的站点的最容易的攻击场景是 HTTPS 降级攻击,攻击者可以选择多种方式来迫使一个看起来安全的 HTTPS 连接根本不使用数据加密或使用更弱的算法,这样攻击者就可以进行数据窃取了。 据安全研究人员称,在这 95% 的没有正确设置 HSTS 的站点中,有很多银行和金融机构的网站。 你可以通过下面一行配置激活你的 HSTS 不需要费脑筋,你只需要将下述的一行配置添加到你的 HTTPS 服务器配置中即可实现 HSTS。 Strict-Transport-Security: max-age=31536000; 这一行可以让服务器告诉浏览器仅通过 HTTPS 连接来访问其内容,其策略有效期为长达一年的最大有效时间。 当上述配置效...阅读全文

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

美国东海岸大范围断网 谷歌、亚马逊等公司服务受影响 - 通信运营商

威瑞森是美国主要的宽带服务提供商。该公司之前曾提醒用户,布鲁克林的一条光纤被切断。发言人里奇·扬(Rich Young)说,公司“意识到了影响整个东北走廊宽带服务质量的问题”。他补充说,威瑞森“已经看到服务水平开始恢复”。与此同时,美国联邦通信委员会(FCC)正在审查有关网络中断的报告。联邦通信委员会代理主席杰西卡·罗森沃塞尔(Jessica Rosenworcel)在Twitter上表示,该监管机构下属的公共安全和国土安全局“正在努力弄清到底发了什么”。故障监测网站Downdetector.com也显示,康卡斯特公司(Comcast Corp)、Roblox Corp和Slack Technologies Inc.也出现了故障。亚马逊公司的云计算部门在其网站上表示,与其服务相关的连接问...阅读全文

Systemd 曝出三个漏洞 大部分 Linux 发行版易受攻击

攻击”,研究人员表示:“但在 SUSE Linux Enterprise 15、openSUSE Leap 15.0 和 Fedora28 与 29 上,这些漏洞无法利用,因为它们的用户空间使用了 GCC 的 -fstack-clash-protection 进行编译。” GCC 中的 -fstack-clash-protection 选项用于成代码以防止堆栈冲突样式攻击(stack clash style attacks),启用此选项后,编译器将一次只分配一页堆栈空间,并在分配后立即访问每个页面。因此,它可以防止分配跳过处于操作系统保护下的任何堆栈页面。 Qualys 表示不久后将发布相关漏洞 exploit。...阅读全文

博文 2019-01-15 10:56:33 debian.cn

协议介绍之深入了解 gRPC

好没有 HTTP/2 支持,也仅仅有一个可用的 protobuf 实现。为了支持 gRPC,我们 team 付出了很大的努力,也走了很多弯路,从最初使用纯 Rust 的 rust-grpc 项目,到后来自己基于 c-grpc 封装了 grpc-rs,还是有很多可以说的,后面在慢慢道来。如果你对 gRPC 和 rust 都很感兴趣,欢迎参与开发。 gRPC-rs: https://github.com/pingcap/grpc-rs 原文作者:siddontang@简书 链接:https://www.jianshu.com/p/48ad37e8b4ed 著作权归作者所有。商转载请联系作者获得授权,非商转载请注明出处。...阅读全文

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

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

众所周知,在Java的知识体系中,并发编程是非常重要的一环,也是面试的必问题,一个好的Java程序员是必须对并发编程这块有所了解的。为了追求成为一个好的Java程序员,我决定从今天开始死磕Java的并发编程,尽量弥补自己在这方面的知识缺陷。 并发必须知道的概念 在深入学习并发编程之前,我们需要了解几个基本的概念。 同步和异步同步和异步用请求返回调用的方式来理解相对简单。 同步:可以理解为发出一个请求后,必须等待返回结果才能执行下面的操作。 异步:请求发出后,不需要等待返回结果,可以继续执行后续操作,异步请求更像是在另一个 “空间” 中处理请求的结果,这个过程不会影响请求方的其他操作。 举个活中的例子,比如我们去实体店买衣服,挑选完款式后下单让售货员去仓库拿货,在售货员拿货的过程你需要在店...阅读全文

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

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

。 ceph-mgr还包括一个Prometheus插件。 ceph-mgr现在有一个Zabbix插件。使用zabbix_sender,它可以将集群故障事件发送到Zabbix Server主机。 这样可以方便地监视Ceph群集的状态,并在发故障时发送通知。 集群的总体可扩展性有所提高。我们已经成功测试了多达10,000个OSD的集群。 目前,每个OSD都具有与其相关联的设备类(例如,hdd或ssd),允许CRUSH规则将数据简单地映射到系统中的设备的子集。 通常不需要手动编写CRUSH规则或手动编辑CRUSH。可以优化CRUSH权重,以保持OSD之间数据的近乎完美的分布。 还有一个新的upmap异常处理机制,允许单个PG移动以实现完美的分发(这需要客户端)。 每个OSD目前可以根据后端设备是HDD还是...阅读全文

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

Golang 中的 channel 通道详解

channel通道golang的并发模型是序列通信处理CSP(communicating sequential process)——使用通信来共享内存 ,避免goroutine因竞争共享内存频繁加锁产的性能问题。基本数据结构golang中提供了一个特殊的类型channel实现goroutine之间的通信。channel类似于队列,先进先出。channel数据结构源码在src/runtime/chan.go下。chan 使用 hchan 表示,它的传参与赋值始终都是指针形式,每个 hchan 对象代表着一个 chan。hchan 中包含一个缓冲区 buf,它表示已经发送但是还未被接收的数据缓存。buf 的大小由创建 chan 时的参数来决定。qcount 表示当前缓冲区中有效数据的总量...阅读全文

Docker 17.06 社区版发布

今天我们发布了Docker CE 17.06,它包含了诸多新特性、优化和bug修复。我们在四月份的DockeCon上公布了Moby项目,Docker CE 17.06是第一个完全构建在它基础上的Docker版本。变更日志中能看到完整的更新列表,我们来看看它的一些新特性。 我们也为这篇文章制作了一个视频版本。 多阶段构建 17.06 CE最大的特性是它的多阶段构建(multi-stage builds),它最初在四月的DockerCon被公布,现在已经达到了稳定版本。多阶段构建能从一个Dockerfile中构建出更加简洁、体积更小的Docker镜像。 多阶段构建通过构建过渡镜像并产输出。这样就能在一个过渡镜像中编译代码,在最终的镜像中只使用它的输出。例如,Java开发者通常使用Apache...阅读全文

博文 2017-06-30 23:08:57 debian.cn

HTTP状态码详解

息不是在原始服务器上有效的确定集合,而是来自本地或者第三方的拷贝。当前的信息可能是原始版本的子集或者超集。例如,包含资源的元数据可能导致原始服务器知道元信息的超级。使用此状态码不是必须的,而且只有在响应不使用此状态码便会返回200 OK的情况下才是合适的。 204 服务器成功处理了请求,但不需要返回任何实体内容,并且希望返回更新了的元信息。响应可能通过实体头部的形式,返回新的或更新后的元信息。如果存在这些头部信息,则应当与所请求的变量相呼应。 如果客户端是浏览器的话,那么用户浏览器应保留发送了该请求的页面,而不产任何文档视图上的变化,即使按照规范新的或更新后的元信息应当被应用到用户浏览器活动视图中的文档。 由于204响应被禁止包含任何消息体,因此它始终以消息头后的第一个空行结尾。 205...阅读全文

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

谷歌开源了代码评审规范:好坏代码应这样来判断

健康水平产影响。 解决冲突 在代码评审中,如果发了任何冲突,第一步应该是开发者和评审者基于本项目的 CL 指南达成共识。当达成共识非常困难时,开发者与评审者应该面对面地交流,而不只是通过审查中的评论来交流。如果开会讨论还解决不了,那么就要扩大会议了,我们可以通过与代码维护人员、工程经理等开发者的交流,达成最终的共识。 如果想要深入了解谷歌的这套代码审核规范,可查看该项目。地址如下: https://gitee.com/leonard/google-eng-practices...阅读全文

博文 2019-09-10 17:19:13 debian.cn

Docker 快速入门之 Dockerfile

用于执行命令,并且是在新的一层上执行,并把执行后的结果提交,也就是成新的一层。基于这个问题,我们在使用 RUN 指令时应该尽可能的把要执行的命令一次写完,以减少最后成的镜像的层数。语法: RUN RUN ["executable", "param1", "param2"] 3.3 CMD CMD 指令用于给容器启动时指定一个用于执行的命令,例如上例中的 nginx 启动命令。 语法: CMD ["executable","param1","param2"] CMD ["param1","param2"] ### 用于给 ENTRYPOINT 指令提供默认参数 CMD command param1 param2 3.4 LABEL LABEL 指令用于为镜像指定标签,可...阅读全文

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

监控Kubernetes集群证书过期时间的三种方案 - OSCHINA

用 kube-prometheus-stack 通过 apiserver 和 kubelet 组件监控获取相关证书过期时间; 使用 enix 的 x509-certificate-exporter监控集群所有node的 /etc/kubernetes/pki 和 /var/lib/kubelet 下的证书以及 kubeconfig 文件 方案一: Blackbox Exporter 监控 Kubernetes apiserver 证书过期时间 Blackbox Exporter 用于探测 HTTPS、HTTP、TCP、DNS、ICMP 和 grpc 等 Endpoint。在你定义 Endpoint 后,Blackbox Exporter 会成指标,可以使用 Grafana 等工具进行可视化...阅读全文

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

Debian 成为主流 Linux 操作系统的七个原因

Debian也许是历史最悠久的发行版之一,但很显然,它仍可以教其他发行版好几招。要是没有Debian,Linux领域的境况会大不一样,会黯然失色好多。Debian仍是首屈一指的Linux发行版之一,这有诸多令人信服的理由。 我头一回安装Debian是在16年前。自那以后,我试用过无数的其他Linux发行版,甚至有一两个还坚持使用了好几个月,不过我的主要发行版始终是Debian,或者至少是Debian的众多衍版之一。很熟悉,也许可以在一定程度上解释为什么我青睐它。不过,我青睐它主要源自其他发行版比不过Debian。 我认为至少有七个理由表明Debian仍是我青睐的Linux发行版: 7.软件包管理 Debian中的软件包由dpkg和apt-get来管理。如今,它们管理依赖项的能力不再很独特...阅读全文

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

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

文件这块的原理描述的文章已经非常多了,所以这里我不再做过多的赘述,感兴趣的同学可以从Wikipedia翻阅一下。由于这块内容比较复杂,不属于本文普及的内容,建议读者另行自研,这里我非常推荐马士兵老师将linux文件系统这块,讲解的真的非常好。 select模型 此模型是IO多路复用的最早期使用的模型之一,距今已经几十年了,但是现在依旧有不少应用还在采用此种方式,可见其长不老。首先来看下其具体的定义(来源于man二类文档): int select(int nfds, fd_set *readfds, fd_set *writefds, fd_set *errorfds, struct timeval *timeout); 这里解释下其具体参数: 参数一:nfds,也即maxfd,最大的文件描...阅读全文

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

HTML 5.1 — 14 项新增特性及使用案例

5.1 中被引入的新的功能特性和功能提升。你不需要动 JavaScript 就可以利用上这些功能特性。并非所有的浏览器都支持这些功能特性,因此你最好是在将它们应用于产环境之前先检查一下浏览器的支持情况。 14. 预防网络钓鱼攻击 大多数使用 target='_blank' 的开发者都不了解一个事实——最新打开的标签可以改变 window.opener.location 到一些钓鱼网页。它将会在已打开的网页,以你的名义执行一些恶意 JavaScript 代码。因为用户相信已经打开的网页,他们不会起疑心。 为了彻底解决这个问题,HTML5.1 已经标准化 rel=”noopener”的使用属性,与浏览器的上下文环境分开。rel=”noopener” 允许在 标签之间使用...阅读全文

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

Ubuntu 创始人爆粗口: 开源社区弥漫着“反社会人格”

Shuttleworth,请你不要让 Mir 死亡。(我理解在桌面端这可能是非常困难或许无法实现的,但是如果你未来想要进一步布局物联网,你就会发现它是非常实用的。) 随后 Shuttleworth 的回复并不令人感到愉快: Martin Kozub,我们拥有大量使用 Mir 作为合成器的物联网项目,因此代码将会接受更新。我也非常赞同,它是非常高效、简洁和强悍的图形合成引擎,聪明的人都非常的喜欢。 然而我由衷的讨厌 Mir 的存在,因为这是一款非常容易产分歧的软件。就像是气候变化或者枪支管理一样,它会变成不合理的策略话题。无论你站在哪一方都释放出种族拥护的信号。在社区中部分软件的对立已经变成了非常严重的问题,有些人会选择站在对立面怀着抱怨和讨厌的态度,而另一些人则站在了同一阵营,甘愿投入时间和精力并不断让软件变得...阅读全文

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

Qt5.9发布:如何评价QT

Quick Controls 2的功能增强,还有基于openGL shader cache 对QML进行类型缓存, 以及.qml / .js文件成的代码和数据结构的缓存的支持。 这些功能将大大提高使用Qt构建的设备的启动速度。 发布新Qt Creator 4.3.0,Quick Designer里面也看以同时看到和编辑qml code了! 作为Qml项目开发者确实立刻感到了方便! 还有新框架将允许Qt团队更容易创建新版本,包括修补程序和发布次要版本。 引入自动化性能回归测试,使得对Qt的监控与提高加强。 安全方面,Qt 5.9正式支持INTEGRITY RTOS。 确实越来越多的RTOS应用程亟需要更高级GUI框架来满足用户期望呢。 操作系统和硬件方面,Qt 5.9完全同时支持传统的Win32应用...阅读全文

博文 2017-06-02 10:24:32 5.9的变化

2017年的Linux内核防护依然脆弱

到 Linux 内核代码,这是不大可能发的,因为今天所谓的内核 “社区” 主要是由一帮大厂商的雇员组成,没有人有义务免费的贡献代码去帮助那些需要从雇主那里获得 KPI 的工程师,更讽刺的是, stack clash 的部分修复居然来自 PaX/Grsecurity 于 2010 年的代码,Linus 说 PaX/Grsecurity 是垃圾也等同于打 KSPP 的脸,因为 KSPP 还在继续抄袭 PaX/Grsecurity,而针对 Linux 内核的漏洞利用是否大规模被恶代使用只是曝光与否的问题。 此外,虽然 Stack clash 的 * EMBARGOED" 从开始到现在已经 1 个月,但至今 CVE-2017-1000370(offset2lib bypass) 仍然未修复...阅读全文

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

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

专访Docker大牛:Docker背后的真正引擎是Containerd

管理仍然是不容易,我们必须创建自己的工具来管理,如果可以在Docker Swarm中本地完成,这将是非常好的一次改进。 多主机联网目前使用情况还不错,但我仍然发现了一些小问题。不过,最近很多SDN供应商正在将自己的网络堆栈作为Docker插件实施,这对于使用者来说是件好事。 问:关于Docker态系统的演变,您如何评价Docker决定 向CNCF 捐赠 containerd runtime ? Chanwit Kaewkasi:我认为这是个非常棒的举动,Docker背后真正的引擎基本上是Containerd,标准化的 container runtime 将会使所有的人都受益。 多集群管理依然不容易。 问:您希望在下一个Docker发行版中看到什么功能? Chanwit Kaewkasi...阅读全文

博文 2017-11-22 10:50:11 debian.cn

Linux Kernel 5.0将于2018年夏季发布

Linus Torvalds揭示了为什么在2018年夏天将会有一个Linux Kernel 5的理由。他还讨论了对新的Linux Kernel维护者的需求。 在最近结束的布拉格开源峰会上,Linux创始人Linus Torvalds与VMware副总裁进行了座谈,并讨论了Linux内核的相关问题。 Linux内核需要新的维护者 Linux内核已经有26岁,内核维护者比26岁还要老。这就产了一个问题,因为虽然内核开发有很多年轻的贡献者,但是内核维护者(负责审核向内核提交代码的人)是40多岁的人, 甚至50多岁了。部分问题是维护内核的复杂性。 但是Torvalds认为,内核维护者的主要原因是“老”,因为他们需要从疯狂的邮件流入中了解补丁。这需要良好的经验。 第二个原因是内核维护者应该足够长的...阅读全文

博文 2017-12-11 22:27:31 debian.cn

谷歌是如何培养经理人的

做得很突出是不够的,不是每个人都适合做管理。要找到好的经理人,需要观察他们是如何与其他员工共事的,看看他们是否具备足够的灵活性并是否能够拥抱变化。要想知道一个人是否适合管理岗位,可以先分配一些小任务给他们,比如让他带实习或者让他管理一个小项目。经过一段时间的观察后,看看他是否胜任。 培训经理人需要几个月的时间。Calderon建议这个时间不要太长,以免养成不好的习惯,只要等到他们开始理解管理者角色的时候就可以了。在谷歌,这个时间一般是三个月。Calderon说,不要在他们还没开始工作或刚开始工作时就培训他们,而是要让他们先工作几个月,让他们对工作有所了解,并经历一些挑战。到了培训阶段,不要只是纸上谈兵,而是真正赋予他们管理者的角色。 不要一开始就让他们承担太多的工作。一个新经理人刚开始工作...阅读全文

博文 2017-12-24 07:31:00 debian.cn

Debian 9 Stretch 安装配置 Caddy Server

网站目录。 接着,重新加载 systemd daemon,让配置效。 sudo systemctl daemon-reload 让 Caddy 开机自启: sudo systemctl enable caddy.service 至此,Caddy 已经成功注册服务,并能够开机自动运行了。 配置Caddy 这部分的内容我不打算详细记录,主要是官方文档已经写的很详细了。下面是我的配置, example.com { proxy / 127.0.0.1:9001 { header_upstream Host {host} header_upstream X-Real-IP {remote} header_upstream X-Forwarded-For {remote...阅读全文

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

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

下载到 ~/local/go 目录。此时我们需要设置环境变量 - 设置 GOROOT 和 GOPATH 目录到系统环境,这样,我们就可以在 git 用户下执行 go 命令。执行以下命令。 cd ~/ echo 'export GOROOT=$HOME/local/go' >> $HOME/.bashrc echo 'export GOPATH=$HOME/go' >> $HOME/.bashrc echo 'export PATH=$PATH:$GOROOT/bin:$GOPATH/bin' >> $HOME/.bashrc 随后重新登录使配置效,或者直接运行 source ~/.bashrc 重载 Bash, . ~/.bashrc 现在运行 go 的版本查看命令。 go version...阅读全文

博文 2018-03-10 09:35:31 debian.cn

MySQL 8 第一个正式版发布:更好的性能

JSON 的支持,添加了基于路径查询参数从 JSON 字段中抽取数据的 JSON_EXTRACT() 函数,以及用于将数据分别组合到 JSON 数组和对象中的 JSON_ARRAYAGG() 和 JSON_OBJECTAGG() 聚合函数。 9. 可靠性:InnoDB 现在支持表 DDL 的原子性,也就是 InnoDB 表上的 DDL 也可以实现事务完整性,要么失败回滚,要么成功提交,不至于出现 DDL 时部分成功的问题,此外还支持 crash-safe 特性,元数据存储在单个事务数据字典中。 10. 高可用性(High Availability):InnoDB 集群为您的数据库提供集成的原 HA 解决方案。 11. 安全性:对 OpenSSL 的改进、新的默认身份验证、SQL 角色、密码强度...阅读全文

博文 2018-04-20 10:40:18 debian.cn

如何在 Debian 上安装 TensorFlow

TensorFlow 是一个端到端开源机器学习平台。它拥有一个包含各种工具、库和社区资源的全面灵活态系统,可以让研究人员推动机器学习领域的先进技术的发展,并让开发者轻松地构建和部署由机器学习提供支持的应用。 TensorFlow可以在系统范围内,Python虚拟环境中,作为Docker容器或与Anaconda一起安装。在本教程中,我们将讲解如何在Debian 10的Python虚拟环境中安装TensorFlow。 虚拟环境使你可以在一台计算机上拥有多个不同的隔离Python环境,并在每个项目的基础上安装模块的特定版本,而不必担心会影响其他项目。 以下内容提供了如何在Debian 10上的Python虚拟环境中安装 TensorFlow。 1、安装Python 3 venv 首先我们要验证...阅读全文

Debian软件包常用管理命令整理

在Debian及其衍的系统中,我们需要经常使用的软件包管理命令,对系统进行管理,以便系统达到预期的状态。Debian系统中,常用的软件包命令有 apt、apt-get、dpkg、apt-cache等,这里我们着重列举常见的一些用法。 软件包查询(不需要sudo权限) $ apt-cache search pkg_keyword #列出匹配关键字的软件包 $ apt search pkg_keyword #列出匹配关键字的软件包,包括了版本信息 $ apt list pkgname #查找该软件包,会显示版本信息 $ apt-cache show pkgname #查询软件包详细信息 $ apt show pkgname #查询软件包详细信息 $ apt-cache depends...阅读全文

分布式 NewSQL 数据库 TiDB

hash 分区表时指定非常大的分区数量导致 TiDB OOM 的问题 #16219让 union 语句的行为和 select 语句保持相同,修复把 warnings 当 error 的问题 #16138修复 TopN 下推到 mocktikv 中的执行错误 #16200增大 chunk.column.nullBitMap 的初始化长度,以避免多余的 runtime.growslice 开销 #16142TiKV修复 replica read 导致 TiKV panic 的问题 #7418 #7369修复 restore 产许多空 Region 的问题 #7419修复重复的 resolve lock 请求可能会破坏悲观事务原子性的问题 #7389TiFlash修复从 TiDB 同步 schema...阅读全文

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

Linux Kernel 5.10本周末发布 十个功能盘点

天堂 Switch Joy-Cons 和 Pro 手柄均能在 Linux 平台上通过 USB 和蓝牙模式连接,并支持震动和陀螺仪数据。 9.在安全性方面改进 在安全性方面进行了许多改进,以抵抗外部 PCI Express 设备可能发的 DMA 攻击;“nosymfollow”安装选项类似于多年来BSD上提供的安装选项; Linux 5.10包括新的static_call()函数,可帮助您在受Retpolines影响的情况下,ARM Spectre缓解措施已被改写为“ Ghostbusters”工作的一部分。 10.英特尔处理器支持 持续开发并添加对英特尔即将推出的 Rocket Lake 和 Alder Lake 硬件支持。英特尔 Meteor Lake 在 Linux 5.10 中也会包...阅读全文

博文 2020-12-09 10:30:48 debian.cn

Golang 面试题搜集

) - [简单聊聊内存逃逸?](https://github.com/lifei6671/interview-go/blob/master/question/q019.md) - [字符串转成byte数组,会发内存拷贝吗?](https://github.com/lifei6671/interview-go/blob/master/question/q020.md) - [http包的内存泄漏](https://github.com/lifei6671/interview-go/blob/master/question/q021.md) ## Golang 理论 - [Go语言的GPM调度器是什么?](https://github.com/lifei6671/interview-go...阅读全文

Debian 9更新到最新的Linux内核

.bpo.2-rt-amd64-unsigned - Linux 4.19 for 64-bit PCs, PREEMPT_RT.........name@debian.cn:~$ sudo apt-get install linux-headers-4.19.0-0.bpo.2-amd64 -y 重启使新内核效 name@debian.cn:~$ sudo rebootname@debian.cn:~$ sudo apt-get autoremove 到此,我们已成功通过官方安装源,升级内核至最新的 4.19.0 的版本了。另一种方式,是通过 kernel.org 官方提供的安装包,更新到最新的内核。 更新 Kernel.org 提供的内核 在 mirrors.kernel.org 上直接下载...阅读全文

博文 2019-03-25 22:33:22 debian.cn

LFS 8.0 正式发布:从零开始编译自己的 Linux 发行版

LFS的方法成可以自行启动并安装了足够软件的CD,可以用来在空机器上安装LFS,或者直接在其上运行应用。 Patches 由于软件之间的依赖关系,在升级软件包之后可能会导致LFS的过程出现故障。Patch项目致力于研究最新版本的软件之间的互动,并提供一些补丁修复这些故障。 这次发布的 LFS 和 BLFS 总共有29个包得到了更新,包括启动脚本和安装指南。而 BLFS 则跟上一个旧版本相比,有大概800个包得到了更新,主要更新包括: * glibc-2.24 * binutils-2.27 * gcc-6.2.0 * /lib 移到了 /lib64 * 移除/usr/lib64 目录 * 增加 /usr/bin/ld.gold 可用 LFS 手册: http...阅读全文

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

Kubernetes调度算法浅析

在真正的产环境中,如何合理的分配服务器资源、提高利用率、让整个集群运行的更加稳定使得 k8s-scheduler 这个角色在集群中的地位愈发重要。 kube-scheduler的预选(过滤)和精选(打分) api-server会将创建pod的请求发送给kube-scheduler,并且将pod信息记录在etcd数据库中。之后kube-scheduler会根据预选(过滤)规则,首先过滤掉一部分node节点中的pod,没有被过滤掉的pod可以看做是可以被调度的pod,之后再通过更加严格的规则给剩下的pod打分,这一步也叫作优选。打分最高的pod可以看做被优先分配到pod任务。 调度流程简介 创建pod的命令被api-server的api接口接收到。api-server将pod信息存储在...阅读全文

博文 2020-12-20 11:01:10 debian.cn

Debian 8 (Jessie)下面如何安装卸载docker

--purge docker-engine 需要注意的是上面的命令只是删除了 docker-engine 包,并不会删除下载的镜像,产的容器文件,卷,已经用户创建的配置文件。关于 apt-get 的详细用法,请参考这里。可以用下面的命令干掉它们: $ sudo rm -rf /var/lib/docker 然后手工删除自己创建的配置文件就可以了。...阅读全文

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

Go 1.9 的新特性介绍

, 可以使用./vendor/...通配符。 性能提升 性能提升多少势很难精确描述的,对于大部分的程序,应该运行更快一点。 主要在于垃圾回收器的优化、更好的成的代码以及核心库的优化。 完整的信息可以参考 Tip Go 1.9 Release Notes, Go 1.9发布后可以访问Go 1.9 Release Notes 本文转自 http://colobu.com/...阅读全文

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

如何重启 Kubernetes 中的 Pods

在使用 Docker 时,我们可以使用 docker restart container_id 来非常方便的重启容器,但是在 kubernetes 中并没有重启 pod 的命令。有时 Pod 意外终止时,我们希望重启 pod,来进行排障或者尝试恢复服务。这时我们会发现蛋有点疼,没有一个很直观的方式来重启 pod。 这里我总结了几种重启 Pod 的方式,分两种情况讨论如何重启 K8S 中的 Pod,希望对大家有所帮助。 第一种方式:Deployment方式下重启Pod 大多数产环境,使用的是 Deployment 方式部署应用。这种场景下,我们可以直接删除对应的 Pod,让k8s去完成 pod 重建,命令: kubectl delete pod {podname} -n...阅读全文

博文 2020-07-13 21:23:30 debian.cn

Kubernetes 1.16.0发布 新版本四大主题

Network Proxy 在 1.16 版本中进入 AlphaCloud Controller Manager Migration 增强继续淘汰 extensions/v1beta1、apps/v1beta1 和 apps/v1beta2 API,这些扩展会在 1.16 版本中被弃用 已知的问题: etcd 和 KMS plugin 的健康检查没有在新的 livez 的 和 readyz 端点中公开。这将在 v1.16.1 中得到修正。 运行iptables 1.8.0 或更新版本的系统应以兼容模式启动它。请注意,这将影响所有版本的 Kubernetes,而不仅仅是 v1.16.0。 升级前须知: 集群命周期 amd64 的容器镜像 tar 文件现在将包含 RepoTags...阅读全文

博文 2019-09-20 13:28:32 debian.cn

Linux内存buffer和cache的区别

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

Go 泛型的括号选择:[ ] or ( )

type关键字,那么歧义就会消失: type A[type N] E 此外,使用小括号时产的歧义似乎不会出现在方括号中。下面是一些使用方括号但不需要额外嵌套小括号的例子: using () using [] func f((T(int)) func f(T[int]) struct{ (T(int)) } struct{ T[int] } interface{ (T(int)) } interface{ T[int] } [](T(int)){} []T[int]{} 为了更好地理解以及进行测试,他们表示将开始对原型实现进行修改,让泛型能使用小括号或方括号(注意不能同时混用,只能使用其中一种)。这些修改将首先提交到 dev.go2go 分支,最终会出现在 Go playground 上...阅读全文

博文 2020-07-16 10:38:01 debian.cn

轻量级发行版 Alpine Linux 介绍

Alpine Linux 操作系统是由社区开发的,面向安全的轻型 Linux 发行版,它和其他常见的 Linux 发行版不同。Alpine 采用了 musl libc 和 busybox 以减小系统体积和运行时的资源消耗,功能上要比 busybox 完善的多,因此得到开源社区越来越多的青睐。 在保持瘦身的同时,Alpine 提供了自己的包管理工具 apk,可以在官方网站上查询包信息,也可以通过类似 apt 和 yum 的方式,在命令行查询或安装软件。 Alpine 支持广泛的场景,它特别为资深/重度Linux用户而优化,关注安全,性能和资源利用率,是一个优秀的可适用于产环境的基础系统。 Alpine Docker 镜像继承了 Alpine Linux 发行版的这些优势。相比于其他...阅读全文

博文 2018-06-16 13:48:00 debian.cn

DNS SRV:使用DNS服务器做服务发现

级的记录,按照权重选择,记录的权重越高,被选择的可能性越高。 选择的时候,将所有记录的权重值累加,得到一个选择区间[0,sum],每个记录在[0,sum]中占据一段连续的、长度为自身权重值区间。然后成一个[0,sum]中的随机数,随机数落在的区间所属的记录就是被选择的记录。 注意事项 在使用DNS SRV的时候,要注意DNS Client是否按照预期的方式处理收到的SRV记录。当前DNS SRV只能够负责提供服务地址列表,对这个列表如何解读,完全取决于Client的实现。rfc-1035中规定,通过UDP协议传输DNS响应时,UDP报文的负载不能超过512字节,在添加 SRV 记录的时候,要特别注意。通过TCP传输时没有512字节的限制。当一个服务地址有多个相同优先级的SRV记录的时候...阅读全文

博文 2019-03-05 09:35:34 debian.cn

Debian 9.3上安装和配置 Observium 监控平台

装了UFW,使用以下命令启用UFW: ufw enable 接下来,使用以下命令通过UFW防火墙允许端口80: ufw allow 80 一旦配置了防火墙,打开您的网络浏览器并键入你的访问地址,您应该看到以下页面: 在这里,输入您的管理员用户名和密码,然后点击登录按钮,您应该看到Observium默认仪表板。接下来,您将需要创建一个cron作来轮询和发现来自网络的设备。 你可以通过在/etc/cron.d目录下创建一个cron文件来完成这个工作: nano /etc/cron.d/observium 添加以下行: # Run a complete discovery of all devices once every 2 hours 25 */2 * * * root /var/www...阅读全文

博文 2017-12-30 11:35:21 debian.cn