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

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

境 首先,我们需要安装Node.js和Vue CLI,并创建一个Vue3项目。然后,我们需要安装Element Plus、Axios和ECharts等依赖库。 2. 设计页面 在设计页面时,我们需要遵循一些基本原,包括界面简洁明了、布局合理、交互友好等。我们可以使用Element Plus提供的UI组件来构建页面,以及使用ECharts展示数据统计报表。 3. 实现功能 在实现功能时,我们需要编写Vue组件,并调用Axios发送HTTP请求。同时,我们需要使用Vue Router进行路由管理,并使用Vuex进行状态管理。 4. 测试和优化 在完成开发之后,我们需要对应用程序进行测试,确保所有功能都能正常工作。如果有问题或性能瓶颈,我们需要对代码进行优化。 总结 通过这个示例,我们学习了如何...阅读全文

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

为何 Kubernetes 如此受欢迎?

Kubernetes 使用案例的公司。 Pokemon Go 是最流行的宣传 Kubernetes 能力的使用案例。在它发布之前,人们都觉得在线多人游戏会相当的得到追捧。但当它一旦发布,就像火箭一样起飞,达到了预期流量的 50 倍。通过使用 Kubernetes 作为 Google Cloud 之上的基础设施层,Pokemon Go 可以大模扩展以满足意想不到的需求。 最初作为来自 Google 的开源项目,背后有 Google 15 年的服务经验和来自 Borg 的继承- Kubernetes 现在是有许多企业成员的大型基金会(CNCF)的一部分。它继续受到欢迎,并被广泛应用于金融、大型多人在线游戏(如 Pokemon Go)以及教育公司和传统企业 IT 的关键任务中。考虑到所有,所有的迹象表明...阅读全文

博文 2017-11-07 23:58:26 debian.cn

Systemd 及 Service 文件含义解析

在服务(service)而不是(target)上,所以上述的 httpd 所依赖的仅仅是一些 target,因而也就没有 Requires 和 Wants 出现。 [Service] 可选择几种不同的服务启动方式,启动方式通过Type参数进行设置。 * Type=simple(默认值):systemd认为该服务将立即启动。服务进程不会fork。如果该服务要启动其他服务,不要使用此类型启动,除非该服务是socket激活型。 * Type=forking:systemd认为当该服务进程fork,且父进程退出后服务启动成功。对于常的守护进程(daemon),除非你确定此启动方式无法满足需求,使用此类型启动即可。使用此启动类型应同时指定 PIDFile=,以便systemd能够跟踪服务的主进程...阅读全文

博文 2021-02-17 10:02:50 joseph

开源简史基础:Linux基金会

员年费数量备注白金会员企业会员50万美元15黄金会员企业会员10万美元16白银会员企业会员5000-20000美元800+根据企业模年费不同个人会员个人会员99美元-- 可以看到主要的资金来源是上述四类,根据截止于2019年9月10日的数据,大体白金/黄金/白银(取中位数1万)的年费正常的话大概有:5015 + 1610 + 800*1 = 1710万美元,再加上大量的个人用户,资金来源相较于一般的项目还是能够提供较好的支持的。 白金和黄金会员 截止到目前位置,白金和黄金会员为31,虽然我们无法确认大量的白银会员,但是白金和黄金会员的企业类型,还是可以确认的。 会员类型会员数量通信企业软件开发商金融公司自动化/制造业组件生产商设备制造商其他白金15AT&T、腾讯TencentFujitsu...阅读全文

Golang 应用集成 Prometheus 统计数据支持

