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

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 表示当前缓冲区中有效数据的总量...阅读全文

基于thanos搭建分布式prometheus

sidecar和prometheus则走原生HTTP接口拿数据。 为了高可用,我们可以部署多个prometheus同时抓取。 为了打散采集/存储压力,我们可以部署多个prometheus各自抓取部分数据。 无论于上述哪种目标或者混合目标,最终依靠Querier的正确配置都可以提供统一的Promql查询入口给Grafana,这一点是毋庸置疑的。 这里看到了图中有几个陌生的组件: Store Bucket Compactor Prometheus单机存储空间有限,SideCar和Prometheus在同POD内共享数据volume,然后sidecar可以自动将prometheus磁盘数据上传到Bucket里归档存储;后续Querier可以通过Store组件从Bucket拉取到历史数据,这样就实现了历史数据...阅读全文

博文 2021-03-01 13:02:46 鱼儿的博客

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

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

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

谷歌元老施密特隐退:传奇落幕 新篇开启

为一个1955年生的老派人物,是如何与布林和佩奇两个70后走到一起的呢?其实从他在普林斯顿大学和加州大学伯克利分校完成学士到博士的学习后,曾经在贝尔实验室、Sun 等大型公司工作过,而他待过的小公司更是数不胜数,甚至在加入谷歌之前的一个季度,施密特掌管的 Novell 公司亏了足足1.42亿美元,似乎他不怎么像一位能让谷歌起飞的人。 但是在施密特从 Novell 公司离职之后,投资者依然向佩奇和布林推荐了他,并且在面试之后,两位创始人立马敲定了新任 CEO 的人选,并且这 CEO 一当就是十年。这背后的原因没人知道,但是据猜测,施密特多次成功和一次失败的经验打动了对方,而这些经验也确实成为了谷歌崛起的关键点。 在1983年加入 Sun 之后,施密特以一己之力将 Java 打造成了最普及的编...阅读全文

博文 2017-12-24 09:18:44 debian.cn

Kotlin 一统天下?Kotlin/Native 支持 iOS 和 Web 开发

发行版)。该版本引入了一系列新功能,包括对多平台项目的实验性支持 —— 允许开发者在针对 JVM 和 JavaScript 的模块之间共享代码,以及多项对语言方面的改进 —— 包括支持在注释中使用数组字面量。更多关于 1.2 版本新功能的内容,点此查看。 此外,值得关注的就是协程这个特性了。虽然协程仍然被标记为实验性状态,但官方特意说明了这里“实验性”代表的含义。官方表示协程已经完全准备好用于生产环境,他们也已使用协程进行开发,而且也没发现在使用当中现任何重大问题。之所以仍保持实验性状态,是为了能够对 Kotlin 继续进行设计迭代。根据目前的计划,Kotlin 1.3 将会删除协程的实验性状态。 Kotlin/Native 对 iOS 开发的支持 另外一个重大消息就是 Kotlin...阅读全文

博文 2017-11-05 19:28:14 debian.cn

Debian 11 "bullseye" 发布,带来内核 exFAT 支持

描和打印使用 CUPS 打印以及使用 SANE 扫描对于越来越多的硬件型号已经可以实现无需任何驱动程序(通常是非自由驱动程序)即可正常操作,尤其是过去五年以来现在市场上的新设备。CUPS 和无驱动打印使用以太网或无线网络连接的现代打印机已经可以使用无驱动打印功能,由 CUPS 和 cups-filters 软件包提供支持,此功能已在 Debian buster 发行注记中描述。Debian 11 “bullseye” 提供了新软件包 ipp-usb;它使用许多现代打印机所支持的、供应商中立的 IPP-over-USB 协议,且 cups-daemon 推荐安装该软件包。它使得 USB 设备可被视作网络设备,以将无驱动打印扩展至包括 USB 连接的打印机。在 ipp-usb 软件包中包含的...阅读全文

nsenter 及 Linux命名空间 简介

, --setgid gid:设置运行程序的gid -S, --setuid uid:设置运行程序的uid -r, --root[=directory]:设置根目录 -w, --wd[=directory]:设置工作目录 -F, --no-fork do not fork before exec'ing -h, --help display this help and exit -V, --version output version information and exit For more details see nsenter(1). 如果没有给program,则默认执行$SHELL。 示例:运行一个nginx容器,查看该容器的pid:docker inspect -f...阅读全文

博文 2020-12-15 11:22:44 debian.cn

DevOps 越来越流行,2019 年这八大趋势值得关注

