Debian.cn 为您找到相关结果 46

通过Prometheus查询K8S集群Pod 的CPU、内存、网络指标

Kubernetes的kubelet组件内置了cadvisor,将Node上容器的指标以Prometheus支持的格式展示,可以通过这些指标计算得到更多有用的数据。 Kubelet的Cadvisor指标获取 在Prometheus的配置文件中,配置了相关的Target之后,这些指标就可以从Prometheus中查询到。 - job_name: 'kubernetes-cadvisor' scheme: https tls_config: ca_file: /var/run/secrets/kubernetes.io/serviceaccount/ca.crt bearer_token_file: /var/run/secrets/kubernetes.io/serviceaccount/to...阅读全文

博文 2020-08-13 20:41:03 debian.cn

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

Debian是使用非常广泛的系统,本篇文章第一部分讲述如何在Debian 8 (Jessie) 下面安装 Docker 环境,第二部分介绍了如何彻底的清理 Debian 8 上的 Docker 环境。 Debian 8 使用了3.16的内核,已经满足了docker运行的要求。但是因为安全方面的原因,docker.io 包并没有放在debian的stable源里面,而是放在了backports 源里面。为什么从jessie源里面移除docker.io包,简而言之,是因为go语言包版本的问题。 Debian backports的介绍和使用可以参考本篇文章,或者官方站点的介绍。 安装Docker包之前,先设置安装源。 这里我们使用了Docker官方提供的Debian安装源。配置方法如下。新建一个文...阅读全文

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

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

版本中,当 JFR 功能被打开,JVM 能以非常小的性能开销记录 Java 运行过程中产生的各种运行时数据。产生的 JFR 数据包含 JVM 运行时的各种微观细节,可以被 JMC(Java Mission Control) 进行分析。JMC 是一个桌面应用程序,通过解析 JFR 数据,JMC 能够高效快速定位线上产品环境的各种故障,分析内存分配热点,方法调用热点,方法调用超时分析,内存泄漏,IO 活动,线程活动等,帮助 Java 用户保证服务稳定。 据了解,阿里巴巴日常开发过程中遇到的很多问题都是通过 JFR 得到解决的,可以说是 Java 故障诊断利器。如上所言,JFR 功能在 OpenJDK 11 以及以上版本才有,但是在阿里巴巴的推动努力下,JFR 功能已经被 OpenJDK 8u 社...阅读全文

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

Linux 中使用 Fio 测评硬盘性能

Fio(Flexible I/O Tester) 是一款由 Jens Axboe 开发的用于测评和压力/硬件验证的自由开源的软件。它支持 19 种不同类型的 I/O 引擎 (sync、mmap、libaio、posixaio、SG v3、splice、null、network、 syslet、guasi、solarisaio,以及更多), I/O 优先级(针对较新的 Linux 内核),I/O 速度,fork 的任务或线程任务等等。它能够在块设备和文件上工作。 Fio 接受一种非常简单易于理解的文本格式的任务描述。软件默认包含了几个示例任务文件。 Fio 展示了所有类型的 I/O 性能信息,包括完整的 IO 延迟和百分比。 它被广泛的应用在非常多的地方,包括测评、QA,以及验证用途。它支持...阅读全文

博文 2018-08-15 19:18:24 debian.cn

基于thanos搭建分布式prometheus

prometheus存在单点问题,具体痛点可以这么描述: prometheus单机存储和抓取能力都有上限,容易单点故障。 虽然有一种方式是通过部署N个prometheus分别抓取不同的target来分摊压力的,但是grafana就要为不同的图表配置不同的prometheus地址,复杂程度比较棘手。 thanos+prometheus可以解决这个问题,它提供了一个核心能力: 1,thanos querier组件可以反向代理到N个prometheus,然后grafana直接指向thanos querier即可,thanos querier会从N个prometheus同时查询数据,返回满足Promql的数据结果; 2,如果N个prometheus抓取的数据存在重复的,那么thanos querie...阅读全文

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

如何为 k8s 节点增加污点,或者移除污点?

