InfraPub 为您找到相关结果 394

Golang 面试题搜集

](https://github.com/lifei6671/interview-go/blob/master/question/q015.md) - [记一道字节跳动的算法面试题](https://github.com/lifei6671/interview-go/blob/master/question/q016.md) - [多协程询切片问题](https://github.com/lifei6671/interview-go/blob/master/question/q017.md) - [对已经关闭的的chan进行读写,会怎么样?为什么?](https://github.com/lifei6671/interview-go/blob/master/question/q018.md...阅读全文

OpenJDK 14 性能提升,但 OpenJDK 8 仍是王者

OpenJDK 14 已于近日 GA,其在性能方面是否有改进、以及有哪些改进引起了不少开发者的关注。本文将会介绍通过运行新的基准测试以考察从 OpenJDK 8 至 14 的所有主要发行版本,同时考察跨多个工作负载的 JVM 性能,以及 OpenJDK 14 与 JVM 先前版本相比性能如何。 此次测试通过在被测试的每个发行版上使用相同的 Java 字节码编译的 Java 程序来看 JVM 的性能,并使用被测软件包的参考/上游编译版本。为了保证测试受干扰的因素将降至最低,每次都使用相同的选项,除了交换用于测试每个发行版的 OpenJDK x86_64 Linux 构建之外,没有进行任何其他更改。 通过使用 Phoronix 的测试套件,测试内容包含从 SPECjbb 到 Java 2D...阅读全文

博文 2020-03-22 08:46:01 debian.cn

Google 关于 Go 2 的讨论

语化的标识符或添加二进制整型字面量”等轻微改变,因为“这些改变很容易实现”。 Cox谈到了重大变化,例如“对错误处理的额外支持,或引入不可变或只读值类型,添加某种形式的泛型或其他尚未被建议的重要主题。” 从Google的角度来看,Go 2的主要目标是“解决Go在可扩展性方面的重要不足”。Cox提到了生产期的扩展性(云环境中运行并发应用)和开发期的扩展性(大量的开发人员在一个较大的代码库上并行协作)。 大部分主题是介绍和解释用于修改Go的五个步骤: 有关此过程的更多详细信息,我们建议您阅读博客文章Toward Go 2。有兴趣为Go 2推荐新功能的用户请参考GitHub上的关于该语言的Wiki。 看英文原文:Google Discusses Go 2 感谢张卫滨对本文的审校。...阅读全文

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

在 Mac OS X 上安装 Nessus 10

/plugin_feed_info.inc 上述 PLUGIN_SET 后的数字(日期)并没有严格要求,根据日期来写以便识别版本(安装插件时会显示版本号)。 五、重启服务编译插件 (1)停止服务 sudo launchctl unload -w /Library/LaunchDaemons/com.tenablesecurity.nessusd.plist (2)启动服务 sudo launchctl load -w /Library/LaunchDaemons/com.tenablesecurity.nessusd.plist (3)返回浏览器看状态 此时 Web 页面提示:Establishing connection, please wait… 刷新一下浏览器,可以看到正在:Compiling plugins… (4)出现...阅读全文

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

持,图形驱动中的异步翻页,用于缓解射频干扰的新 "RFIM "驱动,围绕Rocket Lake和Alder Lake的新设备ID,WiFi驱动内的WiFi 6GHz频段支持,以及其他工作。 在 AMD 方面,主要围绕着改进电源管理和传感器处理,CPU 帧率频率不变性支持(虽然与 Schedutil 在一些系统上处于糟糕的状态),AMD 传感器融合枢纽驱动程序终于被合并,以支持Ryzen笔记本电脑上的传感器功能,以及其他各种改进。 Linux 5.11 还为不知名的设备提供了新的硬件支持,从失败的 OUYA 游戏机到 Guitar Hero Live PS3 / Wii U 扩展坞。 改进内容如下: 处理器: - 经历了 40 多轮的代码审之后终于整合了 Intel SGX enclaves...阅读全文

博文 2020-12-28 10:14:35 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

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

Linux Systemd被爆远程漏洞 CVE-2017

"dns_packet_new" 函数中, 它是一个 dns 响应处理程序组件, 它为本地应用程序提供网络名称解析。 根据星期二发布的一个公告, 当系统试图在攻击者控制的 dns 服务上找主机名时, 经过精心构造的恶意 dns 响应,可以远程崩溃 " systemd-resolved " 程序。 最终, 大量 dns 响应会溢出目标计算机的缓冲区, 从而使攻击者改写其内存,引发远程代码执行。这意味着攻击者可以通过其恶意的 dns 服务,在目标系统或服务器上,远程执行任何恶意软件。 ubuntu 开发者Chris Coulson在开发规范中这样描述, “直到 233版本的 systemd , certain sizes passed to dns_packet_new in systemd-resolved can...阅读全文

博文 2017-07-02 09:39:36 9445 影响多种Linux系统

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

操作系统:Debian Gnu/Linux Jessie 内核: linux-image-4.3.0-0.bpo.1-amd64 网卡:腾达(Tenda) W311M 150M Mini无线USB网卡 最近发现自己的Debian之前可以使用GNOME3下的networkmanager进行WIFI共享上网功能因为内核升级导致无法使用。无奈只好再次通过Hostapd来进行WIFI热点设置,同时为了更块的DNS解析,本次顺便也在本地安装了dnsmasq软件实现了本地化的DNS询服务,成功恢复了我的小本本作为热点的能力。总结方法如下: 1、准备环境: 1.1执行vi /etc/apt/sources.list,并添加如下源地址: deb http://ftp.cn.debian.org...阅读全文

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

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

软件。RagnarLocker排名第二,泄漏了全球26家受害企业的数据。值得一提的是,美国司法部在2021年1月宣布协调国际执法行动,瓦解NetWalker勒索软件团伙。由NetWalker运营商管理的托管泄漏数据的暗网域名已经无法访问。图片来自于 派拓网络全球威胁情报团队 Unit 42最后报告提出三项建议,分别是初始进入、备份和恢复流程以及安全监控。在初始进入方面,建议企业使用者保持对电子邮件安全的认识和培训,并在恶意电子邮件进入邮箱后立即识别和补救。其次企业要进行适当的修补管理,并审哪些服务可能暴露在互联网上。再者远端桌面服务要正确配置并确保安全,尽可能使用最低许可权,并制定策略对付勒索软件。在备份和恢复流程方面,企业需备份资料,并提前规划好适当的恢复流程。企业要确保所有备份都在离线...阅读全文

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的区别

在Linux的内存分配机制中,优先使用物理内存,当物理内存还有空闲时(还够用),不会释放其占用内存,就算占用内存的程序已经被关闭了,该程序所占用的内存用来做缓存使用,对于开启过的程序、或是读取刚存取过得数据会比较快。 一. 内存使用说明 Free 命令相对于top 提供了更简洁的看系统内存使用情况: [root@debian ~]$ free total used free shared buffers cached Mem: 1035108 1008984 26124 0 124212 413000 -/+ buffers/cache: 471772 563336 Swap: 2096472 842320 1254152 这里显示的单位是KB。 在Linux的内存分配机制中,优先使用物...阅读全文

Oracle Linux 8.0 发布

KVM。KVM 访客崩溃报告中添加其它信息,这使得在使用 KVM 虚拟化时更容易诊断和修复问题。 文件系统与存储 增强 Device Mapper MultipathingSCSI Multiqueue 驱动使块层可以通过 SSD 和多核系统很好地扩展性能 Stratis,一种管理本地存储的简单解决方案XFS 支持共享写时复制(COW)数据扩展区功能,因此两个或多个文件可以共享一组公共数据块。 此外还有关于网络、身份认证管理与安全等方面的内容,详情看发布说明: https://blogs.oracle.com/linux/announcing-the-release-of-oracle-linux-8...阅读全文

博文 2019-07-20 22:39:32 debian.cn

LXD 3.8 发布,下一代容器管理器

有手动创建或导入的镜像来改变这一点,仅作为缓存条目存储的镜像不会被复制。 CLI 覆盖默认项目 由于不得不经常使用 lxc 项目切换来在项目之间切换客户端,因此与多个项目进行交互可能会很繁琐。当想要在特定项目中执行的操作是一个简单的操作(如启动容器)时尤其如此。 LXD 3.8 现在在整个命令行客户端都有一个 –project 选项,它允许覆盖特定操作的项目。 ZFS 压缩支持 迁移协议提供了 ZFS 压缩支持。 此外还有大量 bug 修复与其它功能,详情看 发布公告 。 下载地址:https://linuxcontainers.org/lxd/downloads/ Debian社区网站内容即将同步至腾讯云+社区,邀请大家点击链接,一同入驻。...阅读全文

博文 2018-12-14 10:29:14 debian.cn

Debian 上安装搭建 Shadowsocks 服务

-cfb, aes-192-cfb, aes-256-cfb,**bf-cfb, camellia-128-cfb, camellia-192-cfb,**camellia-256-cfb, cast5-cfb, des-cfb timeout:连接超时时间,单位秒。要适中。 如果客户端有OpenWRT路由器等设备,推荐rc4-md5,性能更好;否则可以选用安全性更好的aes-256-cfb等,不过计算复杂度上升,会有性能的损失,不过对于PC机以及现在的只能手机来说没有任何问题。路由器性能较弱所以可以考虑rc4-md5 保存配置文件后,就重启 shadosocks-libev 服务 $ service shadowsocks-libev restart 然后就搭建完成了,看shadowsocks...阅读全文

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

DNSCrypt简明教程

文可见:DNSCrypt简明教程 - Jiajun的编程随想我们输入 jiajunhuang.com 之后,浏览器是需要将 jiajunhuang.com 翻译成IP,然后才能建立TCP连接的。而将域名翻译成IP地址, 就是DNS服务器的事情,但是有一个小问题,DNS是明文的。也就是说,尽管你使用了HTTPS,由于在建立TLS连接之前,你得先询域名所对应的IP,因此,还是可以通过监控你的DNS来推测你准备 访问什么流量,更坏一点的情况,可以给你伪造一个响应,返回错误的地址,这种情况就叫做“DNS污染”。所以我们需要使用DNSCrypt来加密我们的DNS通信:$ sudo pacman -S dnscrypt-proxy然后编辑 /etc/dnscrypt-proxy/dnscrypt...阅读全文

博文 2021-02-06 19:55:08 知乎

Debian Linux下LNMP环境配置

-mysql php5-memcache php5-curl 如上命令安装了php5-memcache的扩展,因此继续安装Memcached: apt-get install memcached 安装完成之后,可以使用“php5-fpm -v”看PHP的版本。 4.安装Nginx 我在安装的时候直接安装了Nginx的全部扩展功能(nginx-full),后边可能会有功能性的增强,所以在安装的时候直接全部安装了: apt-get install -y nginx-full 然后启动Nginx: service nginx start 放问地址http://ip,如果看到如下所示,就说明你的Nginx安装正常。 接下来配置Nginx,Nginx的配置文件在“/etc/nginx/sites...阅读全文

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

通过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...阅读全文

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

第8个LTS版本 Ubuntu 20.04 将带来哪些新特性?

Amazon 应用。Ubuntu 上的 Amazon 图标一直就挂在桌面,这早已被人吐槽,因为它比较鸡肋,相关调数据也反映了这一点。此次变化,特别是对于普遍不习惯首选 Amazon 购物的中国人来说,是一大好事。 Ubuntu 20.04 将使用 Linux 5.4 内核,该版本具有内核锁定模式和 exFAT 支持等新特性。 内核锁定功能主要是为了防止 root 帐户篡改内核代码,从而在用户态进程和代码之间划清界限。启用该功能后,即便是 root 帐户也无法访问某些内核功能,从而保护操作系统免受受损的 root 帐户影响。 exFAT 文件系统则是 FAT32 的替代者,它由微软开发,但是不仅用于 Windows 系统,目前 exFAT 在整个电子行业中都得到了广泛应用,特别是 SD 卡、USB 闪...阅读全文

博文 2020-01-27 09:36:30 debian.cn

Manjaro Linux的两项大胆举措

,FreeOffice 已经扩展到支持早期的 Microsoft 格式 DOC、XLS 和 PPT 以及标准化文档格式 OpenDocument Text(ODT)。 但是 FreeOffice 并不是开源的软件,Jack 认为这便是 Manjaro 的大胆之处。 虽然有人会认为 Linux 上应该使用开源项目,并且开发者需要能够看到 FreeOffice 的源码,并且在出问题时能够自行调试代码解决,但是这样影响办公效率的事情实际上很少会发生。“Linux 上拥有另一种选择的想法,尤其是使与 MS Office 的无缝协作更加现实的想法,应该被视为 Linux 桌面的巨大胜利。” Jack 分享了他在 Linux 上文档协作方面的困苦,后来其实也是到了需要求助于 Google Docs 之类的线上工具的地步...阅读全文

博文 2019-10-05 16:24:38 debian.cn

Debian 公布关于支持非 systemd 初始化系统的投票结果

项目认识到 systemd 服务单元是用于描述如何启动守护程序/服务的首选配置。但是,Debian 仍然是一个环境,开发者和用户可以在其中探索和开发替代的初始化(init)系统和 systemd 功能的替代方案。那些对探索此类替代方案感兴趣的人需要提供必要的开发和打包资源来完成这项工作。在运行依赖于某些 systemd 接口的软件时,有助于探索替代方案的诸如 elogind 之类的技术对于 Debian 仍然很重要。更重要的是,Debian 团队必须支持开发此类技术的开发者的工作,这些技术与 Debian 项目的其余部分之间存在重叠,例如,及时检补丁并参与讨论。软件包应包括服务单元或启动脚本,以启动守护程序和服务。软件包可以由软件包维护者自行决定使用任何 systemd 工具,只要这与其他...阅读全文

博文 2019-12-29 13:53:51 debian.cn

利用 NAT VPS 进行流量中转

转机的设置,并默认已按初始化配置文章对服务器进行了配置。本文将介绍四种方法:firewalld,UFW,iptables,和 socat(推荐)来进行流量中转,根据需要选取其中一种方法操作即可。亦可根据需要,将目标机设置为只允许中转机访问。其中,firewalld,UFW,iptables 均可对 TCP 和 UDP 进行转发,而 socat 还可以对包含域名的地址进行转发。 准备购买合适的 NAT VPS,此处提供一些服务商了解 NAT VPS 的基本使用方法,例如搞清楚 NAT VPS 一般需要在服务商处看端口映射的设置基础 Linux 操作知识,并了解 vim 编辑器的基本使用方法 使用 firewalld 进行中转此方法在 CentOS 下较为简便(CentOS 8 默认使用...阅读全文

博文 2021-03-11 21:16:11 Silearner

Golang Context 探究

&valueCtx{parent, key, val} } // context.valueCtx 中存储的键值对与 context.valueCtx.Value 方法中传入的参数不匹配 // 就会从父上下文中找该键对应的值直到在某个父上下文中返回 nil 或者找到对应的值 func (c *valueCtx) Value(key interface{}) interface{} { if c.key == key { return c.val } return c.Context.Value(key) } 在 context 传递数据的场景一般很有限,比较常见的使用场景是传递请求对应用户 token 以及用于进行分布式追踪的 trace id。不建议用来传递请求参数。 我用下面这种图来展示...阅读全文

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

字节跳动开源微服务中间件 CloudWeGo - OSCHINA

。 Netpoll Netpoll 是字节跳动内部的 Golang 高性能、I/O 非阻塞的网络库,专注于 RPC 场景。 RPC 通常有较重的处理逻辑(业务逻辑、编解码),耗时长,不能像 Redis 一样采用串行处理(必须异步)。而 Go 的标准库 net 设计了 BIO(Blocking I/O) 模式的 API,为了保证异步处理,RPC 框架设计上需要为每个连接都分配一个 goroutine,这在空闲连接较多时,产生大量的空闲 goroutine,增加调度开销。此外,net.Conn 没有提供检连接活性的 API,很难设计出高效的连接池,池中的失效连接无法及时清理,复用低效。开源社区目前缺少专注于 RPC 方案的 Go 网络库。类似的项目如:evio、gnet 等,均面向 Redis、Haproxy...阅读全文

博文 2021-09-09 13:56:42 中文开源技术交流社区

Linux系统诊断-内存基础

谈及linux内存,很多时候,我们会关注free,top等基础命令。当系统遇到异常情况时,内存问题的根因追溯,现场诊断时,缺乏深层次的debug能力。本篇幅不做深层讨论,能把当前系统的问题描述清楚,是每个SRE应该具备的最基础能力。free========2.1 free命令原理free是通过看 /proc/meminfo 来获取内存的使用情况。但是 /proc/meminfo 这个文件又是怎么来的?我们先了解下 /proc 目录:/proc 是一个虚拟文件系统,该目录下的所有文件都是伪文件,该类文件只存在于内存中,并不占用空间——使用 du -sh 即可验证,该模具路下的磁盘占用都是0。/proc 下的所有文件都是内核调用proc_create() 接口来创建的虚拟条目。/proc 中...阅读全文

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

Jono Bacon: GPL 没落了吗?

系、构建联盟,找到并解决行业问题。 在这个峰会上,有一个分组研究,在其中,与会者被分成小组,被要求给一个真实存在的核心的开源技术推荐一个开源协议。每个小组都给出了回应。不到十分之一的小组推荐了宽容许可证,没有人推荐 GPL 许可证。 我看到了开源行业对于 Apache 协议以及 MIT 协议的逐步认可,但是他们却对花时间理解、接受和熟悉 GPL 这件事高高挂起。 在这几年里,这种趋势仍在蔓延。除了 Black Duck 的调之外, 2015 年 GitHub 上的开源协议调 也显示 MIT 是人们的首选。我还能看到,在我工作的 XPRIZE (我们为我们的 Global Learning XPRIZE 选择了开源协议),在我作为社区领导顾问的工作方面,我也能感觉到那种倾向,因为越来越多的...阅读全文

博文 2017-08-04 08:03:43 debian.cn

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

述。 Go 1 和 Go 2 之间的主要区别在于主导权的不同。谁将影响设计,又该如何做出决策?我们都知道,Go 1 的诞生是小团队努力的结果,受外部影响不大;而到了 Go 2,尤其是经过将近 10 年的发展后,Go 语言的生态已经十分庞大,因此它也更多地受到社区的驱动和影响。经历了这些,Go 开发团队也了解到了更多一开始不知道的与语言特性和库相关的知识 —— 这些都来自于 Go 社区的反馈。 2015年,Go 开发团队引入了提案流程,以收集特定类型的反馈:针对语言和库变更方面的提案。由 Go 开发团队高级成员组成的委员会定期审、分类和决定社区提交的提案。这个流程十分有效,但作为该过程的一部分,他们忽略了所有不向后兼容的提案,只是将其标记至 Go 2。到了2017年,Go 开发团队也停止进行...阅读全文

Debian 相比 Ubuntu 有哪些不同之处

更灵活的安装程序。 管理和程序包管理方面的区别 Debian和Ubuntu都鼓励使用根帐户用于管理,使用受限制帐户用于日常计算,这一点不足为奇。然而,选择的安全模式不一样。 在Debian中,用户通常通过直接登录进入到根帐户来执行管理任务,然后尽快再次注销,以便缩短安全隐患期。不过,Ubuntu隐藏了根密码;不是使用sudo,而是允许至少1个用户输入自己的密码,以便下达管理命令。 Debian的程序包主要分为三大类:测试版、稳定版和不稳定版。新的程序包进入稳定版,然后在经过调试后转变成测试版。官方版本准备好后,处于测试版的现有程序包接受进一步的检,最后成为新的稳定版。 近些年来,官方、甚至非官方增添了另外一些程序包,比如Backports、Experimental、Security、Old...阅读全文

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

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

"] Dockerfile 的第一部分创建了三个层,然后这些层被合并并复制到第二个阶段。在第二阶段,镜像顶部又添加了额外的两个层,所以总共是三个层。 现在来验证一下。首先,构建容器: $ docker build -t node-multi-stage . 看镜像的历史: $ docker history node-multi-stage IMAGE CREATED BY SIZE 331b81a245b1 /bin/sh -c #(nop) CMD ["index.js"] 0B bdfc932314af /bin/sh -c #(nop) EXPOSE 3000 0B f8992f6c62a6 /bin/sh -c #(nop) COPY dir:e2b57dff89be62f77… 1.62MB...阅读全文

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

细数k8s支持的4种类型的container - 侃豺小哥

beta版,因此默认情况下已启用) 本节中的示例演示了临时容器如何出现在 API 中。 通常,您可以使用 kubectl 插件进行故障排,从而自动化执行这些步骤。 临时容器是使用 Pod 的 ephemeralcontainers 子资源创建的,可以使用 kubectl --raw 命令进行显示。首先描述临时容器被添加为一个 EphemeralContainers 列表: { "apiVersion": "v1", "kind": "EphemeralContainers", "metadata": { "name": "example-pod" }, "ephemeralContainers": [{ "command": [ "sh" ], "image": "busybox...阅读全文

博文 2021-08-20 11:45:32 博客园

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

有 30 分钟的时间进行支付,如果 30 分钟之内没有支付成功,那么这个订单将进行异常处理,这时就可以使用延时队列来处理这些订单了。 2)订单完成1小时后通知用户进行评价。 实现思路:发送延时消息时先把消息按照不同的延迟时间段发送到指定的队列中(topic_1s,topic_5s,topic_10s,…topic_2h,这个一般不能支持任意时间段的延时),然后通过定时器进行轮训消费这些topic,看消息是否到期,如果到期就把这个消息发送到具体业务处理的topic中,队列中消息越靠前的到期时间越早,具体来说就是定时器在一次消费过程中,对消息的发送时间做判断,看下是否延迟到对应时间了,如果到了就转发,如果还没到这一次定时任务就可以提前结束了。 2.1.6 消息回溯 如果某段时间对已消费消息计算...阅读全文

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

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

服务化项目服务不可用几十分钟,造成订单数减少几十万笔,损失百万资金。 原因分析 当时是没有定位到具体的原因的,但是下面的原因也是一部分可能引起宕机的情况。 某服务化项目的业务增速非常快,在高峰期,数据库QPS突破35000,系统处于高负荷状态。 在高峰期如果同时执行几个全表扫描的SQL,会造成数据库压力急剧上升,应用超时增多,前端应用超时,用户重试,流量飙升,形成了雪崩效应。 主要原因在与一些老项目的SQL询性能较差,并且使用的主库,对数据库影响较大。数据库QPS太高,但是缓存方案因为人手原因一直没有落地,慢SQL的问题处理优先级应该提升。 改进方案 针对每个应用建一个数据库账号,严格按照规范使用 缓存优化方案即时落地,慢SQL问题优先处理,集中处理目前已经发现的慢SQL(询时间超过1S...阅读全文

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

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

接口。以这种方式合并多个接口的数据: $ vnstat -i wlan0+eth0+eth1 你可以通过以下几种方式过滤显示: -h 以小时显示统计数据。 -d 以天数显示统计数据。 -w 和 -m 按周和月显示统计数据。 使用 -l 选项看实时更新。 此命令删除 wlan1 的数据库,并停止监控它: $ vnstat -i wlan1 --delete 此命令为网络接口创建别名。此例使用 Ubuntu 16.04 中的一个奇怪的接口名称: $ vnstat -u -i enp0s25 --nick eth0 默认情况下,vnstat 监视 eth0。你可以在 /etc/vnstat.conf 中更改此内容,或在主目录中创建自己的个人配置文件。请参见 man vnstat 以获得完整的参考...阅读全文

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

开源软件对于商业机构的6大好处

可以及时地发现问题并解决问题。 开源除了源代码开放外,开发的过程也是透明的,因此,你可以检供应商是否遵循 ISO27001,云安全原则等基准行业标准开发流程。 4、更多的用户导向 开源能使顾客和用户直接看到并参与到产品开发中来,这比闭源软件开发更能了解客户的需求。供应商可能只关注产品的某一特定方面,而一个社区能致力于开发出更多的功能,能创造出对用户更有价值的产品。 5、更好的支持 专有供应商是在产品遇到问题时,唯一可以给你提供帮助的一方。如果他们无法提供你所需要的服务,或者需要对额外的服务收费,那事情就麻烦了。而软件一旦开源,如果供应商无法提供相应的服务或支持,可以有其他人来填补空白,这就是自由市场的优势,能保证你得到最好的服务。 6、更有利的许可 典型的软件许可充斥这一些不公平条例,它通...阅读全文

博文 2017-11-15 23:41:11 debian.cn

使用 tmate 分享你的终端会话

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

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

Debian Jessie、Stretch 下安装配置 PHP7.2

: systemctl restart php7.2-fpm 更多日常的操作: systemctl restart php7.2-fpm #重启 systemctl start php7.2-fpm #启动 systemctl stop php7.2-fpm #关闭 systemctl status php7.2-fpm #检状态 安装更多组件 上面的一条命令安装 PHP 只是安装了部分 PHP 拓展,更多的软件可见: root@debian.cn-service:~# apt-cache search php7.2 php-radius - radius client library for PHP php-http - PECL HTTP module for PHP Extended HTTP...阅读全文

博文 2017-12-16 14:16:25 debian.cn

Memcache UDP反射放大攻击技术分析

已经发布通告,例如 CloudFlare、Qrator Labs、Arbor Networks、US-CERT,等等 预防和防御类:包括 NTT 在内的多个ISP 已经对 UDP 11211 采取限速措施。 应对建议方面,ISP、网络管理员、企业用户可以从很多渠道获得应对建议,例如 这里。我们建议: 各运营商 ISP、云服务厂商,考虑在自己的网络内对UDP 11211 采取限速措施 各开发者和 memcache 管理者,考虑自 memcache 设定ACL 总体而言,一方面,我们开始担忧1Tbps以上的DDoS攻击案例今后会比较频繁的出现,DDoS攻击开始从 G 时代进入 T 时代(Gbps vs Tbps);另一方面,我们必须指出至少在当前 Memcache DRDoS 还不是DDoS...阅读全文

博文 2018-03-02 09:20:52 debian.cn

AWS IAM 基本概念介绍

ListBucket 操作,它将返回有关存储段中项目的信息。任何您没有显式允许的操作都将被拒绝。 资源:您允许对哪些资源执行操作。例如,您将允许用户对哪些特定 Amazon S3 存储段执行ListBucket 操作?用户不能访问任何您没有显式授予许可的任何资源。 效果:当用户请求访问权限时将产生什么效果(允许或拒绝)。因为默认设置为拒绝用户访问资源,因此您通常需要指定您将允许用户访问资源。 AWS IAM 最佳实践 隐藏您的 AWS 账户根用户 访问密钥创建单独的 IAM 用户使用组向 IAM 用户分配权限授予最低权限利用 AWS 托管策略开始使用权限使用客户托管策略而不是内联策略使用访问权限级别看 IAM 权限为您的用户配置强密码策略为特权用户启用 MFA针对在 Amazon EC2 实例上运行的应用程...阅读全文

博文 2019-06-04 20:22:31 debian.cn

团队激励的八大方法,让你的团队成员更加高效地达成目标

感情,使团队内部形成一种和谐与欢乐的气氛。4、公平激励法一个人在产生公平感时,会心情舒畅,努力工作;而在产生不公平感时就会怨气冲天,大发牢骚,影响工作的积极性。公平激励法是强化工作积极性的重要手段,所以在团队管理中,对员工分配、晋级、奖励、使用等方面要力求做到公平、合理。5、竞赛激励法竞赛激励法就是指团队领导者通过经常性的检评比和多种形式的竞赛活动,来激发下属的上进心和竞争意识,促使其努力使自己的工作走在他人前面的方法。6、褒奖激励法表扬和奖励是对良好思想和行为的一种积极肯定,它包括物质的,也包括精神的。表扬和奖励能够引起人们愉快的感受,这是因为渴望得到他人或社会的赞赏,是一种心理需要,已经成为人们的人格特征之一。7、榜样激励法榜样激励法就是指领导者通过树立生动、鲜明、具体、形象的学习榜样...阅读全文

C++ 夺冠!成为 TIOBE 2022 年度编程语言

应、Hao 123 等等。具体的计算方式详见:https://www.tiobe.com/tiobe-index/programming-languages-definition/。请注意这个排行榜只是反映某个编程语言的热门程度,并不能说明一门编程语言好不好,或者一门语言所编写的代码数量多少。 这个排行榜可以用来考察你的编程技能是否与时俱进,也可以在开发新系统时作为一个语言选择依据。 详细榜单信息可参考 TIOBE 官网:https://www.tiobe.com/tiobe-index 《2022-2023 中国开发者大调》重磅启动,欢迎扫描下方二维码,参与问卷调研,更有 iPad 等精美大礼等你拿!...阅读全文

博文 2023-01-10 06:42:12 CSDN博客

Twitter确认接受440亿美元收购提议 埃隆·马斯克将完全控制该公司

他首次披露他在Twitter的9.2%股份时,他就创建一个"编辑"按钮向Twitter用户进行了调,而实际上Twitter已经在开发这个按钮。他后来还建议取消Twitter Blue的广告并降低其订阅价格,并增加狗狗币作为支付选项。 马斯克一直直言不讳地批评Twitter的内容管制,称自己是一个"言论自由的绝对主义者",并对该平台在他的控制下如何节制表示担忧。"马斯克在TED 2022期间接受克里斯-安德森的采访时说:"人们有一个现实和认知,即他们能够在法律的范围内自由发言,这一点非常重要。我认为从广义上讲,我们越是能增加对Twitter这个公共平台的信任,文明受损的风险就越小。" 马斯克最初在4月13日提出以每股54.20美元的价格收购Twitter。该提议是在马斯克披露收购...阅读全文

Debian下编译安装Golang

1.4.3版本。 执行./make.bash。 一般教程(比如本文前面首次编译错误小节)是用./all.bash,其实没必要。./all.bash是编译并测试,而./make.bash只是编译。前者大约5分钟,后者大约2分钟。对我们这种Go语言的使用者而非开发者来说,显然后者就够了。 进入GOROOT目录,执行./make.bash。 结束后,可以检版本。 $ go version go version devel +f8187ce Mon Nov 7 02:55:52 2016 +0000 linux/amd64 咦?怎么版本怪怪的! 这是因为master的HEAD,通常是一个开发中的提交,是最新不稳定版本。 如果想要稳定版怎么办? 和编译1.4.3版本类似,checkout过去再编译。比如,我...阅读全文

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

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

稳定分支。 我们将讨论 NGINX 版本控制方案,回顾 NGINX 1.17 开发周期内进行的更新,并探索 NGINX 1.19 的特性。 NGINX 版本控制介绍 NGINX 在 NGINX Open Source 代码存储... 1 4 为 Linux 5.16 准备的新版 Zstd 已就绪,最高带来 35% 的性能提升 正如我们上周的报道(点击看),Linux 内核即将用上最新的 Zstd 实现。如今时隔一周时间,为 Linux 5.16 内核所准备的新版 Zstd 已提交至 linux-next 的合并中,以便在接下来的几周内进行更广泛的测试,如无意外我们将在下个月的 Linux 5.16 合并窗口中看到 Zstd 的更新代码。 来自 Facebook 的 Zstd 维护者...阅读全文

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

Systemd 及 Service 文件含义解析

/etc/systemd/system/ 目录中的单元文件的优先级总是高于 /usr/lib/systemd/system/ 目录中的同名单元文件。注意,当/usr/lib/ 中的单元文件因软件包升级变更时,/etc/ 中自定义的单元文件不会同步更新。此外,你还得执行 systemctl reenable ,手动重新启用该单元。因此,建议使用前面一种利用 *.conf 的方法。 可以使用 journalctl 来看 systemd 管理服务的启动日志: ``` journalctl -b -0 # 显示本次启动的信息 journalctl -b -1 # 显示上次启动的信息 ``` 参考阅读 ArchLinux 的 Systemd (简体中文) 文档:https...阅读全文

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

Debian 使用VSFtpd安装配置架设FTP服务器

0不限止 anon_max_rate 匿名最大传输速度,0为无限制 local_max_rate 本地用户最大传输速度,0为无限制 max_clients 最多客户端连接,0为无限制 max_per_ip 一个ip的最大连接数,0为无限制 更多的配置内容请访问vsftpd的官方网站看: http://vsftpd.beasts.org/vsftpd_conf.html 配置本地组访问FTP 首先创建用户组clin003和FTP的目录 groupadd clin003-com (组名是随便取的,只是便于管理以后可以随时cat /etc/group |grep clin003-com) mkdir /tmp/clin003 (我直接给用户分配管理/var/www文件,用来管理apache的...阅读全文

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

3个 Linux 命令让你看起来很忙:摸鱼的技巧

。它播放的序列由你决定,但默认情况下它包括一个加密货币挖掘模拟器、composer PHP 依赖管理器、内核编译器、下载器、内存管理等等。不过,我最喜欢的是显示 simcity 加载消息的设置。因此,只要没有人检得太仔细,你就可以花整个下午的时间等待电脑完成进度条。 Genact 有 linux、os x 和 Windows 版本,Rust 源码可以在 github 上找到。 Hollywood Hollywood 采取了更直接的方式。它本质上是在终端中创建一个随机数和拆分屏幕的配置,并启动看起来很忙的应用程序,如 htop、目录树、源代码文件和其他应用程序等,并每隔几秒钟进行切换。它以 shell 脚本的形式组合在一起,因此可以很容易地根据你的需要进行修改。 Hollywood 的源代码可...阅读全文

博文 2019-09-28 15:48:43 debian.cn

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

modules 的环境变量 GO111MODULE默认开关将为 on,不再是之前是 auto 了。 还在使用 GOPATH,或 Go modules 没切全的同学这一块需要特别注意。 新增 GODEBUG inittrace GODEBUG 新增 inittrace 指令,可以用于 init 方法的排: $ GODEBUG=inittrace=1 go run main.go 输出结果: init internal/bytealg @0.008 ms, 0 ms clock, 0 bytes, 0 allocs init runtime @0.059 ms, 0.026 ms clock, 0 bytes, 0 allocs init math @0.19 ms, 0.001 ms clock, 0...阅读全文

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

Debian、Ubuntu安装源配置文件说明

的软件原来根本就没有。该仓库正因此而设,但欠官方维护,且可能在系统正式发布之后过一段时间才有内容。此仓库处于第二优先顺序,而上述几个仓库处于第一优先顺序。安装第二优先顺序的包必须特别指明,见 apt-get(8) aptitude(8) 的 --target-release 选项。 提示:并非所有版本都设有上述全部仓库,请打开源中 dists 目录看。 后续字段,指示包许可类型。 后续字段排名不分先后,最终结果取其并集。按包本身的许可及所直接依赖的包的许可划分。打开某仓库,可见几个子目录。 Debian 最多有三种 「main」,本身是自由软件,且所有依赖的包也都是自由软件,此类可称纯自由软件,见 https://www.debian.org/distrib/packages《Debian...阅读全文

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