写代码并通过自动化脚本来测试各种案例的测试人员的需求将大幅增长。如果你是测试人员并且在是否学习编码方面处于两难境地,我们建议你还是学习编码吧。了解不同的 DevOps 工具和自动化脚本在当今的软件开发中起着至关重要的作用,并且将在 2019 年占据主导地位。 如果测试人员不学习编写代码和自动化测试脚本,就有可能被淘汰。手动测试将在 2019 年过时,因为它们需要耗费大量的时间。测试自动化不仅可以提高效率,还可以确保更快地将功能交付给市场。 微服务架构采用率增加 DevOps 和微服务将齐头并进。微服务是独立的实体,因此在现问题时不会给其他系统造成破坏。微服务架构可以帮助公司轻松部署和添加新功能。预计更多的企业将会转向微服务架构,以改进他们的在线运行时间和有效交付。不要只是因为别人采用了微服...阅读全文

博文 2018-12-10 22:49:57 debian.cn

Debian 10 Buster 正式版即将发布

经被细分成为组件。要安装整个软件栈,可以安装 mailman3-full 来获取所有组件。 已有的 Postgresql 数据库都需要重新索引 由于 glibc 本地数据的更新,放入文本索引中的信息排序的方式将会改变,因为重新索引是有益的,这样在将来就不会有数据破坏发生。 默认 Bash 5.0 你可能已经了解了 Bash 5.0 的新特点 ,在 Debian 中已经是该版本了。 实现了 /usr/merge 我们已经分享过一个优秀的 freedesktop 读物 ,介绍了 /usr/merge 带来了什么。有一些事项需要注意。当 Debian 想要整个过渡时,可能由于未预见的情况,一些二进制文件可能并没有做这些改变。需要指的一点是,/var 和 /etc 不会被触及,因此使用容器或者云技...阅读全文

博文 2019-04-29 11:04:15 debian.cn

Apache Kafka发布 3.0 正式版

6 月随Kafka 0.11.0推四年以来,消息格式 v2 一直是默认消息格式。因此,在桥下流过足够多的水(或溪流)后,3.0 的主要版本为我们提供了弃用旧消息格式(即 v0 和 v1)的好机会。这些格式今天很少使用。在 3.0 中,如果用户将代理配置为使用消息格式 v0 或 v1,他们将收到警告。此选项将在 Kafka 4.0 中删除(有关详细信息和弃用 v0 和 v1 消息格式的影响,请参阅KIP-724)。KIP-707: KafkaFuture 的未来当KafkaFuture引入该类型以促进 Kafka AdminClient 的实现时,Java 8 之前的版本仍在广泛使用,并且 Kafka 正式支持 Java 7。快进几年后,现在 Kafka 运行在支持...阅读全文

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

深入理解Golang之context

context是Go并发编程中常用到一种编程模式。本文将从为什么需要context,深入了解context的实现原理,以了解如何使用context。 作者:Turling_hu 来源: 掘金 原文链接: https://juejin.im/post/5e52688c51882549417fc671前言这篇文章将介绍Golang并发编程中常用到一种编程模式:context。本文将从为什么需要context发,深入了解context的实现原理,以及了解如何使用context。为什么需要context在并发程序中,由于超时、取消操作或者一些异常情况,往往需要进行抢占操作或者中断后续操作。熟悉channel的朋友应该都见过使用done channel来处理此类问题。比如以下这个例子:func...阅读全文

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

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

源。相反,我们需要另一种形式的身份:以某种内在方式与工作负载、用户或系统相关联。而且这种身份需要以某种方式进行验证,而这种方式本身并不需要信任网络。这是一个具有丰富含义的大要求。提供网络安全但依赖于 IP 地址等网络标识符(如 IPSec 或 Wireguard)的系统不足以实现零信任。策略有了新的身份模型,我们现在需要一种方法来捕获每个身份的访问类型。在上面的边界方案中,通常授予一系列 IP 地址对敏感资源的完全访问权限。例如,我们可能会设置 IP 地址过滤,以确保仅允许防火墙内的 IP 地址访问敏感服务。在零信任的情况下,我们反而需要执行必要的最低访问级别。基于身份以及任何其他相关因素,应尽可能限制对资源的访问。虽然我们的应用程序代码可以自己做这些授权决策,但我们通常会使用在应用程序之...阅读全文

Debian 相比 Ubuntu 有哪些不同之处