设置taint ``` kubectl taint node [node] key=value[effect] 其中[effect] 可取值: [ NoSchedule | PreferNoSchedule | NoExecute ] NoSchedule: 一定不能被调度 PreferNoSchedule: 尽量不要调度 NoExecute: 不仅不会调度, 还会驱逐Node上已有的Pod ``` 示例: ``` kubectl taint node node1 key1=value1:NoSchedule kubectl taint node node1 key1=value1:NoExecute kub...阅读全文

Proxmox VE 5.3正式版发布

Proxmox 5.3 默认包含CephFS, 可以直接用Web界面进行配置和管理。相比之下,Proxmox 5.2 版本用 pveceph install 安装,用命令行初始化pveceph init --network网络。在Proxmox VE web管理界面,点几下鼠标就能完成文件系统的创建和配置,以前的版本需要在命令行下完成。 这次官方发布更新的点比较多,这里只挑几个重要的介绍,想详细了解的同学请参考发布记录。 磁盘管理GUI界面(ZFS, LVM, LVMthin, xfs, ext4) CephFS管理GUI界面(MDS) ZFS over iSCSI 插件支持 Linux-IO 目标(LIO Target) 支持模拟运行ARM架构虚拟机(试验特性,搞开发的同学可以体验下...阅读全文

博文 2018-12-05 15:34:51 debian.cn

Go1.16 新特性:一文快速上手 Go embed

, _ := f.ReadFile("helloworld/hello2.txt") fmt.Println(string(data2)) } 同时既然能够支持目录读取,也能支持贪婪模式的匹配: //go:embed helloworld/* var f embed.FS 可能会有小伙伴注意到,embed.FS 也能调各类文件系统的接口,其实本质是 embed.FS 实现了 io/fs 接口。 只读属性 在 embed 所提供的 FS 中,我们可以发现其都是打开和只读方法: type FS func (f FS) Open(name string) (fs.File, error) func (f FS) ReadDir(name string) ([]fs.DirEntry, error) func (f FS...阅读全文

博文 2021-02-17 08:44:12 CSDN

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

SQL审核是保证数据库 DDL 和 DML 安全使用、SQL变更可追溯、降低线上数据事故概率的重要手段。去哪儿网开源的 Inception 工具有较大的使用基础,提供了相对完善的 API 接口,结合一些外层的操作界面,可以实现SQL审核、执行、备份和恢复功能,为DBA操作利器。本文详细介绍如何配置 Inception 和 Yearning 的整合。 Inception Inception是一个自动化运维工具,在Mysql前做一个审核和操作的屏障。跟Inception的交互是程序级别的,即通过Python或其他程序编程实现对Inception的命令调用,并解析结果。 Inception的文档地址:http://mysql-inception.github.io/inception-docume...阅读全文

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

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

。 BlueStore支持Ceph存储的所有的完整的数据和元数据校验。 BlueStore内嵌支持使用zlib,snappy或LZ4进行压缩。(Ceph还支持zstd进行RGW压缩,但由于性能原因,不为BlueStore推荐使用zstd)。 EC池现在完全支持覆盖,允许它们与RBD和CephFS一起使用。 ceph-mgr: ceph-mgr是一个新的后台进程,这是任何Ceph部署的必须部分。虽然当ceph-mgr停止时,IO可以继续, 但是度量不会刷新,并且某些与度量相关的请求(例如,ceph df)可能会被阻止。我们建议您多部署ceph-mgr的几个实例来实现可靠性。 ceph-mgr守护进程daemon包括基于REST的API管理。注:API仍然是实验性质的,目前有一些限制,但未来会成为API管理的基础...阅读全文

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

如何更改 Linux 的 I/O 调度器

Linux 的 I/O 调度器是一个以块式 I/O 访问存储卷的进程,有时也叫磁盘调度器。Linux I/O 调度器的工作机制是控制块设备的请求队列:确定队列中哪些 I/O 的优先级更高以及何时下发 I/O 到块设备,以此来减少磁盘寻道时间,从而提高系统的吞吐量。 目前 Linux 上有如下几种 I/O 调度算法: noop - 通常用于内存存储的设备。 cfq - 完全公平调度器。进程平均使用IO带宽。 Deadline - 针对延迟的调度器,每一个 I/O,都有一个最晚执行时间。 Anticipatory - 启发式调度,类似 Deadline 算法,但是引入预测机制提高性能。 查看设备当前的 I/O 调度器: # cat /sys/block//queue/scheduler 假设磁...阅读全文

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

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

在前几天,Go1.16rc1 抢先发布了。结合常规的 28 发布规律,其将会在 2021.02 月份左右发布正式版本。 这次 Go1.16 也带来了一些新特性或变更。那么作为一个 Gopher,想必不能错过这次的更新。 今天这篇文章将会带大家了解一下 Go1.16 的几个需要关注的特性。 废弃 io/ioutil Go 官方认为 io/ioutil 这个包的定义不明确且难以理解。所以 Russ Cox 在 2020.10.17 提出了废弃 io/ioutil 的提案。 大致变更如下: Discard => io.DiscardNopCloser => io.NopCloserReadAll => io.ReadAllReadDir => os.ReadDirReadFile...阅读全文

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

Kubernetes v1.21 新特性预览

Kubernetes v1.21 下个月就要发布了(v1.21.0 将于 4 月 8 日发布),本文梳理该版本带来的新特性,以便你为下个月的升级做好准备。PodSecurityPolicy 弃用PodSecurityPolicy(PSP)是 Kubernetes 1.8 开始就支持的 Beta 特性,大量应用于容器的安全策略控制。但由于其 API 不够灵活、认证模型不够完善且配置更新繁琐等缺陷,PodSecurityPolicy 将在 v1.21 正式弃用[1],并将在 v1.25 中从代码库中删除。已经使用 PodSecurityPolicy 的用户建议迁移到 Gatekeeper[2]。不可变 ConfigMap/Secret 进入稳定版当集群包含大量 ConfigMap 和 Secre...阅读全文

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

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

MySQL 8.0 系列的首个正式版 8.0.11 已发布,官方表示 MySQL 8 要比 MySQL 5.7 快 2 倍,还带来了大量的改进和更快的性能! 需要注意的是从 MySQL 5.7 升级到 MySQL 8.0 仅支持通过使用 in-place 方式进行升级,并且不支持从 MySQL 8.0 降级到 MySQL 5.7(或从某个 MySQL 8.0 版本降级到任意一个更早的 MySQL 8.0 版本)。作为替代方案,在升级之前请对数据进行全量备份。 本文简要介绍 MySQL 8 中值得关注的新特性和改进。 1. 性能:MySQL 8.0 的速度要比 MySQL 5.7 快 2 倍。MySQL 8.0 在这些方面带来了更好的性能:读/写工作负载、IO 密集型工作负载、以及高竞争...阅读全文

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

Kubernetes 部署 Nacos 1.4 集群 · 小豆丁

!版权声明:本博客内容均均为原创,每篇博文作为知识积累,写博不易,转载请注明出处。 目录[-] 参考地址: Nacos 官方文档 系统环境: Nacos 版本:1.4.1 Mysql 版本:8.0.19 Kubernetes 版本:1.20.1 项目示例地址: Kubernetes 中部署 Nacos 的部署文件 Kubernetes 中部署 Mysql 数据库部署文件 如果该文章对你有帮助,别忘了 Github 帮忙点颗星哦~ 一、什么是 Nacos Nacos 是阿里开源的服务注册中心与配置中心组件,能够帮助开发人员快速实现动态服务发现、服务配置、服务元数据及流量管理。同时能够与 SpringCloud、Kubernetes、Dubbo 等开源生态无缝集成。 Nacos 支持如下核心特性...阅读全文

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

Ruby 2.5.0 稳定版发布

, stringio, strscan, webrick, zlib 从标准库中提升到默认 gem。 升级 Onigmo 到 6.1.3。 添加 缺位运算符。 注意,Ruby 2.4.1 也包含这项改动。 把 bundler 纳入标准库。 更新到 Psych 3.0.2。 更新到 Rubygems 2.7.3。 更新到 RDoc 6.0.1。 词法分析程序由 IRB 更换为 Ripper,极大提升了生成文档的速度。 修正过去这些年存在的缺陷。 支持近些年 Ruby 的新句法。 更新到 Unicode 10.0.0。 Thread.report_on_exception 默认值现为 true,这对调试多线程程序很有帮助。[功能 #14143] IO#write 现接受多个参数 [功能 #9323] 详见...阅读全文

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

kubelet 绑核与不绑核的性能差别

同一台主机,同样的workload,kubelet 中配置CPU绑定后的性能变化: 绑核的配置放在 /etc/kubernetes/kubelet 中的这两行: ``` FEATURE_GATES="--feature-gates=CPUManager=true" CPU_MANAGER_POLICY="--cpu-manager-policy=static" ``` 绑核前: ``` procs -----------memory---------- ---swap-- -----io---- -system-- ------cpu----- r b swpd free buff cache si so bi bo in...阅读全文