Prometheus 客户端公开了在暴露服务指标时能够运用的四种指标类型。查看 Prometheus 的文档 以获得关于各种指标类型的深入信息。 Counter(计数器 一种累加的 metric,典型的应用如:请求的个数,结束的任务数,出现的错误数等。随着客户端不断请求,数值越来越大。例如api_http_requests_total{method="POST", handler="/messages"} Gauge(计量器) 一种常的 metric,典型的应用如:温度,运行的 goroutines 的个数。返回的数值会上下波动。 例如 go_goroutines{instance="172.17.0.2", job="Prometheus"} Histogram(分布图) 可以理解为柱状图,典型的应用如...阅读全文

博文 2022-11-24 10:33:09 CSDN博客

架构师详解 Nginx 架构

引言:众所周知,Nginx 服务器是一个高性能的 Web 和反向代理服务器。Nginx 在激烈的 Web 服务器竞争中依旧保持良好的发展势头,一度成为 Web 服务器市场的后期之秀,这一切跟 Nginx 的架构设计是分不开的。 一. Nginx 模块化设计 高度模块化的设计是 Nginx 的架构基础。Nginx 服务器被分解为多个模块,每个模块就是一个功能模块,只负责自身的功能,模块之间严格遵循“高内聚,低耦合”的原。 核心模块 核心模块是 Nginx 服务器正常运行必不可少的模块,提供错误日志记录、配置文件解析、事件驱动机制、进程管理等核心功能。 标准 HTTP 模块 标准 HTTP 模块提供 HTTP 协议解析相关的功能,如:端口配置、网页编码设置、HTTP 响应头设置等。 可选...阅读全文

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

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

的资源一直不释放的话,那么其他阻塞的线程就都不能工作了。 非阻塞相反,强调的是线程之间并不互相妨碍,所有的线程都会不断尝试向前执行。 死锁、饥饿和活锁这三种情况表示的是多线程间的活跃状态,对于线程来说,以上的情况都是 “非友好” 的状态。 1、死锁一般是指两个或者两个以上的线程互相持有对方所需的资源,并且永远在等待对方释放的一种阻塞状态。例如有两个线程A和B同时共享临界区的资源C,当A占用C时,B处于阻塞状态,然而A的释放需要用到B的资源,这样一来,就变成了A一直在等待B,B也一直在等待A,互相之间永远在等待对方释放的状态。 一般来说,死锁的发生是由于程序的设计不合理导致,而且死锁很难解决,最好的方式就是预防。 2、饥饿是指某一个或者多个线程因为种种原因无法获得所需的资源,导致一直无法执行...阅读全文

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

Golang 中的 channel 通道详解

,dataqsiz 表示缓冲区的大小,对于无缓冲区通道而言 dataqsiz 的值为 0。如果 qcount 和 dataqsiz 的值相同,表示缓冲区用完了。__buf __缓冲区表示的是一个环形队列 。其中 **sendx 表示下一个发送的地址,recvx **表示下一个接收的地址。elemtype 是channel的中存放的具体类型,每一个通道都是一个具体类型的导管,也就是声明channel的时候需要为其指定元素类型。recvq 表示等待接收的 sudog 列表,一个接收语句执行时,如果缓冲区没有数据而且当前没有别的发送者在等待,那么执行者 goroutine 会被挂起,并且将对应的 sudog 对象放到 recvq 中。sendq 类似于 recvq,一个发送语句执行时,如果缓冲区已经满了,而且没...阅读全文

2017 年会是 Serverless 爆发之年吗

站)。一般来说包含客户端、服务端程序、数据库,服务端用 Java 开发完成,客户端用 JavaScript。 采用这种架构,服务端需要实现诸多系统逻辑,例如认证、页面导航、搜索、交易等都需要在服务端完成。如果采用 Serverless 架构来对该应用进行改造,架构如图所示: Serverless 架构相比于传统面向客户端的三层应用架构,有以下几方面的差异: 删除认证逻辑,用第三方 BaaS 服务替代; 使用另外一个 BaaS,允许客户端直接访问架构与第三方(例如 AWS Dynamo)上面的数句子库。通过这种方式提供给客户更安全的访问数据库模式; 前两点中包含着很重要的第三点,也就是以前运行在服务端的逻辑转移到客户端中,例如跟踪用户访问。客户端慢慢转化为单页面应用。 计算敏感或者需要访问...阅读全文

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

RabbitMQ 高可用实现镜像队列

: 可选参数,针对指定 vhost 下的 queue 进行设置 Name: policy 的名称 Pattern: queue 的匹配模式(正表达式) Definition:镜像定义,包括三个部分 ha-mode, ha-params, ha-sync-mode ha-mode: 指明镜像队列的模式,有效值为 all/exactly/nodes all:表示在集群中所有的节点上进行镜像 exactly:表示在指定个数的节点上进行镜像,节点的个数由 ha-params 指定 nodes:表示在指定的节点上进行镜像,节点名称通过 ha-params 指定 ha-params:ha-mode 模式需要用到的参数 priority:可选参数,policy 的优先级 ha-sync-mode:进行队列中...阅读全文

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

Git 介绍与使用详解

分支 4.2远程分支 git remote add 分支名 仓库地址 // 添加一个新的远程 Git 仓库 git fetch 远程分支 //从远程仓库中获得数据 git push origin master //将master推送到远程仓库 git remote rename test1 test2 //将 test1 重命名为 test2 git remote rm test//移除远程分支test 注意: 1、多人协同开发需要先执行 git pull拉取远程的改动,然后再push,如果拉下来代码有冲突,需要先修改冲突再提交 2、本地至少两个分支,master和develop,master负责线上版本,develop负责开发版本,如果有支线业务,新建分支,保证不影响主业务。每次发版后...阅读全文

博文 2017-02-25 09:00:27 程序员

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

。2024财年;国防部创建了零信任参考架构;美国国家安全局发布了一份Kubernetes 强化指南,专门描述了 Kubernetes 中零信任安全的最佳实践。随着这种噪音,零信任无疑吸引了很多营销关注。但尽管有噪音,零信任不仅仅是一个空洞的术语——它代表了对未来安全的一些深刻和变革性的想法。那么具体来说,什么是零信任,为什么它突然变得如此重要?零信任对 Kubernetes 用户意味着什么?什么是零信任?正如所料,零信任从根本上讲是关于信任。它是解决安全核心问题之一的模型:是否允许 X 访问 Y?换句话说,我们是否相信 X 可以访问 Y?当然,零信任中的“零”有点夸张。要使软件正常工作,显然某些东西需要信任其他东西。因此,零信任并不是完全消除信任,而是将信任降低到最低限度(众所周知的最小特权原)并...阅读全文