Stable和Update。然而,用户需要把注意力主要放在三大类软件库上。 Debian系统具有的优点之一是,你可以在下面这两个极端之间作一选择:极其稳定,但缺点是版本较老;或者非常先进,但缺点是软件不大稳定,技术现的重大变化可能让不知情用户的系统崩溃。这里的选择取决于你是升级核心组件(比如Linux内核),还是升级灾难发生时不影响其他东西的自带代码库的独立式实用工具。 恰恰相反,Ubuntu的程序包来自Debian测试版或不稳定版。Ubuntu的软件库按照其他标准来加以组织,而不是由测试状态来加以组织。Main含有Canonical支持的软件,以及Ubuntu社区支持的Universe软件。Restricted含有专有驱动程序,其中Multiverse存放有版权或其他法律限制的软件。 另一个主要的...阅读全文

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

Google 关于 Go 2 的讨论

在本周召开的GopherCon 2017上,Google Go的技术负责人Russ Cox做了关于Go的未来的主旨演讲,请社区就该语言的下一个主要版本应该包含哪些内容提建议。Google在十年前开始发展Go语言,在5年前提供了第一个稳定版本1.0。目前的稳定版本是1.8.3,Google正在向社区开放,听取下一个主要版本2.0应该包括哪些内容。 最近的一项研究评估,Go语言的开发者数量约为50万。如果就编程语言向所有这些开发人员询问他们想要什么,那么很可能得到一个很长的期望功能列表。但Google非常关心维护与现有Go代码库的兼容性,该代码库大致近似于1B LoC。虽然这表明该语言的成功,但是按照Cox的说法,它也是“Go 2的主要制约因素”。 Go 1承诺兼容性,让开发人员放心,只要...阅读全文

博文 2017-07-20 10:03:13 debian.cn

不与版本帝争,16 年后 SciPy 1.0 版终发布

SciPy 是一个开源的 Python 算法库和数学工具包。SciPy 包含的模块有最优化、线性代数、积分、插值、特殊函数、快速傅里叶变换、信号处理和图像处理、常微分方程求解和其他科学与工程中常用的计算。 10月25日,SciPy 团队成员 Ralf Gommers 在 Python 官方邮件组发文宣布 SciPy 1.0 终于发布了。 Ralf 称,很高兴宣布 SciPy 1.0 的发布,自从 0.1 版面世 16 年后,1.0 版姗姗来迟。这是一次漫长而富有成效的旅程,期待在未来有更多令人激动的特性。 为什么现在才发布 1.0 版呢? Ralf 认为版本号应当体现项目的成熟程度,SciPy 是一个成熟且稳定的库,已经在生产环境长期大量使用很久了。从这个角度来说,1.0 版来晚了。 最...阅读全文

博文 2017-10-26 13:54:33 debian.cn

2018 GitHub 最火技术趋势

GitHub的高级技术副总裁Jason Warner在2018的技术趋势中挑了数据、工作流集成(workflow integration)以及开源工具,他认为这些是一个公司在2018年能够取得成功的关键。 Warner写道,数据将成为2018年全球增长的最重要因素: 现如今,所有的公司都是数据公司,不论他们是否意识到这个情况。在2018年,只要团队知道如何使用数据,数据就会成为他们最大的资产。 数据的重要性日益增长,也标志着云服务平台从分布式云计算平台转型成为数据处理的云平台,其中还包括数据分析和机器学习。这将重点反映到三个关键领域: Warner说,许多重要的系统目前都很脆弱,尽管它们的规模越来越大。为了应对在2018年变得更加频繁的攻击,将会有更多的财力和开发资源分配到改进安全性上...阅读全文

博文 2017-12-14 22:50:29 debian.cn

谷歌是如何培养经理人的

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

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

Ruby 2.5.0 稳定版发布

#14123] 逆序打印(从旧到新)调用跟踪和错误消息。当在终端(TTY)中用较长的调用跟踪信息时,你可以从最底部看到直接触发问题的行。需要注意的是,仅当在直接输到终端时,才会逆序打印。[功能 #8661] [试验性] 性能提升 通过在字节码中移除了全部 trace 指令提升了大约 5-10% 的性能。trace 指令的引入是为了提供 TracePoint的支持。然而,在大多数情况,TracePoint 不会被用到,trace 指令增加了额外的开销。作为替代,我们实现了一个动态指令技术,详情见 [功能 #14104]。 通过懒惰 Proc 分配使 block 参数传递代码块(例如 def foo(&b); bar(&b); end)的性能相较于 Ruby 2.4 提升了约 3 倍。[功能...阅读全文

