InfraPub 为您找到相关结果 633

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

最近的互联网线上事故发生比较频繁,9月19日网上爆料出顺丰近期发生了一起线上删库事件,在这里就不介绍了。 这里分享一下最近发生在我公司的事故,以及如何避免,并且如何处理优化。 该宕机的直接原因是使用 Redis 的 keys * 命令引起的,一共造成了某个服务化项目的两次宕机。 间接原因还有很多,技术跟不上业务的发展,由每日百万量到千万级是一个大的跨进,公司对于系统优化的处理优先级不高,技术开发人手的短缺。 第一次宕机 2018年9月13日的某个点,公司某服务化项目的 RDS 据库实例连接飙升,CPU 升到 100%,拒绝了其他应用的所有请求服务。 整个过程如下: 监控报警,显示RDS的CPU使用率达到80%以上,DBA介入,准备KILL慢SQL 1分钟内,没有发现明显阻塞的SQL...阅读全文

博文 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博客

为什么 Django 能持续统治 Python 开发世界

对于 Python 开发者来说,web 开发框架真可谓玲琅满目。然而 Django , 毋庸置疑的成为最受青睐的 web 框架。通过本篇博客,我来为大家讲解下为什么相比 Flask、Pyramid、Tornado、Bottle、Diesel、Pecan、Falcon 这些流行的 Python web 框架,Python 开发者更倾向于选择 Django。 再大肆宣扬Django之前,让我们简单了解一下web框架 Web框架是一个代码库,使开发人员更容易构建动态网站、Web应用程序和Web服务。 众所周知的是,每个网站都有一些通用的功能(如处理会话,据验证等等),一些您每次创建网站时都需要编写的功能。 这使开发任务平淡乏味。 然而,使用Web框架可以让您每次创建网站都需要重新编写通用功能代...阅读全文

博文 2017-07-21 14:15:11 debian.cn

三种SSL证书之间有什么区别

SSL指的是安全套接层协议(以及传输层协议TLS),位于 TCP/IP 协议与各种应用层协议之间,为据通讯提供安全支持。 ssl 在市面上多指的是安全证书,SSL证书是字证书的一种,因为配置在服务器上,也称为服务器证书。 字证书在广义上可分为:个人字证书、单位字证书、单位员工字证书、服务器证书、VPN证书、WAP证书、代码签名证书和表单签名证书。我们这里介绍SSL证书的类型与区别。 DV(域名型)SSL证书:只验证域名,适合个人网站、博客等站点使用;在网络黑客、钓鱼威胁层出不穷,域名型SSL字证书可有效保护通过互联网所发送的据,为网络账户登录、邮件等机密信息资讯提供安全防护。安全级别较低。  OV(企业型)SSL证书:验证网站所属单位身份,适合于中型企业级用户使用;企业型证...阅读全文

使用 tmate 分享你的终端会话

add-apt-repository ppa:tmate.io/archive $ sudo apt-get update $ sudo apt-get install tmate 你也可以从官方仓库中安装 tmate。 $ sudo apt-get install tmate 对于 Fedora,使用 DNF 命令来安装。 $ sudo dnf install tmate 如何使用 tmate 成功安装后,打开终端然后输入下面命令,就会打开一个新的会话,在屏幕底部,你能看到 SSH 会话的 ID,显示效果就像运行 tmux 一样。 $ tmate 要注意的是,SSH 会话 ID 会在几秒后消失,不过不要紧,你可以通过下面命令获取到这些详信息。 $ tmate show-messages...阅读全文

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

Debian 社区陷入尴尬 或群龙无首

没有人在做任何竞选活动。” 为什么大家都不愿担任领导人呢? Debian 领导人的主要职能有两项:一方面是代表 Debian 到世界各地,在会议上进行分享,同时处理项目与其它团队和公司的关系;另一方面是行政上的,领导人要管理项目资金,任命开发者在项目中担任不同角色,并负责项目中的一些节。 但是公开信中也指出,实际上,因为 Debian 项目把各种各样的权限都下放到社区成员中,导致领导人的实权实际上并没有多少。比如,个别开发者几乎可以完全控制他们维护的软件包;开发人员之间的技术分歧很大的时候,将由项目技术委员会处理;发布管理者与 FTP 主人有权最终决定项目实际发布的内容,以及何时发布;项目秘书负责确保遵循必要的程序;政策团队处理项目的大部分总体设计。 另一方面,Debian 领导人这个职位...阅读全文

博文 2019-03-14 11:05:23 debian.cn

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 博客园