使用 tmate 分享你的终端会话

不久前,我们写过一篇关于 teleconsole 的介绍,该工具可用于快速分享终端给任何人(任何你信任的人)。今天我们要聊一聊另一款类似的应用,名叫 tmate。 tmate 有什么用?它可以让你在需要帮助时向你的朋友们求助。 什么是 tmate? tmate 的意思是 teammates,它是 tmux 的一个分支,并且使用相同的配置信息(例如快捷键配置,配色方案等)。它是一个终端多路复用器,同时具有即时分享终端的能力。它允许在单个屏幕中创建并操控多个终端,同时这些终端还能与其他同事分享。 你可以分离会话,让作业在后台运行,然后在想要查看状态时重新连接会话。tmate 提供了一个即时配对的方案,让你可以与一个或多个队友共享一个终端。 在屏幕的地步有一个状态栏,显示了当前会话的一些诸如 ss...阅读全文

博文 2017-12-06 10:33:33 debian.cn

Linux系统诊断-内存基础

-cachedfree: 未使用的内存 memFree & swapFree in /proc/meminfoshared: tmpfs使用的内存 shmem in /proc/meminfobuffers:被内核缓冲去使用的内存cached: 被页缓存和slabs使用的内存buffers/cache: 表示buffers和cache的总和swap: 交换分区的使用量2.3 buffer和cache会使用内存吗?答案是肯定的,先来了解下buffer和cache。cache(缓存)官方定义是用来弥补高速设备和低速设备之间的访问速度不匹配而预留的一段空间,用来加快资源的访问。 简单讲就是读的更快。buffer(缓冲)是为了做资源写入整形,计算机遇到大量的“小规模IO”时,会将其整形为少量的“大规模IO”,降低写入次...阅读全文