博文 2017-12-25 21:59:41 debian.cn

如何在 Debian 上安装 TensorFlow

力,tensorflow请安装tensorflow-gpu包含GPU支持的软件包。 可输入以下命令以安装 TensorFlow: pip install --upgrade tensorflow 在虚拟环境中,可以使用pip代替pip3和python代替python3。在撰写本文时,TensorFlow的最新稳定版本是2.0.0。到此,你的Tensorflow便安装完成了。 如果不熟悉TensorFlow,请访问TensorFlow教程页面并了解如何构建您的第一个ML应用程序。您还可以从Github 克隆TensorFlow模型或TensorFlow-Examples存储库,并探索和测试TensorFlow示例。 如果要退Python的虚拟环境,可以使用deactivate命令,返回到此前...阅读全文

谷歌开源 Pigweed:用于提升嵌入式开发效率

编辑——编译——刷新——测试(edit-compile-flash-test)周期。 这些测试都是自动完成的,用户无需离开自己的代码编辑器。此外,还可以使用 pw_target_runner 模块在多个设备上并行运行测试,从而节省更多时间。 团队开发代码需要强调一致性,然而,设置 lint、配置代码格式以及添加自动的提交前检查等通常会使这项工作无限期延迟。这时,Pigweed 的 pw_presubmit 模块可派上用场。它会基于用户可能已经使用的工具提供现成的 Lint 集成套件,并预先配置好,可以立即供微控制器开发人员使用。 至于该项目为什么取名为 “Pigweed”,谷歌给了解释:“Pigweed,又称 amaranth ,是一种营养丰富的谷物和绿叶沙拉菜,也是一种快速生长的杂草...阅读全文

博文 2020-03-22 08:35:14 debian.cn

取代TCP:工程师宣布QUIC协议已完成RFC 9000发布

访问:天猫6·18 “开门红”超级红包活动主会场 | 手机版京东6·18“京享红包”25日12点开始领取 最大面额高达18618元 (图 via Orozco 2018)据悉,工程团队中有三位核心成员,且他们对 QUIC 的承诺深信不疑。其中包括 IETF QUIC 工作组只需 Mark Nottingham,协议主要贡献者兼 quicly 创作者 Kazuho Oku,以及核心文档集编辑、杰工程师 Jana Iyengar 。最新消息是,互联网工程任务组(IETF)已经发布了 RFC 9000,且得到了 RFC 9001 / 9002 / 8999 支持,意味着 QUIC 已从草稿阶段转向了 1.0 正式版。与此同时,基于 QUIC 的 HTTP/3 也有望紧随其后很快发表。对于...阅读全文

岗位需求: CTO

工作规范和工作流程,并跟踪开发过程实际合规性; 8. 指导. 审核项目总体技术方案,对各项目进行最后的质量评估; 9. 负责技术团队建设和管理,注重人才培养和营造创新的研发文化; 10. 完成各项技术工作相关数据统计分析报告,并据此对公司发展提合理化建议。 ** 岗位要求:** 1. 本科及以上学历,计算机. 软件工程相关专业,互联网行业优先考虑; 2. 10年及以上技术研发. 软件开发相关行业工作经验,5年以上互联网行业技术研发团队管理经验, 精通基于Java. PHP等语言的开发,熟悉服务端软件架构设计与开发流程;有互联网CTO或技术总监工作经验,带过百人以上团队; 3. 熟悉互联网领域业务,深刻理解产业发展方向,具备敏锐准确的洞察力和缜密的逻...阅读全文

系统解析JDK源码,领略大牛设计思想,JAVA面试必备

富的组件和主题,可以快速构建美观、易用的页面。 Axios:Axios是一种流行的HTTP请求库,它可以轻松地处理异步请求、拦截器等功能。 ECharts:ECharts是一款优秀的图表库,它可以提供多种类型的图表和交互方式,可以方便地展示数据。 功能设计 商城后台管理系统通常包含以下功能: 登录/注销:管理员可以通过用户名和密码进行登录,并可以退登录。 权限管理:管理员可以对用户和角色进行管理,控制用户的访问权限。 商品管理:管理员可以添加、修改、删除商品信息,包括商品名称、价格、库存、图片等。 订单管理:管理员可以查看订单列表、订单详情、订单状态等。 数据统计:管理员可以查看系统中的数据统计报表,包括销售额、订单量、会员数等。 开发流程 下面是商城后台管理系统的开发流程: 1. 搭建环...阅读全文