Kubernetes 1.7 发布,安全强化、StatefulSet 更新及可扩展特性

三方的API。例如,其中添加了兼容Open Service Broker API的孵化特性service-catalog。与之相关的是,第三方资源(TPR,Third Party Resource)已经替代了用户资源定义(CRD,Custom Resource Definitions)。TPR提供了更整洁的API,并解决了在TPR Beta版期间出现的问题和极端案例。对此,CoreOS发布了一个博客帖子,其中提供了差异的更多节信息,并给出了一个创建CRD的走查过程。社区已规划在Kubernetes 1.8中移除TPR Beta版特性。容器运行时接口(CRI,Container Runtime Interface)实现从运行时中获取容器的度量指标,它已使用新的RPC调用得以改进。CRI的验证...阅读全文

博文 2017-07-19 12:23:15 debian.cn

开源图数据库 Dgraph 完成 300 万融资

据 Dgraph Labs 创始人 Manish Rai Jain 在其宣布 1.0.0 版本正式发布 的 文章 中透漏,他们已完成了由贝恩资本投资公司的 Salil Deshpande 领头的 300 万融资。凭借早期在基础设施软件和开源软件方面的经验,Salil 将加入 Dgraph 董事会。Jain 表示,这一轮融资正好是我们扩大云服务的时机,并继续建立世界上最先进的图据库。 Dgraph 是一个可扩展的,分布式的,低延迟的图据库,于 2015 年开源,最初是出于希望消除传统关系型据库的典型弱点而创建的。为了解决组织在据库增长超过单个服务器时面临的一些问题,Dgraph 以更有效的方式分割据,这使查询可以在没有通用视图的情况下执行。它还减少了网络调用和磁盘查询需要执行查询的...阅读全文

MariaDB 宣布已完成由阿里领投的 2700 万美元融资

11 月 1 日,开源据库 MariaDB 在官网正式宣布已完成由阿里巴巴领投的 C 轮 2700 万美元的融资。融资完成后,MariaDB 将具备更强的实力参与据库竞争。阿里巴巴集团旗下云计算部门阿里云已在今年 3 月成为 MariaDB 白金赞助商,双方后续将继续合作,为云端和新兴用例提供新的解决方案。 MariaDB 公司创始人 Michael Wideneus 表示:“ MariaDB 获得本轮融资,得益于基于我们为下一代应用而推出的一整套完备的据基础应用功能建设。同时,在发布基于人工智能的,面向云和自动化的新一代解决方案之后,这轮融资将使得 MariaDB 未来得以高速发展。” 阿里云副总裁李津也表示:“ MariaDB 正在成为企业级开源据库的标准。我们相信,在开源社区...阅读全文

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

Nginx 发布 mainline version 1.13.0

Nginx 发布了 mainline version 1.13.0(即通常说的开发版)。更新内容如下: Change: SSL renegotiation is now allowed on backend connections. 后端连接现在允许 SSL 重新协商 Feature: 用于邮件代理和流模块的 “listen” 指令的 “rcvbuf” 和 “sndbuf” 参 Feature: t 现在可以使用 “return” 和 “error_page” 指令返回 308 重定向 Feature: “ssl_protocols” 指令的 “TLSv1.3” 参。 Feature: 当出现登录信号时,nginx 现在会记录发送信号的进程的 PID Bugfix: 内存分配错误...阅读全文

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

深入学习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 博客园

欧洲核子研究组织(CERN)是如何使用 Linux 和开源的 - 云+社区

CERN 无需过多介绍了吧。CERN 创建了 万维网(World Wide Web)(WWW)和 大型强子对撞机(Large Hadron Collider)(LHC),这是世界上最大的 粒子加速器(particle accelerator),就是通过它发现了 希格斯玻色子(Higgs boson)。负责该组织 IT 操作系统和基础架构的 Tim Bell 表示,他的团队的目标是“为全球 13000 名物理学家提供计算设施,以分析这些碰撞,了解宇宙的构成以及是如何运转的。”CERN 正在进行硬核科学研究,尤其是大型强子对撞机,它在运行时 生成大量据。“CERN 目前存储大约 200 PB 的据,当加速器运行时,每月有超过 10 PB 的据产生。这必然会给计算基础架构带来极大的挑战,包...阅读全文

博文 2021-11-29 13:20:55 腾讯云

Kafka生产问题总结以及性能优化

