InfraPub 为您找到相关结果 629

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

写代码并通过自动化脚本来测试各种案例的测试人员的需求将大幅增长。如果你是测试人员并且在是否学习编码方面处于两难境地,我们建议你还是学习编码吧。了解不同的 DevOps 工具和自动化脚本在当今的软件开发中起着至关重要的作用,并且将在 2019 年占据主导地位。 如果测试人员不学习编写代码和自动化测试脚本,就有可能被淘汰。手动测试将在 2019 年过时,因为它们需要耗费大量的时间。测试自动化不仅可以提高效率,还可以确保更快地将功能交付给市场。 微服务架构采用率增加 DevOps 和微服务将齐头并进。微服务是独立的实体,因此在出现问题时不会给其他统造成破坏。微服务架构可以帮助公司轻松部署和添加新功能。预计更多的企业将会转向微服务架构,以改进他们的在线运行时间和有效交付。不要只是因为别人采用了微服...阅读全文

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

Golang常见的十大算法精简版

最近有时间,都在看Go,感觉Go语言真的不错,具体自行百度。今天简单说一下算法。 什么是算法一列的计算步骤,用来将输入数据转化成输出结果算法的意义用于解决特定的问题解决同一个问题的不同算法的效率常常相差非常大,这种差距的影响往往比硬件和软件方面的差距还要大。 算法在我们编程开发中,还是不可或缺的。下面简单来列举一下go语言常见的十大算法。 BubbleSort(冒泡排序) func Sort(list []int, left, right int) { if right == 0 { return } for index,num := range list { if index < right && num > list[index + 1] { utils.SwapGo(list...阅读全文

博文 2019-09-05 09:31:10 debian.cn

Debian 10使用 Wine 安装配置微信、QQ与TIM

winehq-stable wine启动初配置 可参考Debian wiki的wine,这是使用wine前的第一步,在终端中输入 winecfg 依次按提示安装mono,gecko,要等待部分安装时间,然后再出现Configuration界面,点OK wine字体配置 wine界面字体显式是调用Linux操作统的字体,若之前复制了windows的字体到/usr/share/fonts中的话,这部分一般就没有问题。没有的话可以复制一部分过去,或者研究下怎么使用其他字体和替代方案。 但这不够,还要配置wine内模拟的windows字体,这部分字体在/home/your_username/.wine/drive_c/windows/Fonts/(其中your_username换成你的实际用户名),把...阅读全文

项目总结报告应该怎么写

意以上统下,中心句可以概括表达下方层级的内容。在结论中如果涉及层级关时,要注意逻辑递进,便于理解。比如说老板、经理、职员这三个职位排列时要按照职位的重要程度进行从上到下排列。结论:1)结论的排列顺序遵循先扬后抑,结论内容是正向的放在前面,结论内容是负向时放在后面;2)结论中必须有观点,且观点有数据支撑,表达方式为结论→理由→支撑理由的事实和依据;3)结论中的内容是正向的文字颜色可以标为绿色,内容是负向的文字颜色可以标为红色。6.方案落地执行这部分内容其实是报告发布之后,对报告中的解决方案进行跟踪落实,让我们做的事情有始有终,形成一个闭环。写在最后好的项目总结都是相似的:结构清晰、重点突出、观点明确且有数据支撑,便于快速获取关键信息。愿大家都可以写出一份可以解决实际问题好的项目总结。...阅读全文

新加坡华侨银行(OCBC) 零门槛开户 使用APP在家即可申请

状态。这一步遇到困难,可以参考这个 Youtube 视频。​6 APP读取的时候会跳出检测,这时候不要动,等待读取完毕。同样需要一些耐心,多试试,不难。​7 给身份证拍个照。点击【下一个】开始给身份证正面拍照。点击【下一个】开始人脸识别,这一步开始人脸验证。注意,不要裸露上身。​8 这些信息填完之后,点击【提供我的详细信息】,开始填写自身国家、职业、公司等详细信息。在这之前,首先是检查你之前填写的姓名和邮箱等信息。​9 选择工作类型,选择【受雇】或者【自雇】。填写税务信息。纳税人识别号为自己身份证号。​10 这里选择 【不,我未曾/没有担任重要的公职,也不是一名已/被委托担任公共职务的公共职者 的家庭成员或关亲近的人】然后,勾选电子邮件和短信,☑️ 勾选 【本人确认懂英文,并同意以英文形式...阅读全文

不要光想着价格 QLC 与 TLC 闪存有什么不同

普通人来说,也没有那么可怕。一般人平均每天的写入量很少能超过10GB,那么我们就假设是10GB,120GB QLC SSD,写入寿命达到120 TB。假设写入放大数则假定为3,甚至5,那么三年之内,很难写坏它。且QLC闪存拥有高容量,也意味着其在QLC驱动器中可通过超额配置以延长产品本身的有效寿命。 目前TLC SSD在质保期普遍达到3年,有的质保期甚至达到5年。那么QLC 寿命问题又有什么好担心? 2、稳定性 QLC闪存是存储4位电荷,有16种状态,而TLC存储3位电荷,有8种状态 。这意味着QLC闪存单位存储密度更大,是TLC的2倍,单颗芯片可达到256GB甚至512GB。但是,也因如此,QLC闪存的电压更难控制,干扰更复杂,而这些问题都会影响QLC闪存的性能、可靠性及稳定性。不过...阅读全文

博文 2017-08-01 09:52:54 debian.cn

深入理解Golang之context

:= &timerCtx{ cancelCtx: newCancelCtx(parent), deadline: d, } // 建立新建context与可取消context祖先节点的取消关联关 propagateCancel(parent, c) dur := time.Until(d) if dur <= 0 { c.cancel(true, DeadlineExceeded) // deadline has already passed return c, func() { c.cancel(false, Canceled) } } c.mu.Lock() defer c.mu.Unlock() if c.err == nil { c.timer = time.AfterFunc(dur, func...阅读全文

博文 2021-01-27 09:05:27 知乎

HTML 5.1 — 14 项新增特性及使用案例

4、反序链接关 rev 属性在 HTML4 里有定义,但是它并没出现在 HTML5 里。W3C 决定在 元素里重新包含 rev 属性。rev 属性标识当前和反向的链接文档的关。它已经被包含来支持广泛使用数据结构标记格式,RDFa。 让我们用两个文档来举个例子,每个包含一课程,在它们之间的链接可以使用如下 rel 和...阅读全文

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

Gitlab CI 配置文件 .gitlab

only no 定义一列git分支,并为其创建job except no 定义一列git分支,不创建job tags no 定义一列tags,用来指定选择哪个Runner(同时Runner也要设置tags) allow_failure no 允许job失败。失败的job不影响commit状态 when no 定义何时开始job。可以是on_success,on_failure,always或者manual dependencies no 定义job依赖关,这样他们就可以互相传递artifacts cache no 定义应在后续运行之间缓存的文件列表 before_script no 重写一组在作业前执行的命令 after_script no 重写一组在作业后执行的命令 environment...阅读全文

博文 2018-12-12 21:01:19 ci.yaml 详解(上)

Gitlab CI 配置文件 .gitlab

。 默认情况下,job artifacts 只正对成功的jobs收集。 artifacts用于指定成功后应附加到job的文件和目录的列表。只能使用项目工作间内的文件或目录路径。如果想要在不通的job之间传递artifacts,请查阅依赖关。以下是一些例子: 发送binaries和.config中的所有文件: artifacts: paths: - binaries/ - .config 发送所有没有被Git跟踪的文件: artifacts: untracked: true 发送没有被Git跟踪和binaries中的所有文件: artifacts: untracked: true paths: - binaries/ 定义一个空的dependencies可以禁用artifact传递: job...阅读全文

博文 2018-12-12 21:09:02 ci.yaml 详解(下)

域名与商标: 如何防止域名被仲裁

”、“梅花”等。从这一点上看,域名的独有性,似乎更好一些。 从商业的角度来看,域名因其独特性,可以把它当作一个企业的网上商标。不过,可以肯定地说,域名与商标没有绝对的联。 在这个眼球经济时代,作为企业,最理想的状态,当然是希望它的实物商标与网上商标保持高度一致的,以使大众无论从哪个途径,都能将目光聚焦在它的身上,为此,企业们也付出了巨大的努力,比如商标之争比较有名的当属“加多宝”和“王老吉”,域名方面,作为米农,所听到见到的域名仲裁案例也不在少数。 由于域名和商标分属不同领域的不同统,再加上时间差的原因,一般企业想要达到理想状态,是有难度的。比如说,自已注册的商标,其对应的域名不一定是未注册状态,这个时候,域名权与商标权,甚至商号权、网站名称权等就形成了冲突。除了收购外,另外一个途径就是仲裁...阅读全文

博文 2019-01-18 14:59:59 debian.cn

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

增强和安全修复,主要针对的场景是数据中心大规模 Java 应用部署情况下,Java 应用稳定性、效率以及性能的优化与提高。从目前公开的功能和披露的规划上来看,Dragonwell 8 具有下述三大重要特性: JwarmUp JwarmUp 是为了解决双十一抢购场景下,阿里巴巴 Java 统 warmup 的痛点。以普通的 Java 应用举例,JVM 需要经过解释执行 (interpreter) 找到热点,然后通过 JIT 编译器来加速热点方法的运行。对于高并发场景,应用启动之后会有很长时间处于寻找热点、编译热点的状态。这时,很多性能指标 (CPU 使用率、TPS 吞吐量、 RT 响应时间) 不是非常理想。换句话说,当 Java 应用启动并提供服务之后,在相当长的时间内处于 warmup 状...阅读全文

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

Kubernetes源码探疑:Pod IP泄露排查及解决方法

IP,这是造成IP泄露的直接原因,如下图所示。 问题转移到kubelet, 为什么kubelet会传入一个空的CNI_NETNS环境变量参数给CNI插件? 随后跟踪kubelet的运行日志,发现不少Job Pod创建和销毁的时候,生成了一个额外的Sandbox容器。Sandbox容器是k8s pod中的Infra容器,它是Pod中第一个创建出来的容器,用于创建Pod的网络名称空间和初始化Pod网络,例如调用CNI分配Pod IP,下发策略路由等。它执行一个名为pause的进程,这个进程绝大部分时间处于Sleep状态,对统资源消耗极低。奇怪的是,当任务容器busybox运行结束后,kubelet为Pod又创建了一个新的Sandbox容器,创建过程中自然又进行了一次CNI ADD调用,再次申请了...阅读全文

在 Kubernetes 上扩展 TensorFlow 模型

由于人工智能 / 机器学习日益集成到应用和业务流程中,因此生产级机器学习模型需要更多可扩展的基础设施和计算能力,以用于训练和部署。 现代机器学习算法在大量数据上进行训练,并且需要数十亿次迭代才能使成本函数最小化。这类模型的垂直扩展会遇到操作统级别的瓶颈,包括可提供的 CPU、GPU 和存储的数量,而且对于这种类型的模型,已经证明效率并不高。更为高效的并行处理算法,例如异步训练和 allreduce 式训练,需要一个分布式集群统,由不同的 worker (工作器)以协调的方式同时学习。 可扩展性对于在生产环境中服务深度学习模型也非常重要。将单个 API 请求处理到模型预测端点可能会触发复杂的处理逻辑,这将花费大量时间。由于更多用户访问模型的端点,为了有效地处理客户端请求,需要更多服务实例...阅读全文

Apache Kafka发布 3.0 正式版

Streams 时间戳同步KIP-695增强了 Streams 任务如何选择获取记录的语义,并扩展了配置属性的含义和可用值max.task.idle.ms。此更改需要 Kafka 消费者 API 中的一种新方法,currentLag如果本地已知且无需联 Kafka Broker,则能够返回特定分区的消费者滞后。KIP-715:在流中公开提交的偏移量3.0开始,三个新的方法添加到TaskMetadata接口:committedOffsets,endOffsets,和timeCurrentIdlingStarted。这些方法可以允许 Streams 应用程序跟踪其任务的进度和运行状况。KIP-740:清理公共 API TaskIdKIP-740代表了TaskId该类的重大革新。有几种方法和所有内部字段已被...阅读全文

博文 2021-09-26 14:13:03 joseph

Cortex: 高可用和水平扩展Prometheus监控系统

Prometheus已成为cloud-native世界中的默认监控应用程序和统。对于真是使用案例,Prometheus应该是高可用的,这是有挑战的。一旦在高可用性模式下运行Prometheus,就会遇到很多问题,例如数据重复,为重复数据实现single pane等。为了解决此问题,Cortex诞生了。Cortex是一个CNCF sandbox project,旨在为使用Prometheus 收集的指标提供长期存储和全局指标视图。首先让我们看一下Cortex的主要目标,然后看一下它为Prometheus解决的一些问题。水平可伸缩性– Cortex可以分成多个微服务,每个微服务都可以独立地水平伸缩。例如,如果许多Prometheus实例正在向Cortex发送数据,则可以扩展Ingester微...阅读全文

博文 2021-10-09 17:00:22 知乎

WebAssembly:无需容器的 Docker (下)

包括一个可以构建到 wasm32-wasi 目标的 clang 编译器,以及在 WASI 之上实现基本 POSIX 统调用接口的 wasi-libc。 使用 WASI SDK,我们可以从 PHP 的代码库中构建一个用 C 编写的 Wasm 模块,。之后,我们需要一个非常简单的基于 scratch 的 Dockerfile 来制作一个可以使用 Docker+Wasm 运行的 OCI 镜像。构建一个 WASM 二进制码假设你现在位于 wlr-demo 文件夹,这是前期准备工作的一部分,可以运行以下命令来构建 Wasm 二进制文件。export WASI_SDK_ROOT=/opt/wasi-sdk/ export WASMLABS_RUNTIME=wasmedge ./wl-make.sh...阅读全文

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

Debian 向左:或将迎来根本性改革 - OSCHINA

决定离开贡献18年之久的 Debian。促使他离开的直接原因是,Debian 社区对于是否接受 systemd(一种 init 进程)争执不下。这件事引起了 Debian 内部长达数年的争论,至今仍然没有定论。 当然,systemd 事件仅仅是一个引子,Joey 已经感受到了 Debian 社区背后所隐藏的某种“病态”。 “ 我第一次感觉到 Debian 的这种(病态),是在 Debian 改变‘ /usr/doc’这一错误的文件保存路径(统文件的标准要求被保存在‘usr/share/doc’中)的时候,完成这样一个再简单不过的操作更改,Debian 居然花了6年之久。” 在 Joey Hess 看来,这实在太荒诞了。 要知道,Joey 并不是为此离开的第一位前辈。此前,Matthew...阅读全文

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

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

value值自增指定的整型数值,并返回自增后的值。只对可以转换为整型的String数据起作用。时间复杂度O(1) DECR/DECRBY:同INCR/INCRBY,自增改为自减。 INCR/DECR列命令要求操作的value类型为String,并可以转换为64位带符号的整型数字,否则会返回错误。 也就是说,进行INCR/DECR列命令的value,必须在[-2^63 ~ 2^63 – 1]范围内。 前文提到过,Redis采用单线程模型,天然是线程安全的,这使得INCR/DECR命令可以非常便利的实现高并发场景下的精确控制。 例1:库存控制 在高并发场景下实现库存余量的精准校验,确保不出现超卖的情况。 设置库存总量: SET inv:remain "100" 库存扣减+余量校验: DECR...阅读全文

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

HTTP状态码详解

含所有本应该返回200响应中应当返回的所有实体头部域。 假如 ETag 或 Last-Modified 头部不能精确匹配的话,则客户端缓存应禁止将206响应返回的内容与之前任何缓存过的内容组合在一起。 任何不支持 Range 以及 Content-Range 头的缓存都禁止缓存206响应返回的内容。 207 由WebDAV(RFC 2518)扩展的状态码,代表之后的消息体将是一个XML消息,并且可能依照之前子请求数量的不同,包含一列独立的响应代码。 3xx 重定向 这类状态码代表需要客户端采取进一步的操作才能完成请求。通常,这些状态码用来重定向,后续的请求地址(重定向目标)在本次响应的 Location 域中指明。 当且仅当后续的请求所使用的方法是 GET 或者 HEAD 时,用户浏览器才...阅读全文

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

Jono Bacon: GPL 没落了吗?

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

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

分布式任务调度平台 XXL

将会主动触发一次子任务的执行, 多个子任务用逗号分隔; 22、一致性:“ 调度中心” 通过 DB 锁保证集群分布式调度的一致性, 一次任务调度只会触发一次执行; 23、自定义任务参数:支持在线配置调度任务入参,即时生效; 24、调度线程池:调度统多线程触发调度运行,确保调度精确执行,不被堵塞; 25、数据加密:调度中心和执行器之间的通讯进行数据加密,提升调度信息安全性; 26、邮件报警:任务失败时支持邮件报警,支持配置多邮件地址群发报警邮件; 27、推送 maven 中央仓库: 将会把最新稳定版推送到 maven 中央仓库, 方便用户接入和使用; 28、运行报表:支持实时查看运行数据,如任务数量、调度次数、执行器数量等;以及调度报表,如调度日期分布图,调度成功分布图...阅读全文

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

技术部门的 SEO 规范

、Description标签、H1文字按格式自动生成缺省版本,但统需要给SEO部门预留人工填写功能。一个页面只使用一次H1。栏目页面Title缺省格式:二级栏目名称 – 一级栏目名称 – 网站名称栏目页面翻页Title缺省格式:二级栏目名称 – 一级栏目名称 – 网站名称 – 第X页产品页面Title缺省格式:产品名称 – 网站名称栏目页面H1缺省格式:一级栏目名称 – 二级栏目名称产品页面H1缺省格式:产品名称Description标签从栏目或产品说明文字第一段截取长度20字以上、70字以下的完整句子。产品页面如果有格式化数据,Title和Description标签可以充分利用,使其组成通顺可读的句子。除非SEO部门另行要求,页面不使用Keywords标签。除非SEO部门另行要求,所有链接使用HTML代码链接...阅读全文

博文 2019-03-28 13:58:51 debian.cn

Golang 中的 channel 通道详解

发送和接收操作将导致两个goroutine做一次同步操作。 因为这个原因,无缓存Channels有时候也被称为同步Channels 。当通过一个无缓存Channels发送数据时,接收者收到数据发生在再次唤醒发送者goroutine之前。单向channel当一个channel作为一个函数参数时,它一般总是被专门用于只发送或者只接收。为了表明这种意图并防止被滥用,Go语言的类型统提供了单方向的channel类型,分别用于只发送或只接收的channel。类型 chan<- int 表示一个只发送int的channel,只能发送不能接收。相反,类型<-chan int 表示一个只接收int的channel,只能接收不能发送。(箭头<-和关键字chan的相对位置表明了channel的方向 。)这种限...阅读全文

基于thanos搭建分布式prometheus

external_labels: cluster: 158 rule_files: - /etc/prometheus/rules/*.yml remote_write: - url: http://receive集群的service ip:19291/api/v1/receive scrape_configs: remote_write部分的IP填写receive集群对外暴露的入口IP,端口是receive组件的remote-write专用端口19291,URI部分是固定的。 最后 thanos官方提供了一个sidecar方案的交互式教程,帮助大家理解thanos整个组件关和配置过程,建议学习:https://katacoda.com/thanos/courses/thanos,实际生产中建议采用方案2。 如果文章...阅读全文

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

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

,例如 Pod Yaml 容器挂载配置跟 PodPreset 容器挂载配置为同一路径时,会报错提示冲突。 最后要提一下注意的问题: 目前 PodPreset 的预设功能这块还在演进中,不过已经能大大简化了相关的管理工作,将这些公用配置从开发者手中分离出来,变成统管理配置。PodPreset 是 Namespace 级别的对象,其作用范围只能是同一个命名空间下容器。目前为 v1alpha1 版本,还不成熟,例如当我们对已创建的 PodPreset 执行非常少量的修改时,重新 apply 或者 replace 时,服务端并没有更新过来(亲测会有问题,只能删除重建),大家可以自己尝试下。 参考资料 PodPreset DocEnable PodPreset...阅读全文

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

协议介绍之深入了解 gRPC

好没有 HTTP/2 支持,也仅仅有一个可用的 protobuf 实现。为了支持 gRPC,我们 team 付出了很大的努力,也走了很多弯路,从最初使用纯 Rust 的 rust-grpc 项目,到后来自己基于 c-grpc 封装了 grpc-rs,还是有很多可以说的,后面在慢慢道来。如果你对 gRPC 和 rust 都很感兴趣,欢迎参与开发。 gRPC-rs: https://github.com/pingcap/grpc-rs 原文作者:siddontang@简书 链接:https://www.jianshu.com/p/48ad37e8b4ed 著作权归作者所有。商业转载请联作者获得授权,非商业转载请注明出处。...阅读全文

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

Debian 9 使用kubeadm创建 k8s 集群(下)

Kubernetes对象的关。 豆荚在Kubernetes中无处不在,因此了解它们将有助于您的工作。部署概述 - 提供部署概述 。 了解部署控制器如何工作非常有用,因为它们在无状态应用程序中经常用于扩展和不健康应用程序的自动修复。服务概述 - 涵盖服务,Kubernetes集群中另一个常用对象。 了解服务类型及其选项对于运行无状态和有状态应用程序至关重要。 您可以研究的其他重要概念是Volumes , Ingresses和Secrets ,所有这些在部署生产应用程序时都会派上用场。 Kubernetes提供了许多功能和特性。 Kubernetes官方文档是了解概念,查找特定于任务的指南以及查找各种对象的API参考的最佳位置。...阅读全文

博文 2019-05-13 22:57:41 debian.cn

Apollo 配置中心简单介绍

,服务端都会返回304 - Not Modified定时频率默认为每5分钟拉取一次,客户端也可以通过在运行时指定System Property: apollo.refreshInterval来覆盖,单位为分钟。客户端从Apollo配置中心服务端获取到应用的最新配置后,会保存在内存中客户端会把从服务端获取到的配置在本地文件统缓存一份 在遇到服务不可用,或网络不通的时候,依然能从本地恢复配置应用程序可以从Apollo客户端获取最新的配置、订阅配置更新通知 4.6.1 配置更新推送实现 前面提到了Apollo客户端和服务端保持了一个长连接,从而能第一时间获得配置更新的推送。 长连接实际上我们是通过Http Long Polling实现的,具体而言: 客户端发起一个Http请求到服务端服务端会保持住...阅读全文

博文 2021-04-09 17:53:51 CSDN