博文 2023-05-27 12:50:27 bianchengyuan123

基于Inception & Yearning做SQL审核的实践

': [], 'user': '1', 'base': '1', 'dicexport': '0'})" | python3 manage.py shell 初始化权限 2.6 复制网页的静态文件 cp -rf Yearning/webpage/dist/* $NGINX_HOME/html/ 2.7 修改并启动nginx 2.8 启动django(注意在src目录) python3 manage.py runserver 0.0.0.0:8000 2.9 修改阿里云的安全组策略(解决不能用公网IP访问的问题,请一定注意增加80和8000两个端口,否则还是登录不了),参考CSDN这篇文章,至此用公网ip访问可现如下界面,说明安装成功: 初始用户见#2.5,登录后如下图所示(如果登录不了,注意看#2.9是否增加了...阅读全文

博文 2018-08-13 17:39:45 debian.cn

Rancher 2.2.2 发布:优化 Kubernetes 集群运维

Windows 节点正式提供生产级别支持的 Kubernetes 版本。 UI 和 API 的性能提升 Rancher v2.2.2 中,UI 和 API 的性格都得到了大幅优化。项目相关的资源 API 调用(特别是 pod)所需的加载时间大幅减短,页面在极短的时间内即可用。 其他的修复或更新 修复了无法为 AWS 中国区域添加节点模板的问题。于稳定性考虑,暂时移除了项目级别的监控,将在下一个版本中重新添加;集群级别的监控不受此影响。修复了发布目录模板可能因证书错误而失败的问题。修复了用于与独立 Rancher 服务器通信的自签名证书可能过期的情况。修复了 Rancher 配置集群状态在带有前缀补丁的集群中被错误提取的问题。 更新详情可查阅 RancherLabs 的 发布公告 下载地址:https...阅读全文

博文 2019-04-22 13:49:38 debian.cn

五种绕过 Linux 命令别名的方法

意一种方法来运行被 bash shell 别名绕过的命令。让我们先定义一个别名,用于本文的测试样例: alias mount='mount | column -t' 运行 mount 命令,输样例如下: sysfs on /sys type sysfs (rw,relatime) proc on /proc type proc (rw,relatime) udev on /dev type devtmpfs (rw,nosuid,relatime,size=949632k,nr_inodes=237408,mode=755) devpts on /dev/pts type devpts (rw,relatime,gid=5,mode=620,ptmxmode=000) tmpfs on...阅读全文

博文 2018-03-08 13:33:02 debian.cn

Linux内存buffer和cache的区别

被分配的内存。 Shared:0kb。共享内存,一般系统不会用到。 Buffers:124212KB。系统分配但未被使用的buffers 数量。 Cached:413000KB。系统分配但未被使用的cache 数量。 -/+ buffers/cache 行(第二行)数据说明: Used:471772kb,实际使用的buffers 与cache 总量,也是实际使用的内存总量。 Free: 563336kb, 未被使用的buffers 与cache 和未被分配的内存之和,这就是系统当前实际可用内存。 根据以上分析,可以得一下结论: 1. 实际可用内存大小: Free(-/+ buffers/cache行)= Free(Mem)+buffers(Mem)+Cached(Mem); 563336...阅读全文

WordPress 4.8 Evans 正式版发布

,字体加粗,迅速添加链接等。文本挂件的功能更加强大,使用也更加简单了。 链接边界 你在编辑链接和更新链接的时候,是否有过不方便,很难正确编辑的时候呢?比如想要更新链接的文字,却发现文字在链接之外。 链接边界功能主要就是解决这个问题。当你的鼠标光标进入链接区之后,将自动进入链接编辑模式,再进行任何修改,都是在修改锚文本。当光标离开链接范围之后,自动退链接编辑模式。 细微之处的改进,却非常实用哦。 附近的 WordPress 活动 WordPress 社区非常活跃,在全球 400 多个城市举办过线下活动。WordPress 现在将这些活动的信息显示在 WordPress 的管理后台,吸引用户关注和参与这些活动,提升你的 WordPress 使用技术,结交好友等! 这是许多用户所喜爱的一个新功能...阅读全文

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

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