一 Kafka可视化管理工具kafka-manager 安装及基本使用可参考:https://www.cnblogs.com/dadonggg/p/8205302.html 二 线上环境规划 JVM参设置 kafka是scala语言开发,运行在JVM上,需要对JVM参合理设置,参看JVM调优专题 修改bin/kafka-start-server.sh中的jvm设置,假设机器是32G内存,可以如下设置: export KAFKA_HEAP_OPTS="-Xmx16G -Xms16G -Xmn10G -XX:MetaspaceSize=256M -XX:+UseG1GC -XX:MaxGCPauseMillis=50 -XX:G1HeapRegionSize=16M" 这种大内存的情况一般...阅读全文

博文 2023-01-05 23:16:48 CSDN博客

2018 GitHub 最火技术趋势

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

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

Go 1.9 的新特性介绍

可能有问题。自go 1.6之后, 并发地读写map会报错,这在一些知名的开源库中都存在这个问题,所以go 1.9之前的解决方案是额外绑定一个锁,封装成一个新的struct或者单独使用锁都可以。 群众的呼声是响亮的,并发map在项目中大量使用,所以Go 1.9中在包sync加入了新的map, 查询、存储和删除都是平均常时间,可以并发访问。 Monotonic Time 先前的time包的实现都是基于wall time的,但是当机器的时钟调整后会有问题。 比如在计算duration的时候,如果时钟往回拨,可能导致end时间比start时间还早。 所以Go 1.9使用monotonic Time来实现大部分的time中的函,在计算duration的时候不会出现因为时钟调整出现的误差了。 设计文...阅读全文

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

Gitlab 从 12.1 版本开始不再支持 MySQL

Gitlab 官方 宣布 ,将从 12.1 版本开始不再支持 MySQL 据库。早在 2017 年 7 月,Gitlab 就计划将弃用对 MySQL 的支持。而目前这个决定将从 12.1 版本开始。 官方列出几个 MySQL 不能满足 Gitlab 需求的地方: 无法支持嵌套分组查询(详情)必须使用黑科技来提升 MySQL 对列的限制,这将导致 MySQL 拒绝存储据MySQL 无法添加 TEXT 类型字段的长度限制MySQL 不支持分区索引还有类似 Geo 为了解决上面这些问题,Gitlab 创建了许多专门针对 MySQL 的代码。 在某些情况下,这导致合并请求的复杂性要高一倍,因为它们必须支持第二个据库后端。 创建和维护这些代码会消耗我们的循环时间和速度,并且会降低我们的迭代值...阅读全文

博文 2019-07-03 22:41:20 debian.cn

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

2017 Linux 内核开发报告 Linux统治着计算机世界

。去年以来,来自 500 多家公司的 4300 多名开发者对内核做出了贡献。其中 1,670 个是首次贡献,约占贡献者的三分之一。 去年,Linux 内核的十大企业贡献者包括 Intel, Red Hat, Linaro, IBM, Samsung, SUSE, Google, AMD, Renesas 和 Mellanox。微软也仍在 贡献 ,但不再是最大的贡献者。 随着开发人员和公司量的增加,Linux 的开发速度持续加快。在 2015-16 年,每小时有 7.8 个补丁。去年内核每小时接受的平均更改次为 8.5 次。这不是打字错误,确实是每小时 8.5 次的代码更改或每天 204 次的代码更改。 因为更高质量的补丁正在被合并,并且社区比以往任何时候都更好地修复回归。此外,英特尔的 0...阅读全文

博文 2017-10-26 10:57:34 debian.cn

HTTP状态码详解

URI 的超链接及简短说明。因为部分浏览器不能识别307响应,因此需要添加上述必要信息以便用户能够理解并向新的 URI 发出访问请求。 如果这不是一个GET 或者 HEAD 请求,那么浏览器禁止自动进行重定向,除非得到用户的确认,因为请求的条件可能因此发生变化。 4xx 请求错误 这类的状态码代表了客户端看起来可能发生了错误,妨碍了服务器的处理。除非响应的是一个 HEAD 请求,否则服务器就应该返回一个解释当前错误状况的实体,以及这是临时的还是永久性的状况。这些状态码适用于任何请求方法。浏览器应当向用户显示任何包含在此类错误响应中的实体内容。 如果错误发生时客户端正在传送据,那么使用TCP的服务器实现应当仔确保在关闭客户端与服务器之间的连接之前,客户端已经收到了包含错误信息的据包。如果客户...阅读全文

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

十条关于 WordPress 安全性的小贴士