在 Kubernetes 上扩展 TensorFlow 模型

CRD。这里是一个分布式训练作业的[基本例子](https://github.com/kubeflow/tf-operator/blob/master/examples/v1/mnist_with_summaries/tf_job_mnist.yaml),它依赖于两个 worker,在没有 Chief 和 Parameter Server 的情况下进行训练。这种方法适用于实现 TensorFlow 同步训练策略,如 MirroredStrategy。 你看,除了标准的 Kubernetes 资源和服务(例如卷、容器、重启策略)之外,范还包括一个 **tfReplicaSpecs**,其中你定义了一个 worker。在容器化的 TensorFlow 代码中,将 worker 副本计数设置为 2...阅读全文

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

Linux:为什么那么多人讨厌 Systemd

Systemd在Linux社区引起了无限争议。一些Linux用户对systemd的反对绝不屈从,还有一些Linux用户对systemd喜爱有加,还有很多人满不在乎。近日,关于systemd的话题又出现在社区中,很多人分享了自己的想法。一时兴起,笔者梳理了几个比较经典的回答。 为什么不喜欢systemd? 不断地听到很多人抱怨systemd有多么不好,但它还是被极大地普及了,并且我在网上所读到的很多文章都在介绍systemd的好处,比如更快的启动时间和更完善的日志记录,据说过去在fedora-13上开机速度测试,upstart是27秒,而systemd仅用了24秒。 有人认为unix是做一件事,就把它做好,而systemd是把pid 1扩张到最大化。这可能是很多人讨厌systemd的重大原...阅读全文

你和 Linux 高手只差了一个 LFS

以篇幅不小,快一两天,慢可能要一两周你才能跟着把系统构建完。一次做完你也不见得能把知识完全消化。 然后,刚才我也提到了,为了让内容更精炼,更多的只是叙述和说明,并不会夹杂太多作者的思想和经验,看起来显得很枯燥。 最后,相信大家都不是太喜欢看教科书。当然,其实还有一个缺点,会给我们的学习带来比较大的阻力,这个我们后面会提到。 LFS 的定位 盘点了优缺点以后 LFS 的定位就很清晰了,它就是一本书,一本教科书。所以你不能要求它像小说般有趣。而这本书的受众是,广大的程序员,学生,Linux 用户,以及任何一个对此感兴趣的人。 如何开始? 如果你英文水平尚可的话,请直达 LFS 官网: http://www.linuxfromscratch.org/lfs/ ,开始你的上帝之旅吧。 如果你希望阅...阅读全文

博文 2017-07-17 17:45:59 debian.cn

Node.js Vs. PHP:你应该选择哪一个

。 2.托管和部署: PHP 应用程序可以在包括 Nginx 和 Apache 以及 Windows 和 Linux 平台在内的任何服务器上运行,这使得部署过程变得更容易,而 Node.js,需要具有 SSH 访问权限的虚拟服务器。因此,在没有任何控制台命令和 Secure Shell(SSH)知识的情况下,用 PHP 部署小型企业和个人应用会更好。 3.外部依赖: Node.js 依赖关系较少,用几行代码就可以设置一个 Web 服务器。但运行 PHP 应用程序,就需要外部服务器软件。用 Node.js 的开发人员只需要 NPM(节点包管理器)就可以下载 Node 模块,这些模块可以轻松地集成到应用程序中,提供额外的功能。 4. CPU 扩展任务: Node.js 可能在高吞吐量方面表现优异...阅读全文

博文 2017-12-23 23:15:39 debian.cn

Java 12 / JDK 12 正式发布

Mixed GC 如果 G1 Mixed GC 存在超出暂停目标的可能性,使其可中止。 Promptly Return Unused Committed Memory from G1 G1 及时返回未使用的已分配内存 增强 G1 GC,在空闲时自动将 Java 堆内存返回给操作系统。为了实现向操作系统返回最大内存量的目标,G1 将在应用程序不活动期间定期执行或触发并发周期以确定整体 Java 堆使用情况。这将导致它自动将 Java 堆的未使用部分返回给操作系统。而在用户控制下,可以可选地执行完整的 GC,以使返回的内存量最大化。 上述每一个新特性都有详细的说明文档,可以点击相应链接查看。 观望 JDK 13 根据 JDK 13 的迭代计划,预计将于 2019 年 9 月发布 —— Java 现在采...阅读全文

博文 2019-03-20 12:46:27 debian.cn

开源硬件是趋势,Arm 却走了一条与众不同的路

Cortex-M33 CPU 开始使用。这将使得 Arm 客户能够向基于 Cortex-M 的 IoT CPU 添加自定义指令,以针对特定市场量身定制芯片。 Dirvin 说到:“例如,有些数学算法是重复的。如果我们要使用一块硅存储片来维护它,那么拥有一条指令将会非常好。但这与 Arm 想要的不符。不过现在使用自定义指令后,我们的合作伙伴将能够针对该市场专门对芯片进行优化。” 为此,许多行业从业者和分析家将 Arm 的这些声明视为对 RISC-V 日益严峻挑战的回应。由于 RISC-V 具有相当吸引人的优势 —— 高度的自由性、轻量级和可扩展性,它已引起 NVIDIA 和 Qualcomm 等技术巨头的广泛关注。 Dirvin 强调,即使没有 RISC-V 的兴起,Arm 也会推出其政策变更。“创新...阅读全文

博文 2019-10-17 22:39:43 debian.cn

7 个月猛涨 12 亿美元,开源技术服务商成北欧最新独角兽 - OSCHINA

snaps 进行升级,也可以从官方网站下载。 主要更新内容 修复了接口方法上的调用层次结构以正确返回结果 如果 IDE 由于操作系统关闭而关闭,修复了每次启动时重复索引的问题 修复了在 WSL 2 中重新打开项目时导致 IDE 冻... 5 1 J 语言联合创始人 Roger Hui 因癌症去世 J 语言邮件列表昨日发布了 J 语言发明者之一 Roger Hui 去世的讣告。 我们从讣告得知,Roger Hui 在与癌症抗争数年后,于 2021 年 10 月 16 日星期六下午安详离世,生命的最后时光在临终关怀医院度过,享年 68 岁。 根据维基百科的介绍,J 语言是图灵奖获得者 Kenneth E. Iverson 和许国华 (Roger Hui) 于 1990 年代初发... 8 1...阅读全文

博文 2021-10-21 20:04:43 中文开源技术交流社区

开发者体验被重点关注:开发人员是关键资产 - OSCHINA

。其结果应该是,那些比较传统的公司的开发人员可以获得与其他公司使用云原生方法的开发人员一样的好处。希望这些实施方案能够帮助开发人员提高生产力,并且他们乐意留在这些公司,而不是转到其他岗位。 基于云的机器数据分析公司 Sumo Logic 的首席产品经理兼开源大使 Frank Reno 认为,开发人员是开源快速增长的因素之一。开发人员都希望在一个社区中与他人一起工作,与更大的团队合作,为更大的项目做出贡献。“特别是在 COVID-19 期间,我们不像以前那样紧密。因此,我们所能做的任何事情都是为了培养更好的体验,无论是对个人开发者还是一群开发者,都有很大的帮助。每个供应商和每个客户都应该认识到开发人员的重要性。” 为了达到这一目的,DataStax 战略副总裁 Bryan Kirschner ...阅读全文

博文 2021-12-28 14:45:52 中文开源技术交流社区

AWS EKS 添加IAM用户角色 - SRE运维博客

的联合身份用户。如果使用不属于 aws-auth ConfigMap 的 IAM 用户或角色访问 Amazon EKS 控制台,无法看到 Kubernetes 工作负载。也不会看到集群的概览详细信息。所以要向其他 AWS 用户或角色授予与集群交互的能力,您必须在 Kubernetes 中编辑 aws-auth ConfigMap。 因为部门有不通的角色,所以想基于不通的角色分配不同的权限,下面是记录添加一个对 EKS 只有只读权限的 AIM 用户。 {{< notice info "注意:" >}} 如果您在运行 AWS 命令行界面 (AWS CLI) 命令时遇到错误,请确保您使用的是最新版的 AWS CLI。 {{< /notice >}} 为 IAM 用户或角色配置权限 要查找具有主要...阅读全文

博文 2022-12-19 21:15:27 博客园

Linux 系统 vim 编辑器使用简明教程

出插入模式) a //在当前光标位置的右边添加文本 i //在当前光标位置的左边添加文本 A //在当前行的末尾位置添加文本 I //在当前行的开始处添加文本(非空字符的行首) O //在当前行的上面新建一行 o //在当前行的下面新建一行 R //替换(覆盖)当前光标位置及后面的若干文本 J //合并光标所在行及下一行为一行(依然在命令模式) 三、移动光标(vi命令模式下使用) vi 可以直接用键盘上的光标来上下左右移动,但正的vi是用小写英文字母 h 、 j 、 k 、 l ,分别控制光标左、下、上、右移一格。 按 Ctrl+b :屏幕往后移动一页。 按 Ctrl+f :屏幕往前移动一页。 按 Ctrl+u :屏幕往后移动半页。 按 Ctrl+d :屏幕往前移动半页。 按数字 0 :移...阅读全文