博文 2021-02-11 14:22:42 SegmentFault 思否

协议介绍之深入了解 gRPC

HTTP header。HTTP header 各个 fields 使用 \r\n 分隔,然后跟 body 之间使用 \r\n\r\n 分隔。解析完 header 之后,我们才能从 header 里面的 content-length 拿到 body 的 size,从而读取 body。 这套流程其实并不高效,因为我们需要读取多次,才能将一个完整的 HTTP 请求给解析出来,虽然在代码实现上面,有很多优化方式,譬如: 一次将一大块数据读取到 buffer 里面避免多次 IO read 读取的时候直接匹配 \r\n 的方式流式解析 但上面的方式对于高性能服务来说,终归还是会有开销。其实最主要的问题在于,HTTP/1.x 的协议是 文本协议,是给人看的,对机器不友好,如果要对机器友好,二进制协议才是更好的...阅读全文

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

Docker 核心原理

子系统(即资源控制器) 1 2 3 4 5 6 7 8 root@lxkaka-server:~# lssubsys cpuset # 分配单独的 cpu 节点或者内存节点 cpu,cpuacct # 限制进程的 cpu 使用率;cpu 使用统计 blkio # 限制进程的块设备 io memory # 限制进程的 memory 使用量 devices # 控制进程能够访问某些设备 freezer # 挂起或者恢复 cgroups 中的进程。 net_cls,net_prio # 可以标记 cgroups 中进程的网络数据包,对数据包进行控制 hierarch 层级关系 由一系列控制组以一个树状结构排列而成,hierarch 通过绑定对应的子系统进行资源调度。hierarch 中的...阅读全文

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

服务监控系统 Prometheus 2.0 发布

服务监控系统 Prometheus 2.0 已发布,Prometheus 是一个 Go 语言开发的开源的服务监控系统和时间序列数据库。 Prometheus 2.0 有一个简单而强大的运营模式。然而,基础设施领域也没有停滞不前,像 Kubernetes 和 Mesos 这样的项目正在迅速改变软件的部署和管理方式。受监控的环境变得越来越活跃。 存储 Prometheus 2.0 有性能显着提高,几乎在所有方面都有所改进。查询延迟更加一致,特别是在高系列流失的情况下,它的规模更大。在不同的现实世界生产情景下测量的资源消耗也显着下降: 与 Prometheus1.8 相比,CPU 使用率 降低了 20% – 40% 与普 Prometheus1.8 相比, 磁盘空间使用率 降低了 33% – 50...阅读全文

博文 2017-11-09 10:44:45 debian.cn

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

来实现,直接在代码里写前缀的做法要严格避免,这样可维护性实在太差了。 如:系统名:业务名:业务数据:其他 但是注意,key的名称不要过长,尽量清晰明了,容易理解,需要自己衡量 10.线上禁止使用monitor命令 禁止生产环境使用monitor命令,monitor命令在高并发条件下,会存在内存暴增和影响Redis性能的隐患 11.禁止大 string 核心集群禁用1mb的string大key(虽然redis支持512MB大小的string),如果1mb的key每秒重复写入10次,就会导致写入网络IO达10MB; 12.redis容量 单实例的内存大小不建议过大,建议在10~20GB以内。 redis实例包含的键个数建议控制在1kw内,单实例键个数过大,可能导致过期键的回收不及时。 13 可靠...阅读全文

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