本教程介绍如何在一个 U 盘上安装多个 Linux 发行版。这样,你可以在单个 U 盘上享受多个现场版live Linux 发行版了。 我喜欢通过 U 盘尝试不同的 Linux 发行版。它让我可以在真实的硬件上测试操作系统,而不是虚拟化的环境中。此外,我可以将 USB 插入任何系统(比如 Windows 系统),做任何我想要的事情,以及享受相同的 Linux 体验。而且,如果我的系统现问题,我可以使用 U 盘恢复! 创建单个可启动的现场版 Linux USB 很简单,你只需下载一个 ISO 文件并将其刻录到 U 盘。但是,如果你想尝试多个 Linux 发行版呢?你可以使用多个 U 盘,也可以覆盖同一个 U 盘以尝试其他 Linux 发行版。但这两种方法都不是很方便。 那么,有没有在单个...阅读全文

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

Redis 6 将采用全新协议RESP3 提供客户端缓存功能

缓存功能,保证存储在客户端内存的数据,在收到来自服务器的失效通知时才失效。 另外,当客户端和服务器的连接中断时,客户端无法接收到数据失效通知,这可能会导致服务现问题。针对这种情况,一般的做法是重新建立客户端和服务器之间的连接,并更新客户端当前的缓存。antirez 表示可以一直保持连接是最好的情况,但为了降低风险,Redis 服务器在与客户端断开连接时,会将失效通知发送给其他客户端。 这项名为”Client side caching” 的功能尚未正式确定名字,最后可能会被成为”Tracking”。Redis 作者还表示在 Redis 6 候选版发布之前,这些功能都会进行调整,希望社区能积极反馈意见。 由于 Client side caching 功能需要使用 RESP3 协议来支持实现...阅读全文

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

/debian/ jessie-backports main contrib non-free 1.2安装最新内核,及相关软件组件包,避免编译Hostapd错,依次执行如下命令: apt-get update apt-get install linux-image-4.3.0-0.bpo.1-amd64 apt-get install linux-headers-4.3.0-0.bpo.1-all-amd64 apt-get install pkg-config libssl-dev gettext openssl hostapd apt-get install libnl-genl-3-dev libnl-genl-3-200 libnl-3-dev libnl-3-200 2.编译、配置...阅读全文

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

Debian 上安装搭建 Shadowsocks 服务

源 $ vi /etc/apt/sources.list 然后在末尾添加 deb http://ftp.debian.org/debian Jessie-backports main 然后保存之后运行 $ apt-get update 然后就要去安装 dh-systemd 和 init-system-helpers $ apt-get -t Jessie-backports install "dh-systemd" $ apt-get -t Jessie-backports install "init-system-helpers" 安装上面的两个 packages 后还没有完成, 还有一些别的依赖需要确保安装上了 $ apt-get install --no-install...阅读全文

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

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

机会,并了解两件主要的事。 首先,Go 泛型是否有意义,能给用户带去怎样的惊喜,错误提示消息是否有价值;其次,很多人曾说过需要 Go 泛型,但他们不一定确切知道这意味着什么,那么泛型的设计草案是否以有用的方式解决了此问题。另外,假如有一个问题让人认为“如果 Go 具有泛型,我就可以解决此问题”,那么使用此工具是否可以解决问题? 至于具体的推进计划,Go 团队表示要根据从社区收集的反馈而定。如果设计草案受到好评,并且不需要进行重大更改,那么下一步将是正式的语言变更提案。 为了保证符合预期,如果每个人都对设计草案完全满意,并且不需要进行任何进一步的调整,则最早可以在计划于2021年8月发布的 Go 1.17 中添加泛型。不过可能存在无法预料的问题,所以这是一个乐观的时间表,团队也无法做任何明确...阅读全文

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

Kubernetes调度算法浅析

etcd数据库中。kube-scheduler通过api-server查看有哪些可用的pod。kube-scheduler通过一组算法过滤掉一部分不可用的pod或者node节点。kube-scheduler再通过更加严格的打分机制对所有的可用pod进行打分。通过打分选分数最高的pod,并将pod进行绑定之后存储在etcd中。node节点的kubelet接收到api-server指令进行pod创建。 kube-scheduler的预选(过滤)规则 kube-scheduler首先通过以下规则对所有node节点或者pod进行初步的过滤。 kube-scheduler的优选(打分)规则 在经过重重过滤之后,剩下的都是K8S集群可用的pod和node节点。之后kube-scheduler会根据另一套规则...阅读全文

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

GitHub 发布10月21日系统故障分析报告