博文 2015-07-25 16:33:04 debian.cn

如何校验 Debian 软件包的 MD5

apt install debsums 现在可以了解如何使用debsums工具,来校验已安装软件包的MD5和了。 说明:我在下面的所有命令中使用了sudo,因为普通用户可能没有某些文件的读取权限。 此外,来自debsums命令的输出在左边显示了文件位置,在右边显示了检验结果。你会得到三种可能的结果,它们包括: OK――表明某个文件的MD5和是好的。 FAILED――表明某个文件的MD5和不匹配。 REPLACED――意味着某个特定文件已被来自另一个软件包的文件所更换。 如果你不用任何选项来运行,debsums会对照常的md5sum文件来校验系统上的每个文件。 $ sudo debsums 扫描文件系统、寻找MD5和 /usr/bin/a11y-profile-manager-indicator...阅读全文

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

Apollo 分布式配置中心详解

Apollo(阿波罗)是携程框架部门研发的分布式配置中心,能够集中化管理应用不同环境、不同集群的配置,配置修改后能够实时推送到应用端,并且具备范的权限、流程治理等特性,适用于微服务配置管理场景。 本文简单从功能特点做介绍,更详细的说明请参考Apollo配置中心介绍。本地快速部署可以参考这里。线上的演示环境从这里可以访问到: 106.54.227.205 (账号/密码: apollo/admin) Apollo 配置中心产生背景 大多情况下程序随着功能的复杂,程序的配置也会增多:包括各种功能开关、参数配置、服务地址信息配置等,同时开发人员对程序配置的期望值也越来越高:配置修改后实时生效,灰度发布,分环境、分集群的管理配置、权限控制、审核机制等。 在这样的大环境下,传统的通过配置文件、数据库...阅读全文