Prometheus 常用 PromQL 语句样例

PromQL 是 Prometheus 提供的一个函数式的表达式语言,可以使用户实时地查找和聚合时间序列数据。表达式计算结果可以在图表中展示,也可以在 Prometheus表达式浏览器中以表格形式展示,或者作为数据源,以 HTTP API 的方式提供给外部系统使用。PromQL 虽然以 QL 结尾,但是它不是类似 SQL 的语言,因为在时间序列上执行计算类型时,SQL 语言相对缺乏表达能力。而 PromQL 语言表达能力非常丰富,可以使用标签进行任意聚合,还可以使用标签将不同的标签连接到一起进行算术运算操作。内置了时间和数学等很多函数可以使用 选择序列选择指定指标名称的序列最新样本: my_metric_name选择指定指标名称序列5分钟的样本范围: my_metric_name[5m]筛选...阅读全文

博文 2021-02-09 11:07:15 51CTO博客

SpringCloud 之外的选择:国产JBoot v1.7.1 发布

JBoot 是一个基于 JFinal 和 Undertow 开发的微服务框架。提供了 AOP、RPC、分布式缓存、限流、降级、熔断、统一配置中心、Opentracing 数据追踪、metrics 数据监控、分布式 session、代码生成器、shiro 和 jwt 安全控制、swagger api 自动生成等功能。 Jboot v1.7.1 主要更新如下: 新增:redis 添加自定义序列化配置的功能 新增:Jboot.java 添加方法 service(Class clazz, JbootrpcServiceConfig config) 方便获取 rpc service 新增:JbootController 添加 getRawObject() 方便获取 api 传过来的 json 数据 优...阅读全文

博文 2018-10-24 13:19:05 debian.cn

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

文章目录 1、PodPreset 介绍2、环境、软件准备3、K8s 启用 PodPreset 配置4、PodPreset 注入信息示例4.1、匹配指定 Pod 加载配置4.2、匹配某个 Namespace 下所有 Pod 加载配置 1、PodPreset 介绍 PodPreset 是一种 K8s API 资源,用于在创建 Pod 时注入其他运行时需要的信息,这些信息包括 secrets、volume mounts、environment variables 等,我们可以使用标签选择器来指定某个或某些 Pod,来将 PodPreset 预设信息应用上去。使用 PodPreset 的好处就是我们可以将一些常用 Pod 预设信息配置为模板,这样就不需要显式为每个 Pod 提供所有信息,简化 Pod...阅读全文

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

Rust的模块化系统: 包Packages, 箱Crates, 和模块Modules