GitHub 刚刚通过官方博客发布了 21 日“挂掉”的事件分析。GitHub 指此次事件发生的原因是在 10 月 21 日 22:52 UTC 进行日常维护——更换发生故障的 100G 光学设备时导致美国东海岸网络中心与美国东海岸数据中心之间的连接断开。 更具体地,GitHub 分析,虽然两地的连接在 43 秒内恢复,但这次短暂的中断引发了一系列事件,这才导致了长达 24 小时 11 分钟的服务降级。 为了大规模提高性能,GitHub 的应用程序将直接写入每个群集的相关主数据库,但在绝大多数情况下将读取请求委派给副本服务器的子集。GitHub 使用 Orchestrator 来管理 MySQL 集群拓扑并处理自动故障转移,Orchestrator 在此过程中考虑了许多变量,并在...阅读全文

Debian 环境下安装配置 Gitlab

/repositories/gitlab/gitlab-ee/script.deb.sh | sudo bash 安装的过程中会有个蓝色的窗口提示你输入名称,这个是gitlab的访问域名,因为默认通过nginx进行解析的时候,指向的是你配置的这个域名,并且通过80端口。安装完成后可以看nginx的conf文件。 sudo apt-get install gitlab-ce 3. 启动GitLab 这个会加载所有的配置,启动相应的服务。所以说,和网络上其他的安装教程来比,新版本安装起来实在是太爽了。 sudo gitlab-ctl reconfigure 配置 更换域名 如上图,域名被替换为域名了,但是之前是字符串git@debian...,因为在安装的时候,蓝色窗口弹的时候直接按了回车使用了默认值。修改方法如下...阅读全文

博文 2017-12-22 19:42:42 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

Ceph 基金会正式成立 接受 Linux 基金会的管理

工程活动通过传统的开源流程进行管理,并由Ceph领导团队监督。 创始顶级会员包括Amihan,Canonical,中国移动,DigitalOcean,Intel,ProphetStor Data Services,OVH,Red Hat,SoftIron,SUSE,Western Digital,XSKY和ZTE。 其他普通会员和准会员包括:Arm,平安科技,小桔科技(滴滴行), 中铁信息工程集团,Ambedded Technology,Croit GmbH,EasyStack,Intelligent Systems Services,Catalyst Cloud,QCT,欧洲粒子物理研究所,英国科学与技术设施委员会(STFC),莫纳什大学,希腊GRNET机构,南非射电天文观测台...阅读全文

Focalboard :一款开源、本地存储、免费的类 Notion 应用

是为团队协作所提供的自托管服务器版本。界面语言:这款开源软件的开发者是 Chen-I Lim,看名字应该是国人或者华裔。可能因为如此,这款还在不断更新的开源软件,提供了简体和繁体中文语言。在实际测试中,繁体设置正常,简体设置暂时不起作用。使用体验:Focalboard 应该还属于 Beta 阶段,在Mac 平台上操作会现闪退等 Bug. 推荐暂时体验,等产品优化一小段时间后使用。如果你的工作环境对公网服务有所限制,需要本地存储、离线版的、类Notion的项目管理软件,那么 Focalboard 值得你考虑。参考链接Focalboard官网Focalboard Github 地址NotionAnytype...阅读全文

博文 2021-09-16 19:50:29 少数派

固态硬盘的 PCIE、SATA、M2、NVMe、AHCI 如何理解

通道(就是两条PCI-E),而 M.2(Socket 3)的固态则可以走 PCI-E 3.0×4 通道。 需要说的是每条 PCI-E 3.0 的带宽是 8Gbps,而 SATA 3.0 的带宽则只有 6Gbps。 最后要说的就是经常被商家拿来当作卖点的 NVMe 了。其实 NVMe 跟 AHCI 都是一种规范,就像是在路上走如果没有交通规则的限制,那么肯定是一团拥挤肯定都走不动了,而 NVMe 和 AHCI 就像是这种交通规则。 AHIC 是针对 SATA 这种弯路的交通规则。然后开发者发现,这种针对弯路的规范,数据只能一个一个通过的规则用在宽敞的 PCIE 通道上面实在太浪费了,于是针对 PCIE 通道又开发了 NVME 规范,可以让很多数据同时通过。 总结:M.2 跟 SATA 其实可...阅读全文

博文 2019-01-23 13:28:23 debian.cn

使用 Go 语言的三个原因