博文 2020-04-12 12:16:26 debian.cn

Kubernetes v1.21 新特性预览

Kubernetes 集群(Identity Provider,标识提供者)与外部系统(relying parties, 依赖方)所分发的服务账号令牌。CRIContainerLogRotation 进入稳定版本,kubelet 将会自动为 containerd 等 CRI 容器运行时轮换日志。结构化日志(Structured Logging)进入 Beta,很多组件的日志都改成以 JSON 格式记录,这样第三方日志处理系统就可以方便地从日志中解析出日志所对应的资源对象和资源属性。EfficientWatchResumption 进入 Beta,kube-apiserver 重启后 watch 缓存将更高效的恢复,更好的支持大模集群。CSIServiceAccountToken 进入 Beta,使得 CSI...阅读全文

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

王垠:如何掌握所有的程序语言

脚本语言的根本问题——他们的设计者不知道他们自己在干什么 采用脚本语言学编程,一个很严重的问题就是使得学习者抓不住关键。脚本语言往往把一些系统工具性质的东西(比如正表达式,Web 概念)加入到语法里面,导致初学者为它们浪费太多时间,却没有理解编程最关键的概念:变量,函数,递归,类型…… 不推荐 Go 语言的原因类似,虽然 Go 语言不算脚本语言,然而他的设计者显然不明白自己在干什么。所以使用 Go 语言来学编程,你不能专注于最关键,最好的语言特性。 掌握关键语言特性,忽略次要特性 为了达到我之前提到的融会贯通,一通百通的效果,初学者应该专注于语言里面最关键的特性,而不是被次要的特性分心。 举个夸张点的例子。我发现很多编程培训班和野鸡大学的编程入门课,往往一来就教学生如何使用 printf...阅读全文

博文 2017-07-10 10:13:17 debian.cn

为保护隐私而生 反取证操作系统:Kodachi

用。 学校机房(从 U盘 和 DVD 启动)使用 任何可以(从 U盘 和 DVD )启动使用的计算机上。 安装向导: 如何在你的硬盘驱动器上安装 Kodachi Linux: 从你的 USB 或 ISO 映像引导。 在桌面菜单上进入 – >系统 – > Refracta 安装程序 – >使用 su – >输入密码 r@@t00 – >简单安装 – >运行 GParted – >设备 – >创建分区表 – >应用 – >分区 – >新建 – >添加 – >应用所有操作 – >关闭 – >关闭 GParted 窗口 – >选择分区 – >确定 – >继续安装 – >关闭窗口 – > y – >配置主机及用户名!不要在这里更改用户名,否 Kodachi 脚本会出现错误 – >勾选前 2 个框允许...阅读全文

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

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

作逻辑 复制粘贴缓冲区 安装的话也很简单,在 mac 下直接 brew install tmux(前提需要安装 homebrew),Debian 下直接 sudo apt-get install tmux 在终端中输入 tmux 就可以打开一个新的 tmux session,tmux 的所有操作必须先使用一个前缀键(默认是 ctrl + b)进入命令模式,或者说进入控制台,就像 vim 中的 esc。 基本操作 信息查询 tmux list-keys 列出所有可以的快捷键和其运行的 tmux 命令 tmux list-commands 列出所有的 tmux 命令及其参数 tmux info 流出所有的 session, window, pane, 运行的进程号,等。 窗口控制 先来看看在...阅读全文

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

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

来看,DevOps 的采用率从 2015 年到 2016 年增加了约 8%,预计这一数字将在 2019 年大幅增长。 根据 Statista 的报告,很多商业组织正在采用 DevOps,2018 年增长率高达 17%,而 2017 年为 10%左右。 你可以在 RightScale 上查看完整的报告。Forrester 的报告中也明确提到了 2018 年将是 DevOps 年。我们看到了将影响来年 DevOps 发展的八个事实。 焦点从 CI 管道转到 DevOps 装配线 管道为应用程序提供了从源码控制到生产环境的一套完整的可视化视图。你可以在某个地方看到所有的内容。现在不仅要做 CI(持续集成),还要做 CD(持续交付)。企业正投入时间和精力,以便更多地了解如何自动化完整的软件开发过程...阅读全文

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

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