WordPress 本质上并没大家认为的那么危险,而且开发者也在努力工作,以确保危险漏洞能被快速修复。但不幸的是,WordPress 的成功使其成为众矢之的:如果你能攻破一个 WordPress 安装,那么可能会有以百万计的网站向你 “开放”。而且即使 WordPress 是安全的,也并不是所有的主题和插件都会有同样级别的开发重视程度。 有些人攻击 WordPress 是为了挑战或造成恶意的损害,这些行为都很容易被发现。最糟糕的罪魁祸首是那种潜入内容的行为,它们会将钓鱼网站深入到文件夹结构,或使用你的服务器发送垃圾邮件。一旦你安装的 WordPress 被破解,可能需要删除所有内容并从头重新安装。 庆幸的是,有很多简单的方案来提升安全性。下面提到的安全修复方案都不会超过几分钟。 1. 切...阅读全文

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

三个简单而优秀的 Linux 网络监视器

你可以通过 iftop、Nethogs 和 vnstat 这三个 Linux 网络命令,了解有关你网络连接的大量信息。iftop 通过进程号跟踪网络连接,Nethogs 可以快速显示哪个在占用你的带宽,而 vnstat 作为一个很好的轻量级守护进程运行,可以随时随地记录你的使用情况。 iftop iftop 监听你指定的网络接口,并以 top 的形式展示连接。 这是一个很好的小工具,用于快速识别占用、测量速度,并保持网络流量的总体运行。看到我们使用了多少带宽是非常令人惊讶的,特别是对于我们这些还记得使用电话线、调制解调器、让人尖叫的 Kbit 速度和真实的实时波特率的老年人来说。我们很久以前就放弃了波特率,转而使用比特率。波特率测量信号变化,有时与比特率相同,但大多情况下不是。 如果你只...阅读全文

博文 2017-11-07 00:07:38 debian.cn

Golang 面试题搜集

# Golang 面试题搜集 - 题目来自 [Github](https://github.com/lifei6671/interview-go/blob/master/README.md) ## Golang 常见面试题目解析 - [交替打印字和字母](https://github.com/lifei6671/interview-go/blob/master/question/q001.md) - [判断字符串中字符是否全都不同](https://github.com/lifei6671/interview-go/blob/master/question/q002.md) - [翻转字符串](https://github.com/lifei6671/interview...阅读全文

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

固态硬盘近年来也是随着计算机的发展而得到了迅速的发展,目前已经隐隐有要取代机械硬盘的势头。但是关于固态硬盘相关的概念实在是繁琐,很多人选购固态硬盘时,看到商家宣传NVMe,PCIE 却不懂是什么意思,今天我们就来为大家详解这些概念。 首先我们要把 M2 跟 SATA 放一起说,我们常说的 M2 其实是 M.2,更多是指一种尺寸或者插槽,就是上图中右边的尺寸较小的直接插主板上的这种,而 SATA 通常是指上图左边那个尺寸较大的一大块那种。 还要提的是M.2插槽也是有两种的,一种是金手指有两个缺口的Socket 2跟金手指只有一个缺口的Socket 3,这两种可以走不同的通道,我们后面会说到。 接下来要搞懂的是 SATA 跟 PCIE,这两个东西是指串行接口或者就是据走的通道,相信有人看到这...阅读全文

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

2021勒索软件报告:平均支付赎金增长171% 黑客最高要价3000万美元

知道他们可以通过勒索软件赚钱,并且在索要赎金方面变得越发大胆。常见的勒索软件攻击包括勒索软件运营商对据进行加密,并强迫受害者支付赎金以解锁据。在双重勒索中,勒索软件运营商会加密并窃取据,进一步胁迫受害者支付赎金。如果不支付,勒索软件运营商就会将据公布到泄漏网站或暗网,大部分据泄漏网站都托管在暗网,而这些托管站点由勒索软件运营商创建和管理。在新冠疫情下,医疗行业成今年勒索软件最大目标。不法之徒得知医疗机构需要继续营运以治疗新冠患者,无法承担系统被锁定的后果,继而通过勒索软件进行攻击。勒索软件Ryuk在众多勒索软件中尤其猖獗。利用这种手段最多的勒索软件是NetWalker。从2020年1月到2021年1月,NetWalker泄漏了全球113家受害企业的据(见下图),远远超过了其他勒索...阅读全文

三大亮点带你看 Linux 内核 5.6

原因。 同样,Ubuntu 20.04 LTS 将支持 WireGuard。 2、支持 USB4 Linux 5.6 也将支持 USB4。 如果你不了解 USB 4.0 (USB4),你可以阅读这份文档。根据文档,“USB4 将使 USB 的最大带宽增大一倍并支持多并发据和显示协议multiple simultaneous data and display protocols。” 另外,虽然我们都知道 USB4 基于 Thunderbolt 接口协议,但它将向后兼容 USB 2.0、USB 3.0 以及 Thunderbolt 3,这将是一个好消息。 3、使用 LZO/LZ4 压缩 F2FS 据 Linux 5.6 也将支持使用 LZO/LZ4 算法压缩 F2FS 据。 换句话说,这只...阅读全文