阅读行为放在编写之上 。Go 通过工具和自定义来强制所有代码格式化成特定的样式。这消除了学习项目特定语言的方言时的困难,并有助于发现错误,因为它们 看上去 就是不正确。 由于专注于分析和机器辅助,Go 开发人员开始采用越来越多的工具来发现常见的编码错误,这种工具从来没有在 C 语言开发者中产生共鸣 – Go 开发人员 希望 工具帮助他们保持代码清洁。 并发性 十多年来,芯片设计师一直在警告 免费午餐将会结束 。从最低端的手机到最耗电的服务器,硬件的并行性以 更多、更慢、堆砌 cpu 内核 的形式现,但只有 当 你的语言可以利用它们才有意义。因此,并发特性需要内置到我们编写的要在今天的硬件上运行的软件中。 通过提供一种基于协程的 轻量级并发模型 ,或者是 Go 中已知的 goroutines...阅读全文

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

Debian GNU/Linux 诞生 27 周年

Software Guidelines),它用于指示哪些软件是可以被使用的。项目章程和行为准则充当了重要的补充,章程(Constitution)规定了项目结构,行为准则(Code of Conduct)为项目内的互动奠定了基调。 在这个特别的时刻,我们应该感谢 Debian 项目及其背后的所有人。如果你是 Linux 和开源的粉丝,今天也应该花一点时间来感谢 Debian,即便你不使用这款操作系统 —— 或基于它的发行版,因为 Debian 无疑对 Linux 和开源做了积极的贡献。Debian 对 GNU 和 UNIX 精神的坚持,也获得开源社区、自由软件和开源软件信奉者的支持。...阅读全文

博文 2020-08-17 08:32:32 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

Linux 5.11窗口合并期今天结束 引入大量新特性

率,以缓解WiFi和5G无线问题。- KASLR support for Loongson 64. 图形: - 初步支持 AMD Van Gogh APUs.- 初步支持 AMD Green Sardine APUs.- 以另一个 RDNA2 dGPU 的方式支持 Dimgrey Cavefish- 继续支持 Intel DG1 显卡上- 新驱动支持 Intel Keem Bay display- Intel Integer Scaling support.- Intel Big Joiner支持单端口 8K 输- Intel async page-flipping support.- Some performance improvements for the Radeon RX 6800...阅读全文

博文 2020-12-28 10:14:35 debian.cn

如何重启 Kubernetes 中的 Pods

} -n {namespace} -o yaml | kubectl replace --force -f - 在这个命令中,由于没有 yaml 文件,且启动的是 Pod 对象,我们先 get 当前运行的 pod 的 yaml 声明定义,通过管道重定向输到 kubectl replace 命令的标准输入,来达到上一条命令同样的效果。 总结,我们可以通过多种方式来重启对象,最通用的方式是使用 replace 命令,强制替换 Pod 的这个: kubectl get pod {podname} -n {namespace} -o yaml | kubectl replace --force -f - 这种方式,也适用于多种其他对象。值得一提的是,重启 Pod 并不会修复运行程序的 bug,想要解决程...阅读全文

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

Linux下多线程程序为什么消耗大量虚拟内存

你打算在程序代码中来设置这个东西,那么可以调用mallopt(M_ARENA_MAX, xxx)来实现,由于我们AuthServer采用了预分配的方式,在各个线程内并没有分配内存,所以不需要这种优化,在初始化的时候采用mallopt(M_ARENA_MAX, 1)将其关掉,设置为0,表示系统按CPU进行自动设置。 意外发现 想到tcmalloc小对象才从线程自己的内存池分配,大内存仍然从中央分配区分配,不知道glibc是如何设计的,于是将上面程序中线程每次分配的内存从1k调整为1M,果然不所料,再分配完64M后,仍然每次都会增加1M,由此可见,新版 glibc完全借鉴了tcmalloc的思想。【原文处: 陈斌的博客】...阅读全文

博文 2015-01-28 10:35:39 debian.cn

聊聊很重要的内核技术eBPF

在2018年的 Linux Plumber 大会上,eBPF成了亮点,有24个议题提到了 eBPF,可以预计eBPF会成为一大技术热点。 eBPF(Extended Berkeley Packet Filter) 的核心是驻留在 kernel 的高效虚拟机。最初的目的是高效网络过滤框架,前身是 BPF。 Linux kernel 3.18版本开始包含了eBPF,相对于 BPF 做了一些重要改进,首先是效率,这要归功于 JIB 编译 eBPF 代码;其次是应用范围,从网络报文扩展到一般事件处理;最后不再使用socket,使用map进行高效的数据存储。 根据以上的改进,内核开发人员在不到两年半的事件,做了包括网络监控、限速和系统监控。目前eBPF可以分解为三个过程: 以字节码的形式创建...阅读全文

博文 2020-08-16 11:08:44 debian.cn