包已安装的情况下,合适的设备可以在使用 USB 端口连接到系统的同时自动设置使用无驱动后端。新的通用 open 命令新增加的 open 命令将作为 xdg-open(默认)或者 run-mailcap 的别名出现,具体实现由 update-alternatives 系统管理。它旨在作为命令行交互工具,帮助用户使用默认的应用程序打开文件;所使用的程序按照具体情况可以是图形界面程序。控制组 v2在 bullseye 中,systemd 默认使用控制组 v2(cgroupv2),它提供了统一的资源控制层级架构。如果有需要,可以使用内核命令行参数重新启用旧有的 cgroups;持久化 systemd 日志在 bullseye 中的 systemd 默认启用了持久日志的功能,日志文件存放于 /var...阅读全文

APISIX Ingress 如何使用 Cert Manager 管理证书

NodePort,你可以根据需要修改其类型,比如你的 Kubernetes 集群是云厂商托管的,可以考虑将其修改为 LoadBalancer 类型,以获取一个外部可达的 IP。 这里我们通过端口转发的方式将服务映射到本地。 kubectl port-forward -n ingress-apisix svc/apisix-gateway 8443:443 然后开始配置访问。 curl https://httpbin.org:8443/json --resolve 'httpbin.org:8443:127.0.0.1' -sk { "slideshow": { "author": "Yours Truly", "date": "date of publication", "slides...阅读全文

博文 2023-02-09 07:38:06 中文开源技术交流社区

Linux 容器 vs 虚拟机 — 谁更胜一筹

自从 Linux 上的 容器 变得流行以来,了解 Linux 容器和虚拟机 之间的区别变得更加棘手。本文将向您提供详细信息,以了解 Linux 容器和虚拟机之间的差异。 Linux 容器 vs 虚拟机 – 应用程序与操作系统 首先要了解的有关容器和虚拟机的一个事情是,一个运用于应用程序,另一个是为操作系统设计的。这就是为什么您经常会看到一些企业应用程序运行在容器上而不是自己的虚拟机上。在虚拟机上使用容器有一些优点。 容器最大的优点之一是可以预留比虚拟机少的资源。请记住,容器本质上是单个应用程序,而虚拟机需要更多资源来运行整个操作系统。 如果您需要运行 MySQL,NGINX 或其他服务,使用容器是非常有必要。但是,如果您需要在自己的服务器上运行完整的 LAMP 堆栈 ,运行虚拟机更好。虚...阅读全文

博文 2017-11-25 10:23:56 debian.cn

运维的未来:云服务兴起,运维人员会“下岗”吗?

派的运维需负责运行该系统。 老派的运维通常是伪君子。他们主张严苛的 SDLC,然后在维护基础架构时却绕过了同样的 SDLC 。新运维意味着基础架构即代码。配置变化即代码。这两个哪个也没能免于开发人员必须遵守的 SDLC。我们编纂变更请求,使用不可改变的基础架构和 AMI。没经历此进程,我们不会把改变推送到真实环境中。同样地,我们需要对合性和其他开发人员无法产生共鸣的 SDLC 要求进行编码,编到工具和进程中。进程记录并编纂价值。 老派运维总是同精益思维不一致。它完全是中断驱动——灭火后,一个接一个解决问题。同时,取得平衡非常重要。在集成环境中,使开发者团队能够 SSH 登录进 box 中或者将调试器附加到集合上,会阻止他们正确地调试应用程序吗?会促进痛苦移位吗?在运维思维和开发思维间取得平...阅读全文

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

分布式任务调度平台 XXL

任务,”CommandJobHandler”);业务方只需要提供命令行即可; 6、任务状态优化,仅运行状态”NORMAL” 任务关联至 quartz,降低 quartz 底层数据存储与调度压力; 7、任务状态范:新增任务默认停止状态,任务更新时保持任务状态不变; 8、IP 获取逻辑优化,优先遍历网卡来获取可用 IP ; 9、任务新增的 API 服务接口返回任务 ID,方便调用方实用; 10、组件化优化,移除对 spring 的依赖:非 spring 应用选用 “XxlJobExecutor” 、spring 应用选用 “XxlJobSpringExecutor” 作为执行器组件; 11、任务 RollingLog 展示逻辑优化,修复超时任务无法查看的问题; 12、多项 UI 组件升级到最新...阅读全文

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

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

. matchLabels 匹配上,否将没法注入信息。那么创建一下该 Pod 资源。 $ kubectl apply -f pod-busybox-hwy.yaml pod/busybox-hwy created $ kubectl get pod -n wanyang3 NAME READY STATUS RESTARTS AGE busybox-hwy 1/1 Running 0 15s 成功创建,进入到容器内验证一下 PodPreset 信息是否正确注入吧! $ kubectl exec -it busybox-hwy -n wanyang3 /bin/sh / # printenv |grep PODPRESET PODPRESET_MESSAGE=This is podpreset message...阅读全文

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

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