博文 2020-02-07 11:13:09 debian.cn

Proxy-Go v6.6 发布啦

。 跨平台性, 无论你是 widows,linux, 还是 mac, 甚至是树莓派, 都可以很好的运行 proxy. 多协议支持, 支持 HTTP(S),TCP,UDP,Websocket,SOCKS5 代理. TCP/UDP 端口转发. 支持内网穿透, 协议支持 TCP 和 UDP. SSH 中转,HTTP(S),SOCKS5 代理支持 SSH 中转, 上级 Linux 服务器不需要任何服务端, 本地一个 proxy 即可开心上网. KCP 协议支持,HTTP(S),SOCKS5 代理支持 KCP 协议传输据, 降低延迟, 提升浏览体验. 集成外部 API,HTTP(S),SOCKS5 代理认证功能可以与外部 HTTP API 集成,可以方便的通过外部系统控制代理用户. 反向代理, 支持直接...阅读全文

博文 2018-12-01 09:52:14 Go v6.6 发布 新增智能模式

如何远程升级 Debian 11 Bullseye 到 12 Bookworm

本文将介绍如何远程升级 Debian 11 Bullseye 到最新的稳定版 Debian 12 Bookworm。本升级流程简单、快速,适用于绝大部分运行在 公有云 上的主机实例。 在升级之前,建议妥善备份重要的据,InfraPub 有一个简单的备份策略,只需要一个文件列表 记录需要备份的文件及目录,即可实现快速备份, ``` ## cat /root/backup.list /var/lib/mysql /etc/mysql /var/www /etc/nginx ``` 随后使用一条命令即可备份: `tar czvf /tmp/backup.tgz --files-from /root/backup.list` 稳妥期间,备份时把据库类的服务停一下...阅读全文

开源 IP 地址定位库 ip2region 1.9.0 发布

ip2region 是准确率 99.9% 的 IP 地址定位库,0.0x 毫秒级查询,提供了 Java、PHP、C、Python、Node.js、Golang、C#、Rust、Lua 的查询绑定和 Binary、B 树、内存三种查询算法,妈妈再也不同担心我的 IP 地址定位! ip2region 1.9 更新如下: 据升级至 2019/05/02 的版本,国外的据增加了大量城市级别的据,ip2region.db 增长到 7MB。开源了 ip2region.db 的生成程序,目前提供了 java 语言的实现,在${ip2region_root}/maker 目录下,便于对 ip2region 的研究或者更改自定义生成配置等,后期会提供 C 语言的实现。 下载地址: Gitee...阅读全文

博文 2019-05-05 20:56:16 debian.cn

Linux Kernel 5.12-RC1标记为dontuse 严重到会毁掉整个根文件系统

当 Torvalds 将某些代码标记为“dontuse”,通常表明这个问题比较大。在 5.12 首个候选版本更新中,破坏了交换文件(swapfile)的处理。具体来说,更新后的代码会失去指向 swapfile 开头的正确偏移。用 Torvalds 自己的话来说,“交换还是会发生,但它发生在文件系统的错误部分,最终结果显然是灾难性的”。这样 Linux 内核如果想要将内存中的内容分页到磁盘上的时候,据就会落在相同磁盘和 swapfile 活跃的分区的随机部分上,而且这不是作为文件,而是作为垃圾直接写入到磁盘的原始扇区。这意味着不仅要覆盖现有文件中的据,还要覆盖相当大块的元据,这些元据的损坏很可能会导致整个文件系统无法挂载和使用。Torvalds 继续指出,如果你根本不使用 swap...阅读全文

AMD抢先发布7nm芯片"米兰":只为抢更多服务器市场份额

AMD表示,公司最新发布的“米兰”服务器芯片比目前最好的据中心芯片处理速度更快。据悉,AMD完成该芯片的设计,并委托台积电采用7nm芯片制造工艺来实现量产。很快,Intel也要反击,其将在未来几周推出最新的“冰湖”(Ice Lake)服务器芯片,这将是首款采用Intel 10nm制造工艺量产的服务器芯片(据说性能相当于7nm制造工艺的“米兰”芯片)。无论这两款芯片的速度如何,但AMD仍有望拥有一些优势,比如每个芯片上的计算内核更多,这使得芯片可以同时处理更多的软件应用程序。AMD服务器业务部门高级副总裁兼总经理丹·麦克纳马拉(Dan McNamara)表示,如果公司继续将客户反馈整合到新一代芯片中,就能保住领先地位。第三代EPYC 7003系列采用和锐龙5000系列同款的Zen3架构...阅读全文