(); map.insert(1, 2); } 有命名冲突时, 引入父模块use std::fmt; use std::io; fn function1() -> fmt::Result { // --snip-- } fn function2() -> io::Result<()> { // --snip-- } 或用as解决命名冲突的问题use std::fmt::Result; use std::io::Result as IoResult; fn function1() -> Result { // --snip-- } fn function2() -> IoResult<()> { // --snip-- } 引入同一个模块module或包package中的多个元素use std::{cmp...阅读全文

博文 2021-02-20 08:49:51 知乎

Linux内存buffer和cache的区别

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

Debian Stretch 安装配置 Jenkins

本文将简单介绍 Debian 环境下,Jenkins 服务的安装与配置。通常Jenkins有两种方式安装,一种是通过官方提供的 Deb 包安装,另一种是用 tomcat 作为容器来运行 jenkins。这里我们使用Deb包方式,部署简单、后期的更新维护也很方便;这也是我们选择 Debian 部署 Jenkins 的原因。 安装 Jenkins 第一步:添加 jenkins 安装源 # wget -q -O - https://pkg.jenkins.io/debian/jenkins.io.key | sudo apt-key add - # vim /etc/apt/sources.list deb http://pkg.jenkins.io/debian-stable binary 第二...阅读全文

博文 2019-11-29 14:39:43 debian.cn

Kubernetes 1.16.0发布 新版本四大主题

Kubernetes v1.16.0 已经发布,该版本由 31 个增强功能组成:8 个进入稳定,8 个进入 Beta,15 个进入 Alpha。 四大主题如下: Custom resources:CRD 是对 Kubernetes 的扩展,用以服务于新的资源类型,自 1.7 版本以来,CRD 已经在 Beta 版中可用。在 1.16 版本中,CRD 正式步入通用可用性(GA)Admission webhook:Admission webhooks 作为 Kubernetes 扩展机制被广泛使用,并且自 1.9 版本以来已经在 Beta 版中可用。在 1.16 版本中,Admission webhook 也正式步入通用可用性(GA)Overhauled metrics:Kubernetes 广...阅读全文

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

Go 1.10 发布说明草案:预计于 2018 年 2 月发布

Go 1.10 还没发布,下面将简单介绍正在进行中的 Go 1.10 发布说明草案。Go 1.9 已于 2017 年 8 月发布,最新的 Go 1.10 预计将于 Go 1.9 发布六个月后 —— 2018 年 2 月发布。 Go 1.10 大部分的变更仍然集中在工具链、运行时和库的实现上。一如既往地,此版本依然会 保持与 Go 1.x 的兼容性 ,官方表示几乎所有的 Go 应用程序都能像以前一样继续编译和运行。 语言特性方面的改变 语言特性方面没有实质性的变化。 极端情况下,由无类型常量引起的变化已经弄清楚。因此,编译器也已进行升级,它可允许这样的索引表达式 x[1.0 << s] 通过编译,其中 s 是一个无类型常量。go/types 包也已完善。 方法表达式的语法 (grammar) ...阅读全文

博文 2017-11-18 13:59:12 debian.cn

SK Hynix量产首个4D NAND闪存:96层堆栈 速度提升30%

NAND,4D NAND闪存有很强的商业营销味道。 SK Hynix的4D NAND闪存首先会量产TLC类型的,核心容量分别是512Gbt、1Tb,都是96层堆栈,IO接口速度1.2Gbps,不过两者的BGA封装面积是不一样的,1Tb版显然更大一些。 至于QLC类型的,这个未来会是SK Hynix量产的重点,核心容量1Tb,但量产时间会在明年下半年,还需要一些时间。韩联社报道称,SK Hynix公司4日宣布正式宣布96层堆栈的4D NAND闪存,TLC类型,核心容量512Gb,与现有的72层堆栈3D NAND闪存相比,4D NAND闪存的核心面积减少了30%,单片晶圆的生产输出增加了50%,而且性能也更强——读取速度提升30%,写入速度提升25%。 根据官方所说,4D NAND闪存今年内会量产,而...阅读全文

博文 2018-11-05 23:47:54 debian.cn

JavaFX 11 发布,与 JDK 拆分后的首个正式大版

JavaFX 11 发布了,JavaFX 是一个强大的图形和多媒体处理工具包集合,它允许开发者来设计、创建、测试、调试和部署富客户端程序,并且和 Java 一样跨平台。由于 JavaFX 库被写成了 Java API,因此 JavaFX 应用程序代码可以调用各种 Java 库中的 API,例如 JavaFX 应用程序可以使用 Java API 库来访问本地系统功能并且连接到基于服务器中间件的应用程序。JavaFX 可以自定义程序外观,CSS 将外观和样式与业务逻辑实现进行了分离,因此开发人员可以专注于编码工作。值得注意的是,从 JDK 11 开始,JavaFX 模块与 JDK 分开提供 。 JavaFX 11 需要 JDK 10(必须是 OpenJDK 版本)或 JDK 11,建议使用 JD...阅读全文

博文 2018-09-20 13:09:25 debian.cn

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

、Hyperloglogs等。 Redis具备LRU淘汰、事务实现、以及不同级别的硬盘持久化等能力,并且支持副本集和通过Redis Sentinel实现的高可用方案,同时还支持通过Redis Cluster实现的数据自动分片能力。 Redis的主要功能都基于单线程模型实现,也就是说Redis使用一个线程来服务所有的客户端请求,同时Redis采用了非阻塞式IO,并精细地优化各种命令的算法时间复杂度,这些信息意味着: Redis是线程安全的(因为只有一个线程),其所有操作都是原子的,不会因并发产生数据异常 Redis的速度非常快(因为使用非阻塞式IO,且大部分命令的算法时间复杂度都是O(1)) 使用高耗时的Redis命令是很危险的,会占用唯一的一个线程的大量处理时间,导致所有的请求都被拖慢。(例如时间复杂度为O(N)的...阅读全文

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

ISTIO 1.1 正式版今日发布

Istio 1.1 已于今天发布了正式版,官方表示自推出 1.0 正式版后,用8个月的时间对整个产品进行了一些重大改进,其中包括来自华为,Google,IBM,VMware,RedHat,思科,SAP,Salesforce,Pivotal,SUSE,Datadog 和 LightStep 等厂商提供的修复和功能。 新特性主要有: 缺省关闭 Mixer 策略检查 从 Istio 的早期版本开始,关于如何关闭 Mixer 策略检查的讨论就没有停止过,现在社区已经达成共识,绝大多数场景中,对性能的需求,其重要性是大于对预检功能的需求的,因此 1.1 版本中,缺省安装会关闭 Mixer 的这一功能。 缺省开放 Egress 通信 新增 global.outboundTrafficPolicy.mod...阅读全文

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

Qt 5.9.4 正式发布:包含近 200 项 Bug 修复

Qt 5.9.4 已正式发布,这是继 5.9正式版 之后的第四个维护版本,未添加任何新功能,但提供了大量的 Bug 修复和性能改进。 与 Qt 5.9.3 相比,新的 Qt 5.9.4 包含近 200 项 Bug 修复 以及超过 500 项更改。有关重要更改的详细信息,请查阅发行说明。 开发团队表示,Qt 5.9 LTS 将很快进入“Strict” 阶段(在发布 Qt 5.11 分支之后)。届时,它仍将得到重要的 bug 修复和显着的性能改进。下一个 Qt 5.9.5 补丁版本计划于 2018 年 3 月底发布。 Qt 是一个跨平台的 C++ 图形用户界面应用程序框架。它提供给开发者建立图形用户界面所需的功能,广泛用于开发 GUI 程序,也可用于开发非 GUI 程序。Qt 是完全面向对象的,...阅读全文

博文 2018-01-25 10:38:53 debian.cn

kubelet 中垃圾回收机制的设计与实现

kubernetes 中的垃圾回收机制主要有两部分组成:一是由 kube-controller-manager 中的 gc controller 自动回收 kubernetes 中被删除的对象以及其依赖的对象;二是在每个节点上需要回收已退出的容器以及当 node 上磁盘资源不足时回收已不再使用的容器镜像;本文主要分析 kubelet 中的垃圾回收机制,垃圾回收的主要目的是为了节约宿主上的资源,gc controller 的回收机制可以参考以前的文章 garbage collector controller 源码分析。kubelet 中与容器垃圾回收有关的主要有以下三个参数:--maximum-dead-containers-per-container: 表示一个 pod 最多可以保存多少个已...阅读全文

博文 2021-02-05 17:48:22 知乎

Docker 17.06 社区版发布

时一次的频次来安排证书轮换。有了Docker CE 17.06,添加了立即强制证书轮换的一次性操作: docker swarm ca --rotate Swarm Mode事件 docker events可以用来从Docker中获取实时的信息。在编写自动化和监控应用时很有用。但是直到Dcoker CE 17.06,都不支持swarm mode的事件。现在docker events将会返回服务、节点、网络和和secret的信息。 专用的数据路线 docker init中添加了新的--datapath-addr标签,可以把swarm mode的管理任务和应用传递的数据隔离开来。这能把集群从IO贪婪的应用中拯救出来。如你用这种方式初始化集群: docker swarm init...阅读全文

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

Facebook 开源的一组 Linux 内核组件与工具

近日,Facebook 开源了一套解决重要计算集群管理问题的 Linux 内核组件和相关工具,这些项目覆盖了资源控制、资源利用、工作负载隔离、负载均衡、测量和监控等方面:BPF、Btrfs、Netconsd、Cgroup2、PSI、Oomd。 Facebook 表示这些项目现在已大规模用于其所有基础设施生产环境中,并用于其它许多企业组织的环境中。 BPF:https://facebookmicrosites.github.io/bpf/ BPF 是 Linux 内核中一种高度灵活、高效率的代码执行引擎,可以让字节码在各个 hook 点运行,以使用自定义代码。虽然 BPF 已广泛用于数据包过滤,但是 BPF 的指令集具有很强的通用性和灵活性,足以支持和允许除网络之外的众多使用场合,比如跟踪和安...阅读全文

博文 2018-11-24 09:27:14 debian.cn

架构师详解 Nginx 架构

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

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

Redis 官网宕机:错误提示无法连接 Redis

Redis 官网 redis.io 昨日罕见地宕机了一段时间。宕机原本不是什么新鲜事,但戏剧性的是网站的报错信息居然是连接不上 Redis。 Redis::CannotConnectError at / Error connecting to Redis on 127.0.0.1:6379 (Errno::ECONNREFUSED) ▲ 看到这,忍不住刷一句:禁止套娃! Redis 作者 Antirez 很快修复了问题,并解释了宕机的原因。原来是因为他最近在运行 redis.io 的实例上安装了 Try Redis(用于在线体验 Redis 数据库),可能是未能对 session key 进行良好的垃圾回收,从而导致内存累积,最终因为内存溢出(OOM )引发宕机。对此,Antirez 表示这...阅读全文

博文 2020-03-13 13:17:06 debian.cn

学会项目管理 工作少点难题

## 点击download:[学会项目管理 工作少点难题](http://www.51xuebc.com/thread-315-1-1.html) 项目管理无处不在,它不仅仅是一个岗位,更是一套科学的工作方法,能够很好地指导我们的工作与生活。但很多开发者缺少项目管理意识与技巧,为自己的工作增添了许多额外的阻碍,不仅项目推进不及预期,也让个人职场发展受限。本课程带你系统性学习项目管理,让你不管做开发还是转PM,都能游刃有余! 技术适合人群要求 刚毕业的大学生、在职的开发人员 想转型项目管理的开发者、任何对项目管理感兴趣的人员 技术储备要求 会使用Office、会下载和安装软件 import java.io.IOException; import java...阅读全文

InfluxDB 的 percentile 函数详解

官方文档的说明并不详细: https://jasper-zhang1.gitbooks.io/influxdb/content/Query_language/functions.html 实际百分位取第几位的值参考如下 PERCENTILE(field_key, N) 选取某个字段中大于N%的这个字段值。 如果一共有4条记录,N为10,则10%*4=0.4,四舍五入为0,则查询结果为空。N为20,则 20% * 4 = 0.8,四舍五入为1,选取的是4个数中最小的数。如果N为40,40% * 4 = 1.6,四舍五入为2,则选取的是4个数中第二小的数。 由此可以看出N=100时,就跟MAX(field_key)是一样的,而当N=50时,与MEDIAN(fiel...阅读全文

linux - Go语言中文网

都已使用完,新的读写请求过来后,会把内存中的部分数据写入磁盘,从而把磁盘的部分空间当做虚拟内存来使用。 测试磁盘的IO写速度: dd if=/dev/zero of=test.log bs=8k count=300000 测试磁盘的IO读速度: dd if=test.log bs=8k count=300000 of=/dev/null dd命令可以通用,但不够专业,也没有考虑到缓存和物理读的区分,测试的数据也是仅作参考,不能算是权威。 Linux 中直接 I/O 机制的介绍: ????https://www.ibm.com/developerworks/cn/linux/l-cn-directio/ 直接 I/O 的动机 在介绍直接 I/O 之前,这一小节先介绍一下为什么会出现直接 I/O...阅读全文

博文 2021-01-26 18:17:30 Golang中文社区

Go开发工程师:迎接上升风口,踏入蓝海行业!

、Sscan、Sscanf、Sscanln 4、Fscan 5、io包接口剖析与运用,自定义类型完成ioReade接口调用 6、自定义类型完成ioReade接口调用 7、ioWriter接口剖析与运用,自定义类型分离channel完成ioWriter接口调用 8、os.File 创立文件、写入文件,os.Open 翻开文件、读取文件 9、io.Copy并构造http完成下载网页 10、bufio包构造io.open翻开文件依照指定分隔符读取数据 11、ioWriteString 12、ioutil快速读取 13、json概述、struct tag常见用法、json解析与反解析实战(struct、slice、map)、json从文件中解析 14、xml与构造体解析处置 15、大文...阅读全文

Docker 核心原理

子系统(即资源控制器) 1 2 3 4 5 6 7 8 root@lxkaka-server:~# lssubsys cpuset # 分配单独的 cpu 节点或者内存节点 cpu,cpuacct # 限制进程的 cpu 使用率;cpu 使用统计 blkio # 限制进程的块设备 io memory # 限制进程的 memory 使用量 devices # 控制进程能够访问某些设备 freezer # 挂起或者恢复 cgroups 中的进程。 net_cls,net_prio # 可以标记 cgroups 中进程的网络数据包,对数据包进行控制 hierarch 层级关系 由一系列控制组以一个树状结构排列而成,hierarch 通过绑定对应的子系统进行资源调度。hierarch 中的...阅读全文

博文 2021-02-24 10:19:06 lxkaka