命令退出MySQL shell: MariaDB [(none)]>\q 下载并安装Observium Observium有两个版本:开源版本和订阅版本,开放源代码版本可以免费下载,功能较少,安全修复程度较低,而订阅版本附带额外的功能和硬件支持。 您可以使用以下命令从官方网站下载Observium的开源版本: wget http://www.observium.org/observium-community-latest.tar.gz 下载后,使用以下命令提取下载的存档: tar -xvzf observium-community-latest.tar.gz 接下来,将提取的目录复制到Apache Web根目录: cp -ar observium /var/www/html/ 接下来,重命...阅读全文

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

Go 语言的大版本更新:Go 2.0 安排上了

1确保提案所做的任何变更都可以帮助到尽可能多的 Go 开发者(使他们编写的代码更健壮、正确性更高等),条件2保证了变更将给使用者带来的影响降到最低。 至于条件3,如果提案不能满足该条件,它将不会被实现。即便这项提案能够解决一个很重要的问题,思路也很好,但在没有实现方案的情况下,它将会被拒绝,并需要重新起草。 下一步 在这篇文章发布时,Go 开发团队表示已经执行提案评估流程的第一步,并开始了流程的第二步,关于具体的提案可点此进行查看。 对于 Go 开发团队已经明确并通过的提案,将会继续实现(即评估流程的第3步)。开发团队表示希望在下一个发布周期的第一天(暂定于2019年2月1日)完成这些提案变更的实现,所以这次可能会在较早的时间开始进行,以留出两个月的反馈时间(2018年12月至2019年1...阅读全文

聊聊很重要的内核技术eBPF

或bpftrace等项目间接使用eBPF,这些项目在eBPF之上提供了抽象,并且不需要直接编写程序,而是提供了指定基于意图的定义的功能,然后使用eBPF实施。 如果不存在更高级别的抽象,需要直接编写程序。 Linux内核希望eBPF程序以字节码的形式加载。虽然当然可以直接编写字节码,但更常见的开发实践是利用LLVM之类的编译器套件将伪C代码编译为eBPF字节码。 在编写eBPF程序之前,需要简单了解几个概念。 1)map(映射) :BPF最令人着迷的方面之一是,内核上运行的代码和加载了该代码的程序可以在运行时使用消息传递相互通信。 BPF映射是驻留在内核中的键/值存储。任何BPF程序都可以访问它们。在用户态中运行的程序也可以使用文件描述符访问这些映射。只要事先正确指定数据大小,就可以在映射...阅读全文

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

Java Annotations详解

对舍弃的原因加以说明。 @Override @Override被用在方法前,用来说明覆盖了父类中的方法。假如一个方法被@Override修饰,但实际上它并没有覆盖任何方法,编译器会提示一个错误。 @Override并不是必须的,即覆盖父类方法时,也可以不在子类方法前面添加@Override。但是还是推荐使用@Override,因为这样做是有好处的,至少可以较少一些不必要的错误。如覆盖方法的方法名不对,并没有实现覆盖;或者有人修改了父类中的方法名,导致的子类中的覆盖失效,如果有@Override,编译器就会自动提示错误,从而避免了错误。 @SuppressWarnings 使用@SuppressWarnings能够是编译器对指定的方法放弃提示警告。如方法中引用了已经被舍弃...阅读全文

博文 2013-03-02 08:04:55 CSDN博客

树莓派 9 周年:你不知道的树莓派冷知识

的孩子们提供这种价格低廉、易于破解的计算机,从而培养他们对计算机编程的兴趣。2.目前至少已有 21 种不同型号的树莓派自 2012 年推出以来,树莓派基金会已经发布了 21 种不同型号的树莓派,如果算上 Raspberry Pi 4 B 的四个不同 RAM 容量的版本和 Raspberry Pi Compute Module 4 的所有 32 个不同存储组合版本,共有 52 种型号。(包括带有或不带有 Wi-Fi) 最初的 Raspberry Pi B 型仅具有 256 MB 的 RAM 和一个单核 700 MHz 处理器。当前的主流型号 Pi 4 B 具有高达 8 GB 的 RAM,四核 1.5 GHz CPU 和 USB 3.0 端口。其中,Raspberry Pi 400 于...阅读全文

博文 2021-03-11 17:03:55 diablo4

Debian 相比 Ubuntu 有哪些不同之处

,Debian似乎很成熟老练,但是讨论仍有时变成一场混战。过去,Debian被被描述成是一种对女性不友好的环境;而近来,将init换成systemd方面的争论变得非常激烈,结果好几个资深开发人员选择走人,而不是忍受虐待。 与此同时,Debian奉行精英民主,所有官方维护人员投票表决Debian领导者及其他所有议题。虽然被任命的岗位有时是权力来源,但是Debian工作人员普遍推行的领导方式还是提建议和实行民主,而不是直接发号施令。 Ubuntu有别于Debian的地方在于,Ubuntu为社区活动制定了行为范。时至今日,Ubuntu的社区管理员是Jono Bacon,他写过一本书,介绍《社区之道》,还投入了大量的精力来消除冲突。此外,每年都会选择技术委员会(Technical Board)和社区理事会...阅读全文

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

我要彻底放弃 Debian 操作系统!-Michael Stapelberg

