HAProxy用法详解 最详细中文文档
开的最大文件描述符数目,默认情况下其会自动进行计算,因此不推荐修改此选项;Linux默认单进程打开文件数为1024个 – user:同uid,但使用的是用户名; – stats:用户访问统计数据的接口 – node:定义当前节点的名称,用于HA场景中多haproxy进程共享同一个IP地址时; – description:当前实例的描述信息; * 性能调整相关的参数 – maxconn
开的最大文件描述符数目,默认情况下其会自动进行计算,因此不推荐修改此选项;Linux默认单进程打开文件数为1024个 – user:同uid,但使用的是用户名; – stats:用户访问统计数据的接口 – node:定义当前节点的名称,用于HA场景中多haproxy进程共享同一个IP地址时; – description:当前实例的描述信息; * 性能调整相关的参数 – maxconn
如果你是在一个大型组织,你运行了 NFS 或者 Samba 服务给不同的用户,你将会需要灵活的挑选并设置很多复杂的配置和权限去满足你的组织不同的需求。Linux(以及其他Unix等POSIX兼容的操作系统)有一个被称为访问控制列表(ACL)的权限控制方法,它是一种权限分配之外的普遍范式。例如,默认情况下你需要维护3个权限组:owner、group和other。 使用ACL后,你可以设置权限给其他用户或组,而不单只是简单的"other"。可以允许指定的用户A、B、C拥有写权限而不再是让他们整个组拥有写权限。 ACL支持多种Linux文件系统,包括ext2, ext3, ext4, XFS, Btrfs等。如果你不确定你的文件系统是否支持ACL,请参考文档。 首先我们需要安装工具来管理ACL...阅读全文
ComplianceIntegrated with many AWS servicesEventually ConsistentFree to use 基本概念 User 您可以在账户中创建与组织中的用户对应的各 IAM 用户,而不是与他人共享您的根账户凭证。IAM 用户不是单独的账户;它们是您账户中的用户。每个用户都可以有自己的密码以用于访问 AWS 管理控制台。您还可以为每个用户创建单独的访问密钥,以便用户可以发出编程请求以使用账户中的资源。 Group IAM中,组是 IAM 用户的集合。利用组,可为多个用户指定权限,以便更轻松地管理这些用户的权限。例如,您可能有一个名为 Admins 的组,并向该组授予管理员通常需要的权限类型。该组中的任何用户均自动具有分配给该组的权限。如果有新用户加入您的组织,并且需要管理员权限,则可...阅读全文
一句话概况:stackstorm是一个事件驱动的自动化引擎。StackStorm 是一坨功能强大的开源自动化平台,可将通过使用插件封装API的方式,将所有应用程序,服务和工作流程连接起来。这里的所有包括了目前我们常用Gitlab、Zabbix、ELK、AWS 等服务。 Stackstorm 具有很好的可扩展性,灵活性,完美支持 ChatOps 和全操作的API实现。通过Stackstorm 可以将您现有的基础架构和应用程序环境联系在一起,以便您可以更轻松地自动化操作该环境。它特别专注于针对事件采取行动。 便利的故障排除 - 触发由Nagios,Sensu,New Relic和其他监控系统捕获的系统故障,在物理节点、OpenStack或Amazon实例和应用程序组件上运行一系列诊断检查,并将...阅读全文
Rust 1.37.0 stable 有什么?Rust 1.37.0 的亮点包括通过类型别名引用枚举变量、内置 cargo vendor、对宏使用未命名的 const、配置文件引导的优化、Cargo 中的 default-run 和枚举上的 #[repr(align(N))] 。 通过类型别名引用枚举变量 在 Rust 1.37.0,可以通过类型别名引用枚举变量。例如: type ByteOption = Option; fn increment_or_zero(x: ByteOption) -> u8 { match x { ByteOption::Some(y) => y + 1, ByteOption::None => 0, } } 要实现它,Self 充当类型别名。在 Rust...阅读全文
Contents1. 准备2. 使用 firewalld 进行中转3. 使用 UFW 进行中转4. 使用 iptables 进行中转4.1. CentOS 下保存规则4.2. Debian & Ubuntu 下 保存规则:5. 使用 socat 进行中转6. 目标机的设置7. 一些大陆 NAT VPS 商8. References本文最后更新于 2020 年 6 月 3 日本文以 CentOS 8 和 Debian 10 & Ubuntu 20.04 为例,介绍如何在 NAT VPS 上设置流量中转。开始前,请先根据实际使用的操作系统,参照以下文章对服务器进行各种必要的配置:CentOS 服务器的初始配置Debian & Ubuntu 服务器的初始化配置本文以 sammy 用户为例,进行中...阅读全文
盖配置修改实时生效(热发布) 用户在Apollo修改完配置并发布后,客户端能实时(1秒)接收到最新的配置,并通知到应用程序版本发布管理 所有的配置发布都有版本概念,从而可以方便地支持配置的回滚灰度发布 支持配置的灰度发布,比如点了发布后,只对部分应用实例生效,等观察一段时间没问题后再推给所有应用实例权限管理、发布审核、操作审计 应用和配置的管理都有完善的权限管理机制,对配置的管理还分为了编辑和发布两个环节,从而减少人为的错误。所有的操作都有审计日志,可以方便的追踪问题客户端配置信息监控 可以在界面上方便地看到配置在被哪些实例使用提供Java和.Net原生客户端 提供了Java和.Net的原生客户端,方便应用集成支持Spring Placeholder, Annotation和Spring...阅读全文
, --setgid gid:设置运行程序的gid -S, --setuid uid:设置运行程序的uid -r, --root[=directory]:设置根目录 -w, --wd[=directory]:设置工作目录 -F, --no-fork do not fork before exec'ing
deployments,而背后的复杂性被隐藏在简单的抽象中。但为了充分理解它为我们提供的价值,我们需要理解它的内部原理。 本指南将引导您理解从 client 到 Kubelet 的请求的完整生命周期,必要时会通过源代码来说明背后发生了什么。 这是一份可以在线修改的文档,如果你发现有什么可以改进或重写的,欢迎提供帮助! 1. kubectl 验证和生成器 当敲下回车键以后,kubectl 首先会执行一些客户端验证操作,以确保不合法的请求(例如,创建不支持的资源或使用格式错误的镜像名称)将会快速失败,也不会发送给 kube-apiserver。通过减少不必要的负载来提高系统性能。 验证通过之后, kubectl 开始将发送给 kube-apiserver 的 HTTP 请求进行封装。kube-apiserver 与...阅读全文
我司使用钉钉作为主要的内部通讯工具,基本上大家在电脑和手机上都开着,消息可以第一时间查看,报警消息的即时性要求比较高,我们计划使用钉钉来发送报警通知。本文将简要介绍发送消息的API使用样例。钉钉的API接口文档,请查阅钉钉开放平台。 介绍如何用 Python 实现钉钉自动发送消息,你可以用来和报警平台整合,或者做ChatOps。 获取 access token 要使用钉钉发送消息,首先需要获取access token,代码如下: def get_access_token(): url = 'https://oapi.dingtalk.com/gettoken?corpid=%s&corpsecret=%s' % (corp_id, corp_secret) request...阅读全文
./configure make && make install 安装Yearning 2.1 用pip3安装依赖包(txt文件在src目录中) pip3 install -r requirements.txt 2.2 创建数据库实例yearning 2.3 将该数据库实例的连接信息写入develop.conf。升级请注意:1.0.0发布后,该文件增加了两个属性:ldap_type=1和smtp_port=,如果是cp原有的配置文件覆盖新下载的,要加上这两个配置 2.4 初始化数据库 python3 manage.py makemigrations && python3 manage.py migrate 2.5 添加初始化用户 echo "from core.models import Account...阅读全文
; PHP 8将会解析为: echo "sum :" . ($a + $b); __toString中抛出异常 支持反射引用 PHP 7.4将会新增ReflectionReference 类 移除php短标签 例,将不再保留对象上的可访问属性openssl_random_pseudo_bytes 会...阅读全文
Go 语言设计者 Robert Griesemer 和 Ian Lance Taylor 近日在 Golang 官方论坛发帖讨论关于泛型及其括号使用的问题。 他们提到很多人表达了对泛型语法的担忧,特别是在类型参数声明和函数实例以及泛型的括号选择方面。 常见的计算机键盘提供了四对单字符对称括号,分别是小括号 ( )、方括号 [ ]、花括号 { } 以及尖括号 < >。基于此,他们解释了目前泛型草案在示例代码中使用小括号的原因。首先,Go 使用花括号来划分代码块、复合字面量(composite literals)和一些复合类型,因此几乎不可能在没有严重语法问题的情况下将花括号用于泛型。至于尖括号,解析器在某些情况下要求 <> 需要 unbounded lookahead。 所以只剩下...阅读全文
中小型公司,尤其是互联网行业的创业公司,本身并没有太多的技术人员,如果设计系统时需要考虑诸多的技术问题,例如 Web 应用服务器如何配置、数据库如何配置、消息服务中间件如何搭建等等,那对于他们来说人员成本、系统成本会很高,Serverless 架构的出现,让这种情况可能可以大幅度改善。 初识 Serverless? 在目前主流云计算 IaaS(Infrastructure-as-a-Service,基础设施即服务)和 PaaS(Platform-as-a-Service,平台即服务)中,开发人员进行业务开发时,仍然需要关心很多和服务器相关的服务端开发工作,比如缓存、消息服务、Web 应用服务器、数据库,以及对服务器进行性能优化,还需要考虑存储和计算资源,考虑负载均衡和横向扩展能力,考虑服务...阅读全文
首先查看哪些服务占用了开机时间: `systemd-analyze blame` 本文示例中发现 networking.service 的时间长达 5 分钟。查看该服务状态可发现如下错误: ``` systemd[1]: networking.service: Start operation timed out. Terminating. systemd[1]: networking.service: Main process exited, code=killed, status=15/TERM systemd[1]: networking.service: Failed with result 'timeout'. systemd[1]: Failed to...阅读全文
本文以 Ubuntu 18.04 为例,介绍如何在 Linux 下使 systemd 服务定时重启。有几种不同的方法。 ** crontab ** 注意,此种方法在 root 用户下使用最佳,普通用户的 --user 服务会有许多问题需要解决。 `30 3 * * * /bin/systemctl restart your_service` `crontab -l cronjob` ** RuntimeMaxSec ** ``` [Service] Restart=always RuntimeMaxSec=604800 ``` ** timer ** a-restart.service ``` [Unit...阅读全文
Trivy是一种适用于CI的简单而全面的容器漏洞扫描程序。Trivy可检测操作系统包(Alpine、RHEL、CentOS等)和应用程序依赖(Bundler、Composer、npm、yarn等)的漏洞。 Trivy很容易使用,只要安装二进制文件,就可以扫描了。扫描只需指定容器的镜像名称。与其他镜像扫描工具相比,例如Clair,Anchore Engine,Quay相比,Trivy在准确性、方便性和对CI的支持等方面都有着明显的优势。推荐在CI中使用它,在推送到container registry之前,您可以扫描本地容器镜像。...阅读全文
今天Go 团队很高兴地宣布Go 1.8发布了。现已提供下载。整个标准库有了显著的性能提升和变化。该版本主要的更新内容如下: Go 1.7中为64位x86引入的编译器后端现在用于所有体系结构,这些体系结构将会有显著的性能改进。例如,我们的基准程序所需的CPU时间在32位ARM系统上减少了20-30%。在此版本中,64位x86系统还有一些性能改进,编译器和链接器更快了,编译时间应该比Go 1.7提高约15%。但是在这一领域还有很长的路要走:我们希望在未来版本中实现更快的编译速度。 垃圾收集暂停时间明显更短,通常在100微秒以下,有时候甚至低至10微秒。 HTTP服务器添加对 HTTP/2 Push的支持,允许服务器抢先发送响应到客户端。这对于通过消除往返行程来最小化网络延迟非常有用。HTTP服...阅读全文
-bindgen 的高级功能包括: 导入 JavaScript 结构、函数和对象以在 WebAssembly 中调用。开发人员可以调用结构中的方法和访问属性。 将 Rust 结构和函数导出到 JavaScript。可以导出一个 Rust struct,它会变成一个 JavaScript class,之后就可以传递结构而不是整型。 目前,WebAssembly 仅支持四种类型:两种整型和两种浮点型。但 JavaScript 和 Rust 开发人员经常使用更丰富的类型,例如 Rust 开发人员使用 Result 类型进行错误处理,这样,使用 wasm-bindgen 的时候,JavaScript 可以使用字符串或 Rust 函数调用 Rust API 来捕获 JavaScript 异常。通过消除...阅读全文
以下是一些 Q&A 风格的示例,可以让您了解 chfn 命令的实际工作原理。 问题1:如何使用chfn更改用户的全名? 可以使用-f命令行选项以下列方式完成此操作: sudo chfn -f HimanshuArora himanshu 请注意,'manshu'是Linux用户,其全名更改为'ManshuArora'。 问题2:如何使用chfn更改家庭电话号码? 要更改家庭电话号码,请使用 -h 命令行选项。 sudo chfn -h 0172-666666 himanshu 问题3:如何使用chfn更改用户的房间号? 这可以使用-r命令行选项来完成。 sudo chfn -r 12 himanshu 问题4:如何使用chfn更改用户的工作电话号码? 要更改工作电话号码,请使用-w命令行选...阅读全文
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,建议使用...阅读全文
Kiwi TCMS 是一个集测试计划、测试运行和测试用例于一身的管理系统,用 Python 和 Django 编写。6.11 版本已经发布,这是一个安全和改进版本,它更新了许多内部依赖项,添加了 2 个新的 Telemetry 报告,更新了 TestPlan 和 TestCase 克隆页面,并提供了其他一些改进和错误修复。具体内容如下。 支持的升级路径: 5.3 (or older) -> 5.3.1 5.3.1 (or newer) -> 6.0.1 6.0.1 -> 6.1 6.1 -> 6.1.1 6.1.1 -> 6.2 (or newer) 更新 Django,从 2.2.2 更新到 2.2.4更新 marked 到 0.7.0将 python-GitLab 从 1.8.0 更新...阅读全文
| 64-bit Linux Mint 更新内容: 新版本除了对附带的软件进行升级,还带来了许多改进和新特性,让你的桌面使用起来更加舒适。除此之外,还提供了 UI 方面的改进,例如现在支持对滚动条的配置进行设置,并且在应用程序菜单中对具有相同名称的程序显示添加的描述,以便用户可以在 GNOME 程序的 X-Apps 和 Deb 软件包的 Flatpaks 中进行区分。 Linux Mint 19 针对 Xfce, MATE 和 Cinnamon 这三个桌面环境版本都提供了一些独有的新特性,但大多数新特性对于所有的版本都是通用的,下面来看看有哪些变化。 改进了升级管理器中的内核管理软件管理器可以获取“丢失”的 GPG 密钥软件管理器可以扫描/删除重复的源优化了 Muffin 窗口管理器,使用起来感觉...阅读全文
MongoDB 4.2 正式发布了,MongoDB Server 4.2 提高了现代事务和分析数据平台的技术水平。 Mongodb-4.2 的主要改动包括: 分布式事务将 MongoDB 的多文档 ACID 从副本集扩展到共享集群,能够为更广泛的用例服务按需物化视图使用新的 $Merge 运算符,在集合中缓存大型聚合的输出是一种常见的模式,新的 $Merge 运算符将可以有效地更新这些结果,而不是完全重新计算它们通配符索引使建模像产品目录这样的高度异构的集合变得简单和自然,而不牺牲对索引的支持。只需定义一个过滤器,它将自动索引集合中所有匹配的字段、子文档和数组MongoDB 查询语言增强功能,如更有表现力的更新、新的数学运算符和扩展的 regex 支持。此版本的 update 和...阅读全文
此版本在与上游服务握手时提供特定证书以提高安全性,这样做的意义包括: 能够使用证书与上游服务握手使得 Kong 在需要强大的身份验证保证的行业中更加出色,例如金融和医疗保健服务。更高的安全性。通过提供可信证书,上游服务将确定传入请求是由 Kong 转发的,而不是恶意客户端。更简单的合规性。开发者友好。可以使用 Kong 将需要相互 TLS 身份验证的服务转换为更加开发者不相关的方法(例如,OAuth)。 此外,Kong 1.3 还开源了 Sessions 插件,此前它仅在 Kong Enterprise 中提供,该插件结合其它身份验证插件,允许 Kong 记住之前已经过验证的浏览器用户。 OpenResty 的版本升级到 1.15.8.1,该版本基于 Nginx 1.15.8。此版本在关闭上...阅读全文
%(正常模式)或 200%(HiDPI 模式),并且对所有显示器而言都是相同的。未来每个屏幕的缩放比将有所不同,用户可以将其设置为 100% 到 200% 之间的值。 绽放比模式可以解决不少显示问题,比如因为 HiDPI 带来的清晰度问题和多显示器支持等。通过能够分别为每个显示器设置缩放比例,希望获得更高的像素密度,并允许 HiDPI 和非 HiDPI 显示器之间更好地兼容。 目前正在 Alpha 测试 Cinnamon 的这种比例缩放,并评估其在各种 GPU 上的兼容性以及优缺点。 关于 Linux Mint 20 与 LMDE 4 的更多信息,查看 https://blog.linuxmint.com/?p=3858...阅读全文
容视图中,管理员现在可以使用新列“创建日期”过滤存储的数据,例如,该列可以简化从特定日期开始搜索备份的过程。可以无缝更改 Web 界面的语言,而无需重新启动会话。添加了阿拉伯语翻译,因此 Proxmox VE 总共支持 20 种语言。 Linux 容器: 集成容器技术已更新为 LXC 4.0.2 和 lxcfs 4.0.3。Proxmox VE 6.2 现在允许在基于目录的存储上为容器创建模板。适用于 Ubuntu 20.04、Fedora 32、CentOS 8.1、Alpine Linux 和 Arch Linux 的新 LXC 模板。 Zstandard用于备份/还原: 集成的备份管理器支持快速高效的无损数据压缩算法 Zstandard(zstd)。 用户和权限管理: Proxmox...阅读全文
在 2019 年,Oracle 决定更改许可模式,从提供免费的 Java 更新转变为要求付费订阅,这一重大变化无疑在市场上掀起了一片波澜。之后,尽管有一些使用 Java 的公司扔坚持使用 Oracle 并承担了增加的支持成本,但许多公司也在步步为营,谋求新的选择。 据 Azul Systems 的一项新调查显示,目前有 80% 的 Oracle JDK 用户正在考虑其他选择。Snyk 和 Oracle 联合进行的 2018 年调查层表明,Oracle JDK 用户以前占 Java 用户的很大比例。该调查发现 70% 的受访者使用 Oracle JDK,21% 的受访者使用 OpenJDK,9% 的受访者使用其他 JDK 实现,例如 Eclipse OpenJ9/IBM J9、Android...阅读全文
-dev 2.使用gem模块的gem包管理器,安装fastthread gem: sudo gem install fastthread 3.安装Ruby On Rails: sudo gem install rails 4.(可选)为您的应用程序安装其他依赖项,例如 MySQL 支持: sudo apt-get install mysql-server libmysqlclient-dev mysql-client mysql-common sudo gem install mysql 5.将rails添加到$PATH环境变量。 请确保用正在运行的Ruby版本替换VERSION: ls /var/lib/gems PATH="/usr/local/sbin:/usr/local/bin:/usr...阅读全文
文章目录 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 提供所有信息,简化...阅读全文
注释,后面的Entity表示该注释的名称。 注释的元素 一个注释可以包含多个可以被赋值的元素。一个元素就像是一个属性或者参数。下面是一个包含一个元素的注释 @Entity(tableName = "vehicles") 元素紧跟在注释之后,并放置在圆括号中,没有元素的注释,不需要圆括号。注释可以包含多个元素,当只包含一个元素时,可以省略元素名,只提供元素值既可,如下: @InsertNew("yes") 注释的位置 你可以将注释放置到类、接口、方法、方法参数、成员变量、局部变量之前。下面是一个将注释放到类之前的例子: @Entity public class Vehicle { } 下面是一个更大的例子,演示了在类、成员变量、方法、参数以及局部变量之前添加注释。仅作演示之用,并没有什么特别的...阅读全文
最近的互联网线上事故发生比较频繁,9月19日网上爆料出顺丰近期发生了一起线上删库事件,在这里就不介绍了。 这里分享一下最近发生在我公司的事故,以及如何避免,并且如何处理优化。 该宕机的直接原因是使用 Redis 的 keys * 命令引起的,一共造成了某个服务化项目的两次宕机。 间接原因还有很多,技术跟不上业务的发展,由每日百万量到千万级是一个大的跨进,公司对于系统优化的处理优先级不高,技术开发人手的短缺。 第一次宕机 2018年9月13日的某个点,公司某服务化项目的 RDS 数据库实例连接飙升,CPU 升到 100%,拒绝了其他应用的所有请求服务。 整个过程如下: 监控报警,显示RDS的CPU使用率达到80%以上,DBA介入,准备KILL慢SQL 1分钟内,没有发现明显阻塞的SQL...阅读全文
由于人工智能 / 机器学习日益集成到应用和业务流程中,因此生产级机器学习模型需要更多可扩展的基础设施和计算能力,以用于训练和部署。 现代机器学习算法在大量数据上进行训练,并且需要数十亿次迭代才能使成本函数最小化。这类模型的垂直扩展会遇到操作系统级别的瓶颈,包括可提供的 CPU、GPU 和存储的数量,而且对于这种类型的模型,已经证明效率并不高。更为高效的并行处理算法,例如异步训练和 allreduce 式训练,需要一个分布式集群系统,由不同的 worker (工作器)以协调的方式同时学习。 可扩展性对于在生产环境中服务深度学习模型也非常重要。将单个 API 请求处理到模型预测端点可能会触发复杂的处理逻辑,这将花费大量时间。由于更多用户访问模型的端点,为了有效地处理客户端请求,需要更多服务实例...阅读全文
libgraph 的参照对象。因为 VPP 项目整体是一个非常全面的解决方案,从中剥离核心的设计框架为其它轻量级项目所用就变得很有意义。这也是 Libgraph 的产生背景。虽然它目前还是DPDK 中相对比较新的 lib,但是其优秀的设计思想还是值得学习参考。 下面将首先介绍 libgraph 架构的核心概念:标量和向量包处理(scalar vs vector packet processing)以及它们之间的区别。然后再介绍 libgraph 中的核心组件,以及它们之间的联系和交互方式。最后,我们将介绍 libgraph 的具体用例以及优缺点。 背景 DPDK libgraph 是一个向量包处理的框架。与传统的标量包处理模型(一系列函数负责处理一个数据包,重复直到所有数据包处理完毕)相比,向量数据包处理...阅读全文
beta版,因此默认情况下已启用) 本节中的示例演示了临时容器如何出现在 API 中。 通常,您可以使用 kubectl 插件进行故障排查,从而自动化执行这些步骤。 临时容器是使用 Pod 的 ephemeralcontainers 子资源创建的,可以使用 kubectl --raw 命令进行显示。首先描述临时容器被添加为一个 EphemeralContainers 列表: { "apiVersion": "v1", "kind": "EphemeralContainers", "metadata": { "name": "example-pod" }, "ephemeralContainers": [{ "command": [ "sh" ], "image": "busybox...阅读全文
欧盟一般数据保护条例(GDPR)和加州消费者隐私法案(CCPA)是欧美两大经济体所出台的两部具有代表意义的个人数据保护方面的法规,代表欧美监管机关对于个人数据保护两种不同的管控取向。 本文选取了“个人数据或信息的类型与范围界定”、“法律的管辖范围”、“数据跨境传输管控”、“儿童数据的保护”、“数据主体的反对权和被遗忘权”等关键概念,对GDPR和CCPA的部分要点进行比较分析。 1. “个人数据”或“个人信息”的范围界定 1.1 GDPR对个人数据的定义——侧重用抽象概念定义,实践中存在很大解释空间 除了对少数“特殊种类个人数据”(如宗教信仰、种族、工会成员信息、健康状况等)进行了零星列举以外,《欧盟一般个人数据保护条例》(GDPR)主要用抽象概念对其所管辖的“个人数据”的范围进行界定。 根...阅读全文
。 仪表板的发布在进行中,工程团队将Bugsnag的后端功能分解成称之为管道(pipeline)的微服务体系。将管道扩展到支持发布,意味着增加新的服务,并修改现有服务,也可预见到许多新的服务器和客户端的交互。为了处理上述架构的变化,需要采用一致性的方式来设计,实施和集成企业的服务。Bugsnag是一家多语言的公司,服务是用Java,Ruby,Go和Node.js等多语言编写,因此企业需要一种与平台无关的方法。 本文将介绍为什么我们最终选择了gRPC作为Pipeline的默认通信框架。 达到REST API设计的极限 现有系统传统上使用具有JSON有效载荷的REST API进行同步通信。这种选择是基于占压倒性比例的成熟度、熟悉度和工具的可用性做出的,但是随着跨洲际工程团队的增长,企业需要设计一致的...阅读全文
Channel 1. 概述 “网络,并发”是Go语言的两大feature。Go语言号称“互联网的C语言”,与使用传统的C语言相比,写一个Server所使用的代码更少,也更简单。写一个Server除了网络,另外就是并发,相对python等其它语言,Go对并发支持使得它有更好的性能。 Goroutine和channel是Go在“并发”方面两个核心feature。 Channel是goroutine之间进行通信的一种方式,它与Unix中的管道类似。 Channel声明: ChannelType = ( "chan" | "chan" "<-" | "<-" "chan" ) ElementType . 例如: var ch chan int var ch1 chan<- int //ch1只能写...阅读全文
[On Debian/Ubuntu/Mint] 另外,你也可以从 https://pkgs.org/download/bmon 获取对应你 Linux 发行版的 .rpm 和 .deb 软件包。 如果你想要最新版本(例如版本 4.0)的 bmon,你需要通过下面的命令从源码构建。 在 CentOS、RHEL 和 Fedora 中 $ git clone https://github.com/tgraf/bmon.git $ cd bmon $ sudo yum install make libconfuse-devel libnl3-devel libnl-route3-devel ncurses-devel $ sudo ./autogen.sh $ sudo./configure...阅读全文
,LFS 绝对配得上称为一本好书,或者说一本好教材。市面上,很难再找到一本如此具体又如此精炼的教材了。 首先,它并不是只是讲讲简单概念,它很具体,具体到就是一个例子,一个告诉你怎么亲手构建出属于自己的 Linux 系统的例子。 其次,它很精炼,它的精炼表现在两个方面:系统构建出来不臃肿;文字描述很精炼。 最后还有一点,这一点至关重要。尽管文字的描述非常精炼,甚至是精炼到枯燥,但是作为一本教材,作者无时无刻不再想尽办法,让你学到东西。无论是编译指令下方各个参数的介绍,还是软件包安装小节下方软件包内容的介绍,作者真的是想尽办法的试图把知识传递给读者。 LFS 没有缺点吗? 那自然是有的,可以原封不动的照抄上面的优点。辩证的看待这些优点,你就会发现这些优点是有代价的。 首先,由于这个例子过于生动形象,所...阅读全文
表示: 每个开发者都将能够从开源提供的集体创新中获取工具和代码,以构建现代数据驱动的应用程序,提供差异化的、有吸引力的体验,从而推动收入增长。这将通过创造一种 innersource 文化(将开源文化和工具带入企业)来实现,以加快开发速度、减少项目积压、创造更多乌托邦式的开发者环境。无服务器数据库技术与现代 API 和流媒体技术相结合,将等于一个开放的堆栈,在实现这一目标方面发挥巨大作用,因为它们将减轻基础设施团队的负担(例如管理多个数据中心实例、多云供应商和多个流媒体项目)。 Sumo Logic 的 Reno 还指出,作为这个过程的一部分,开发者需要围绕使用数据本身获得更多的帮助。他以可观察性的 OpenTelemetry 项目进行举例,说明开发者希望从他们所拥有的数据中获得更多的东西...阅读全文
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(分布图) 可以理解为柱状图,典型的应用如...阅读全文
Debian的官方源以稳定为主,所以软件版本相对比较老。dotdeb.org的源更新比较快,里面的软件包也是最新稳定版本,可用于 Debian 的生产服务器,类似 CentOS/RHEL 发行版的 EPEL 源的角色。一些常用的软件包,均可找到较新的版本,例如: Nginx, (1.10+的版本) PHP 7.0,5.6,5.5,包括对应的扩展:php7.0-gd, apcu, imagick, mongo, Pinba, xcache, Xdebug, XHprof MySQL 5.6,Redis等 当前 Dotdeb 支持以下版本, Debian 8.x “Jessie” 和 Debian 7.x “Wheezy“ 两种 CPU 架构:amd64 和 i386 如何使用 Dotdeb...阅读全文
按Kubernetes每季推出新版本的周期,暨今年3月底发布1.6版后,应该即将有一波大公布。果不其然,作为Kubernetes 1.7开发团队成员之一的Mirantis,在近日宣布,Kubernetes 1.7版会如期在6月底发布。 在1.6版中,Kubernetes不仅新增了角色权限控管,还将集群规模扩大至5,000个节点,但对Kubernetes社区而言,1.6版只不过是求稳定,并无太多新功能。Mirantis表示:1.7版本则是全力锁定推新功能,预计会有超过50个新功能,例如丛集联邦、安全性以及容器网络。 而根据Kubernetes现今对外的文件,还可发现许多有趣的新功能,像是支持容器基础组件Containerd、加强容器Runtime接口等。在容器储存功能方面,则预计开始支持本地...阅读全文
Canonical的Adam Conrad今天向Ubuntu社区发布公告,表示Ubuntu 16.10(Yakkety Yak)操作系统将于2017年7月20日结束生命周期。在此之前,就有消息称该系统将会在今年7月底之前停止支持,而今天团队终于敲定了具体的日期。 Conrad在公告中表示:“Ubuntu 16.10 (Yakkety Yak)于2016年10月13日发布,至今已经有接近9个月了。作为非LTS版本,16.10按照惯例会有9个月的支持周期,支持周期已经临近尾声,Ubuntu 16.10将会在7月20日周四结束生命周期。” 此外Adam Conrad还推荐Ubuntu 16.10用户尽快完成升级,升级至最新版本Ubuntu 17.04 (Zesty Zapus),相关的帮助文档和...阅读全文
从 5 月份发布的 PostgreSQL 10 首个 Beta 测试版到今天已有小半年时间,今天 PostgreSQL 终于宣布了 PostgreSQL 10 正式版。 全新的 PostgreSQL 10 正式版值得关注的新特性包括: 使用基于发布和订阅机制的逻辑复制 声明式的表分区 提升了查询的并发性 显著的性能提升 更强的基于 SCRAM-SHA-256 密码认证机制 提升了监控和控制功能 详细的 PostgreSQL 10 新特性描述请看 这里 。 官方发行说明请看 https://www.postgresql.org/docs/10/static/release-10.html?x=1 。 同时这里有一份 PDF 文档 通过实例详细介绍 PG 10 的新特性。...阅读全文
的GNU/Linux开发者和用户(例如3.10,4.4或者4.9),尽快升级至更新版本。...阅读全文
随着热辅助磁记录(HAMR)技术的成熟,希捷也终于拿出了 16TB 的 3.5 英寸 Exos HAMR 硬盘驱动器。目前该产品已在全面测试阶段,且较西部数据(WD)的微波辅助磁记录(MAMR)技术有更大的优势。HAMR 可借助激光对下方盘片进行加热,使磁头更易于记录、从而实现更高的存储密度。 希捷表示,HAMR 磁头的可靠性,已经超越了“行业标准”。 目前希捷正在对 16-TB HAMR 驱动器进行一系列的基准和集成测试,例如检查它们是否能够对控制器的命令做出了适当的响应。该制造商指出,客户无需做出任何特殊的改动,即可直接像传统 3.5" 硬盘驱动器那样使用 HAMR 驱动器。 如果一切顺利,希捷有望在 2020 年提供容量高达 20 TB 的 HAMR 硬盘驱动器产品。...阅读全文
查询的加载错误 #18488Graph:修复了点击系列线图标的图例问题,并且在 Windows 上可以看到水平滚动条 #18563Graphite:避免使用单值数组变量 #18420Prometheus:在加载查询编辑器时,使用 label_replace 修复查询,删除 $1 匹配 #18480Prometheus:更一致地允许在编辑器中进行多行查询 #18362TimeSeries:假设值都是数字 #18540 更新说明及下载地址...阅读全文
Kiwi TCMS 是一个集测试计划、测试运行和测试用例于一身的管理系统,用 Python 和 Django 编写。7.1 版本如下: 支持的升级路径: 5.3 (or older) -> 5.3.1 5.3.1 (or newer) -> 6.0.1 6.0.1 -> 6.1 6.1 -> 6.1.1 6.1.1 -> 6.2 (or newer) Improvements 将 Django 从 2.2.5 更新到 2.2.6将 python-GitLab 从 1.11.0 更新到 1.12.1pygithub 从 1.43.8 更新到 1.44psycopg2 从 2.8.3 更新到 2.8.4在所有遥测页面中添加帮助工具提示添加超链接验证 Fixes Issue #1147 API...阅读全文