博文 2021-03-16 10:06:31 cnBeta.COM

Debian 安装 fail2ban 方式SSH爆破攻击

使用 Debian 这么久,影响最深的小软件莫过于 fail2ban 了。对多服务器而已,对外开放的服务中,风险相对较高的莫过于 SSH 服务了, fail2ban 是一个轻量、有效、便捷的保护服务器免受暴力攻击的工具。 Fail2ban 使用 iptables 来阻止攻击者。 Fail2ban 的安装非常简单。Debian 及衍生版,可以直接从软件源安装: apt-get install fail2ban 安装结束后便进入可用状态,默认的设置就足够使用了。这就是 Debian 的风格,不需要不必要的人工干预,在不知不觉中就提升了你的效率。我们还是来看一下 fail2ban 的配置文件 /etc/fail2ban/jail.conf ,默认区段如下: [DEFAULT]ignoreip...阅读全文

博文 2019-03-27 16:45:58 debian.cn

Ruby 2.5.0 稳定版发布

Ruby 2.5 系列第一个稳定版本发布,新版包括了一系列新的特性和性能改进。主要变化包括:rescue/else/ensure 允许直接与 do/end 块使用,yield 增加 yield_self,Struct.new 能创建接受关键字参的类,最高级常量查询不再可用,移除所有 trace 指令提升 5-10% 性能,SecureRandom 将更偏向使用操作系统提供的 SSL 库等。 此版本包括个新特性和性能提升,例如: 新特性 允许在 do/end 中直接使用 rescue/else/ensure。[功能 #12906] 新增 yield_self 来使用当前上下文 yield 代码块。不同于 tap,此方法会返回代码块的运行结果。[功能 #6721] 支持测量分支代码覆盖和方...阅读全文

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

Netty+Nacos+Disruptor自研企业级API网关

Netty+Nacos+Disruptor自研企业级API网关 download:https://www.51xuebc.com/thread-566-1-1.html React18+TS+NestJS+GraphQL全栈开发示例 全栈开发是指一位开发人员可以熟练掌握前端、后端和据库等多个领域的技术,能够完整地开发一个应用程序。在本文中,我们将介绍如何使用React18+TS+NestJS+GraphQL这个技术组合来进行全栈开发。 技术选型 在开始开发之前,我们需要选择合适的技术栈。以下是我们所采用的技术: React 18:React18是React框架最新版本,它具有更好的性能、更好的可访问性、更好的代码拆分等特点,可以提高开发效率和应用性能...阅读全文

博文 2023-05-27 12:49:20 bianchengyuan123

Kafka 3.3 使用 KRaft 共识协议替代 ZooKeeper

Apache 软件基金会发布了包含许多新特性和改进的 Kafka 3.3.1。这是第一个标志着可以在生产环境中使用KRaft(Kafka Raft)共识协议的版本。在几年的开发过程中,它先是在 Kafka 2.8 早期访问版本中发布,然后又在 Kafka 3.0 预览版本中发布。KRaft 是一种共识协议,可以直接在 Kafka 中管理元据。元据的管理被整合到了Kafka当中,而不需要使用像ZooKeeper这样的第三方工具,这大大简化了 Kafka 的架构。这种新的 KRaft 模式提高了分区的可伸缩性和弹性,同时简化了 Kafka 的部署,现在可以不依赖 ZooKeeper 单独部署 Kafka 了。KRaft 使用了Raft共识算法的一种基于事件的变体,因此得名。​随 KRaft...阅读全文

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

Go 语言设计者 Robert Griesemer 和 Ian Lance Taylor 近日在 Golang 官方论坛发帖讨论关于泛型及其括号使用的问题。 他们提到很多人表达了对泛型语法的担忧,特别是在类型参声明和函实例以及泛型的括号选择方面。 常见的计算机键盘提供了四对单字符对称括号,分别是小括号 ( )、方括号 [ ]、花括号 { } 以及尖括号 < >。基于此,他们解释了目前泛型草案在示例代码中使用小括号的原因。首先,Go 使用花括号来划分代码块、复合字面量(composite literals)和一些复合类型,因此几乎不可能在没有严重语法问题的情况下将花括号用于泛型。至于尖括号,解析器在某些情况下要求 <> 需要 unbounded lookahead。 所以只剩下...阅读全文

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

使用 nvme-cli 工具来了解你的 NVMe 驱动器

Management T2 Trans Count : 0 Thermal Management T1 Total Time : 0 Thermal Management T2 Total Time : 0这为你提供了硬盘的当前温度、到目前为止的使用时间、不安全的关机次等等。格式化一个 NVMe 驱动器你可以用 nvme-cli 格式化一个 NVMe 驱动器,但要注意。这将删除驱动器上的所有据!如果你的硬盘上有重要的据,你必须在这样做之前将其备份,否则你将会丢失据。子命令是 format:$ sudo nvme format /dev/nvme0nX(为了安全起见,我用 X 替换了驱动器的实际位置,以防止复制粘贴的错误。将 X 改为 1 或 nvme list 结果中列出的实际位置。)安全地擦除...阅读全文

博文 2021-09-26 15:12:24 joseph

WebAssembly时代 Rust也想成为Web语言

-bindgen 的高级功能包括: 导入 JavaScript 结构、函和对象以在 WebAssembly 中调用。开发人员可以调用结构中的方法和访问属性。 将 Rust 结构和函导出到 JavaScript。可以导出一个 Rust struct,它会变成一个 JavaScript class,之后就可以传递结构而不是整型。 目前,WebAssembly 仅支持四种类型:两种整型和两种浮点型。但 JavaScript 和 Rust 开发人员经常使用更丰富的类型,例如 Rust 开发人员使用 Result 类型进行错误处理,这样,使用 wasm-bindgen 的时候,JavaScript 可以使用字符串或 Rust 函调用 Rust API 来捕获 JavaScript 异常。通过消除...阅读全文

博文 2018-04-10 12:38:26 debian.cn

西部数据的Zonefs将登陆Linux 5.6内核

西部据开发了有一段时间的Zonefs已经确定要在Linux 5.6内核中登场了,这并不是一个传统意义上面的通用文件系统(比如Ext4、NTFS),而是一个针对特定硬件设备的文件系统,它为分区式存储设备进行了高度的优化。 熟悉Linux的朋友应该知道,在Linux下面内核会将存储设备视为块设备,比如目前会将SATA存储设备视为/dev/sdX。传统文件系统是在这个块设备上面进行操作,而应用程序则是通过系统提供的接口对块设备上面的据进行访问。 但SMR HDD(叠瓦式硬盘)有一个毛病,它只有在顺序写入时才能正常发挥性能,一旦要进行据覆盖写入,就需要改写这块据所在区块内的所有磁道,造成严重的性能下降。传统的文件系统不会因为SMR HDD的特性而特别对待它,而Zonefs就是西部据对...阅读全文

SonarQube 8.4 发布,分析时间最多可减少 80%

类别的覆盖范围:A2-身份验证失败、A3-敏感据暴露、A4-XML 外部实体(XXE)和 A6-安全性错误配置。 XXE for C、C++ 和不安全函的使用 除了 Python,C 和 C++ 中也添加了 XXE 检测功能。 Java 和 C# 不安全反序列化检测 添加了针对 C# 和 Java 的反序列化漏洞的检测。不过针对 Java,这是一项商业功能。 22 条新的 Python 规则,更好的类型处理、Flake8 支持 Python 增加了 14 条新的 Bug 规则和 8 条新的 Code Smells,其中包括 4 条有关类型检查的规则。此外,Python 分析现在可以理解 TypeShed 类型,因此现有规则变得更加智能。同时,Flake8 用户现在可以轻松导入这些问题...阅读全文

博文 2020-07-13 12:55:22 debian.cn

Vultr日本节点VPS主机使用小结

Vultr是一家性价比非常高的VPS提供商,多达15个据库中心可以选择,并且全部使用SSD硬盘、KVM架构。网上有很多与DigitalOcean、Linode对比的文章,这篇文章主要是分享一下Vultr日本节点的使用感受。 之前看到很多文章对洛杉矶和日本节点进行了测试,不过最近从个人测试来看,电信到Vultr洛杉矶节点目前已经绕路一大圈,丢包也是惨不忍睹,估计是电信又在调整的原因,不知后期是否能恢复正常。 Vultr日本节点以前是限制200G流量,不过现在流量已经增加至400G/月,如果只是安心放网站是完全足够的,最便宜的配置只需要5$/月,1CPU、768MB内存、15GB存储、1000M共享带宽,性价比是非常不错的。 性价比虽不错,那对国内环境来说网络情况又如何,下面是不同运营商的...阅读全文

博文 2015-11-11 22:48:03 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

中国开源人访谈系列之:清风博主

关的行业,不是没想过,但已经熬不了夜了,还是多给年轻人一些机会嘛(好吧,其实是水平实在有限,啥也干不了)。 5.您使用开源软件对您的学生有没有产生影响呢? 答:对于中学生,基本没影响。一,我不是信息技术老师,只是个教地理的;二,即便是现在的中学信息技术教学,在现行的IT教育模式下,也没办法施加影响。 6.电脑高手在学校,大家日常工作是怎么看您的呢?会叫您“修电脑”吗? 答:硬件维修不至于找我,还有信息技术老师呢!不过,装个系统是常有的事,或者经常被问一些软件方面的问题,你懂的,交流始终不在一个频道,不胜其烦。再者,有一次犯了强迫症,把老婆电脑的重要据给清理掉,被下了不许碰她电脑的禁令,就更没有耐心管别人的事了。所以,强烈建议:喜欢清理电脑且有强迫症的同学(这样的人会很多吧),千万不要乱动老...阅读全文

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

Polar Signals 开源 Parca 以优化代码并减少云账单 - OSCHINA

Nick Ter... 2 1 10 月据库排行榜:Snowflake 上升三名;三巨头分同比下降最多 DB-Engines 10 月份流行度排行已更新(基于 9 月份的整体据变化)。 排名前十的据库和上个月的保持一致,分别是 Oracle、MySQL、Microsoft SQL Server、PostgreSQL、MongoDB、Redis、IBM Db2、Elasticsearch、SQLite 和 Cassandra。分方面,只有 MySQL 和 PostgreSQL 出现了明显的增长,分别增加了 7.24 和 9.47 分... 5 5 Python 3.11 Alpha 解释器现已登陆 Microsoft Store 自从微软逐步开放 Microsoft Store,不再限制开...阅读全文

博文 2021-10-09 12:23:58 中文开源技术交流社区

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

外媒 betanews 近日与一些企业高管进行了一些交流并得出结论称,开发者体验正经历一个优先级转变。即,云供应商和技术公司在开发者体验方面聚焦了更多的目光;这些公司正在投资和构建工具,以帮助开发人员更好、更快、更高效地工作。 开源据库公司 Percona 的产品高级副总裁 Donnie Berkholz 指出,发生这种焦点变化的原因在于,企业希望他们的开发人员更有生产力,对他们的工作方式更加满意,但他们也希望围绕技术管理和控制自己的命运。他们希望提供同样水平的速度和效率,但要跨越他们的 IT stacks 来设置东西。对于运行私有云的公司来说,这就是要与那些完全致力于公共云的竞争对手平起平坐。 并补充称,开发者体验投资将是为了使这种自助式的构建应用程序的方法能够发挥作用,并迅速发挥作用...阅读全文

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

分布式任务调度平台 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 发布

Golang Context 探究

在用 Golang 开发过程中,我们一定能在代码里很多函或方法都会传递 context, 也会经常遇到这样的报错 context deadline exceeded。你有想过或去探究过 context 到底是什么吗,为什么会遇到上述的报错。在这里我们就分析一下 context 是什么及用途。 首选 Golang 中的 context 值得是 context.Context 接口,Golang 在 1.7 版本中引入标准库的接口。context 主要用来在 goroutine 之间传递上下文信息,包括:取消信号、截止时间、key-value 等。 Context 定义 Context 接口定义如下 1 2 3 4 5 6 7 8 9 10 type Context interface...阅读全文

博文 2021-02-25 09:27:27 lxkaka

USB 4规范正式公布:基于雷电3 Type

今年3月初,USB-IF官方组织宣布了下一代 USB4 (注意不是USB 4.0)。现在,USB4标准规范正式公布了!USB绝对是科技史上应用范围最广的接口,而最新的USB4 又是这一接口历史上最大的变革。 USB4引入了Intel此前捐献给USB推广组织的Thunderbolt雷电协议规范,双链路运行(Two-lane),传输带宽因此又翻了一番,达到40Gbps,也就是和雷电3完全相同。 当然,要获得这样的传输带宽,需要经过认证的全新据线。 在引入新的底层协议的同时,USB4仍然保持了良好的兼容性,可向下兼容USB 3.2/3.1/3.0、雷电3,也就是现在的USB、雷电3设备和据线,仍然可以在USB4接口上使用。 USB4将只有USB Type-C一种接口形态(雷电3走的也是它...阅读全文

博文 2019-09-04 06:45:39 C接口 带宽达40Gbps