CSDN 翻译,如需转载,请注明来源出处。作者独立观点,不代表 CSDN 立场。 热 文 推 荐 ☞小米“祭出” AIoT 神器!| 技术头条 ☞杠上百度?今日头条也做起搜索来了 | 畅言 ☞Google 再被罚! ☞95 后天才读数千页 Intel CPU 手册发现危及全球重大漏洞! ☞硬核接亲!程序员被新娘要求现场写代码,结果万万没想到…… ☞理工男的网红生意, 6000万月活50万条日更的背后, 内容链还能这样操作? ☞工作量不断增加的微软Azure,正缩小与亚马逊AWS的差距 ☞杨超越第一,Python第二! ☞68款大模机器学习数据集,涵盖CV、语音、NLP | 十年资源集 System.out.println("点个在看吧!");console.log("点个在看吧!");print...阅读全文

博文 2019-03-22 17:01:23 Michael Stapelberg

三个技巧 大幅减少 Docker 镜像体积

? $ docker exec -ti 9d8e97e307d7 sh / # 成功了!现在可以 attach 到正在运行的容器中了。看起来很有希望,但还有一个问题。 Alpine 基础镜像是基于 muslc 的 —— C 语言的一个替代标准库,而大多数 Linux 发行版如 Ubuntu、Debian 和 CentOS 都是基于 glibc 的。这两个库应该实现相同的内核接口。但它们的目的是不一样的: glibc 更常见,速度也更快; muslc 使用较少的空间,并侧重于安全性。 在编译应用程序时,大部分都是针对特定的 libc 进行编译的。如果你要将它们与另一个 libc 一起使用,必须重新编译它们。 换句话说,基于 Alpine 基础镜像构建容器可能会导致非预期的行为,因为标准 C 库是不一样的。你可...阅读全文

博文 2018-09-06 10:50:29 debian.cn

理解 Linux 的虚拟内存

。 内存寻址和分配 我们知道通过虚拟内存机制,每个进程都以为自己占用了全部内存,进程访问内存时,操作系统都会把进程提供的虚拟内存地址转换为物理地址,再去对应的物理地址上获取数据。CPU 中有一种硬件,内存管理单元 MMU(Memory Management Unit)专门用来翻译虚拟内存地址。CPU 还为页表寻址设置了缓存策略,由于程序的局部性,其缓存命中率能达到 98%。 以上情况是页表内存在虚拟地址到物理地址的映射,而如果进程访问的物理地址还没有被分配,系统会产生一个缺页中断,在中断处理时,系统切到内核态为进程虚拟地址分配物理地址。 功能 虚拟内存不仅通过内存地址转换解决了多个进程访问内存冲突的问题,还带来更多的益处。 进程内存管理 它有助于进程进行内存管理,主要体现在: 内存完整性:由于...阅读全文

博文 2018-11-25 11:03:49 debian.cn

“Debian 章程有毒” - OSCHINA

,谁才是 Debian 中的权威呢? 在 Debian 社区中只有两种官方角色:Debian 开发者(DD)和 Debian 维护人员(DM)。DD 由 Debian 章程所定义,而 Debian 维护人员是在2007年的总决议中才做的定义。 其中,DM 是一个没有多少权限的角色,他们只能为那些在 Maintainer 或 Uploaders 字段里包含他们的名字、并已经被 DD 指定了 DM-Upload-Allowed: yes 标记(意思为允许 DM 上传)的包执行上传的工作,除此之外他们没有别的权利,而他们访问 Debian 资源的权限也十分有限。 在 Debian 章程的定义中,Debian 开发者(DD)的主要职能是提交代码以及维护自己负责的包。他们具有进入 Debian 服务器...阅读全文

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

WebAssembly:无需容器的 Docker (下)

然地,为了让 php-wasmedge-aot 能够读取 index.php 文件,我们必须明确地向 WasmEdge 声明我们想要预先打开 images/php/docroot 以便在 Wasm 应用程序的上下文中作为 /docroot 进行访问。这显而易见展示了 Wasm 除了可移植性之外的最大优势之一。 我们得到了更佳的安全性,因为除非明确说明,否无法访问任何内容。$ wasmedge --dir /docroot:$(pwd)/images/php/docroot \ build-output/php/php-7.4.32/bin/php-wasmedge-aot -f /docroot/index.php

Hello from PHP...阅读全文

博文 2023-01-03 06:39:46 spider

深入了解Docker背后的namespace技术

/etc/hosts type ext4 (rw,relatime,errors=remount-ro,data=ordered) devpts on /dev/console type devpts (rw,nosuid,noexec,relatime,gid=5,mode=620,ptmxmode=000) 上面是在我的demo容器中看到的挂载点。为了创建一个新的mount namespace,我们使用CLONE_NEWNS标志位。大家可以注意到这个标志位名称有点奇怪,为什么不是 CLONE_NEWMOUNT或者CLONE_NEWMNT呢?这是因为mount namespace是Linux中的第一个命名空间,所以这里的这里的标记位参数名字有点不符合常,经常我们在编码实现一个新的特性或者应用的...阅读全文

博文 2015-05-17 10:03:00 debian.cn