InfraPub 为您找到相关结果 826

王垠:如何掌握所有的程序语言

了这里面的东西,每个程序员都应该以做到这一点。嗯,但愿吧。 重语言特性,而不是语言 很多人在乎自己或者别人是否“会”某种语言,对“发明”了某种语言的人倍加崇拜,为各种语言的孰优孰劣争得面红耳赤。这些问题对于我来说都是不存在的。虽然我写文章批评过不少语言的缺陷,在实际工作中我却很少跟人争论这些。如果有其它人在我身边争论,我甚至会戴上耳机,都懒得听他们说什么 为什么呢?我发现归根结底的原因,是因为我重的是“语言特性”,而不是整个的“语言”。我能用任何语言写出不错的代码,就算再糟糕的语言也差不了多少。 任何一种“语言”,都是各种“语言特性”的组合。打个比方吧,一个程序语言就像一台电脑。它的牌子能叫“联想”,或者“IBM”,或者“Dell”,或者“苹果”。那么,你以说苹果一定比 IBM 好...阅读全文

博文 2017-07-10 10:13:17 debian.cn

Docker 17.06 社区版发布

今天我们发布了Docker CE 17.06,它包含了诸多新特性、优化和bug修复。我们在四月份的DockeCon上公布了Moby项目,Docker CE 17.06是第一个完全构建在它基础上的Docker版本。变更日志中能看到完整的更新列表,我们来看看它的一些新特性。 我们也为这篇文章制作了一个频版本。 多阶段构建 17.06 CE最大的特性是它的多阶段构建(multi-stage builds),它最初在四月的DockerCon被公布,现在已经达到了稳定版本。多阶段构建能从一个Dockerfile中构建出更加简洁、体积更小的Docker镜像。 多阶段构建通过构建过渡镜像并产生输出。这样就能在一个过渡镜像中编译代码,在最终的镜像中只使用它的输出。例如,Java开发者通常使用Apache...阅读全文

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

CCPA vs. GDPR:欧美这两部个人数据保护法有什么差异?

据《欧盟一般个人数据保护条例》(GDPR)第4条第1款的规定,“个人数据”指与已经识别(identified)或被识别(identifiable)的自然人(“数据主体”)相关的任何信息。 其中,“被识别的自然人”,指通过姓名、识别号码、位置数据、在线身份识别码等标识符,或通过针对该自然人的身体、生理、遗传、心理、经济、文化或社会身份等特定相关的一个或多个要素,能够直接或间接地被识别出的个人[1]。 判断自然人是否被识别,应考虑数据控制者或另外一人能合理使用到的所有方式(all the means reasonably likely to be used)。判断何种方式为“能合理使用到”,应考虑所有客观因素:例如当前现有的技术、技术的发展、识别所需的成本和时间等[2]。 由于实践中交...阅读全文

树莓派 9 周年:你不知道的树莓派冷知识

双监器输出 vs 单 HDMI 输出USB 2.0 升级为 USB 3.0 端口如果说 35 美元仍然贵了些,那么还有更便宜的树莓派型号。比如 Raspberry Pi Zero 仅售 5 美元,而 Raspberry Pi Pico 微控制器板仅售 4 美元。 9.每年都有一场“树莓派争霸赛”​▲ 用树莓派打造的智能车是的,你以与其他的树莓派开发者同台竞技。“Pi Wars” 是一年一度的机器人竞赛,参赛者必须使用树莓派设备来制造机器人身上所有的装备。比赛内容包括各种挑战,例如导航障碍物路线,弹出气球和导航迷宫。比赛项目有人力遥控的机器人,也有全自动化的机器人挑战。今年的 Pi Wars 将于 2021 年 7 月举行。参考链接:https://www.tomshardware.com...阅读全文

博文 2021-03-11 17:03:55 diablo4

技术部门的 SEO 规范

,不要使用JS生成。所有用户生成内容(UGC)中的链接加nofollow属性。栏目、产品/文章页面主图加ALT文字,如没有人工填写,与页面Title相同。禁止使用任何隐藏文字或链接。尽量避免使用表格(table),尤其是嵌套表格。 页面打开速度相关 在不明显影响觉效果前提下,所有图片均需要最大程度压缩处理后才能使用。不要使用超出实际显示尺寸的图片(不要上传大尺寸图片,然后缩小尺寸显示)。页面纯文字代码(包括HTML、JS、CSS)不超过500K。特殊页面如首页适当放宽。删除未使用的CSS代码。尽量合并CSS文件。慎用、少用JS。在主流浏览器测试JS是否拖慢页面打开速度。使用主流浏览器实际测试页面打开速度,应不超过3秒。条件允许的话,从多省市测试。 功能使用及代码 除非另行要求,网站所有页...阅读全文

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

Jono Bacon: GPL 没落了吗?

不久之前我看到了 RedMonk 的 Stephen O'Grady 发了一个关于开源协议的有趣的推特,那个推特里面有这张图, Redmonk Black Duck Licensing 这张图片显示了从 2010 到 2017 年间各种开源协议之间的使用率的变化。在这张图片里,显然 GPL 2.0 —— 最纯净的 copyleft 协议之一 —— 的使用率降低了一多半。该图表表明,开源项目中 MIT 协议和 Apache 协议开始受欢迎。GPL 3.0 的使用率也有所上涨。 这些意味着什么? 为什么 GPL 2.0 的使用率跌的这么多但是 GPL 3.0 仅仅是涨了一丁点?为什么 MIT 协议和 Apache 协议的使用率涨了那么多? 当然,有很多原因以解释这件事情,但是我想这是因为商业...阅读全文

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

谷歌公开了内部管理Infra层的两个工具的Paper

务模型,随后生成intent来配置Borg,负载均衡器和Spanner。 这样,我们把intent的生成和驱动分离开,将NxM问题变为N+M问题,让配置和服务模型变得管理。 图4:变成N+M问题,驱动层没有展示 这种明确的intent也让我们能够检配置,以更容易地对复杂设置进行故障排除。比如,使用直接集成进提供者的模版系统,很难分辨问题是由于模版逻辑,还是提供者的逻辑导致的。明确的intent使得很容易分辨是哪一层导致问题(见图4)。这是预期的intent吗?如果是,问题就出在提供者那里。如果不是,那就是服务模型的问题。 基于intent的生产模型及其工具称为Prodspec。它是从2000年中的Gmail演进出来的想法。包括这些组件: 组织内容的数据模型生成内容的pipeline服务...阅读全文

博文 2023-01-08 11:23:20 CSDN博客

社交巨人Facebook使用Linux和Btrfs的姿势

硬件本身存在的问题,例如静默数据损坏。事实上,通过使用Btrfs我们发现了一些较为严重的硬件bug,这对Btrfs来说也是一个利好。 Linux.com:刚才我们聊了Facebook使用Linux的情况,我比较好奇您怎么看待和使用原生内核,毕竟大家都是根据实际生产环境的需求来fork一个内核的分支,鲜有人使用原生版本? Chris Mason:从Linux的角度来看,我们的主要目标是尽能和原生内核保持一致——我们的目标是至少每年升级一次内核,我们还试图进一步缩短这个更新周期。我们有一个上游优先策略,在使用一个主线更新之前我们要先了解它。如果我们想添加一个特性到Linux内核中,我们首先会把它合并到内核的主线更新中。 Linux.com:那为什么还需要fork一个自己的版本? Chris...阅读全文

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

Intel 为啥要给 ARM 代工

,这不仅为 ARM 阵营 IC 设计公司多了一个技术实力极强的流片渠道,也使 ARM 芯片以在采用更好的制造工艺下获得更好的性能。 然而,目前 Intel 对外开放代工的时机却略显晚了一些,虽然在制造工艺上 Intel 依然领先,但至少在命名上,三星和台积电已经超越了 Intel。对于原本不大规模对外开放代工业务的 Intel 来说,三星和台积电在制造工艺上注水压根就无所谓。 但是对于准备对外开放代工业务,和台积电、三星抢生意的 Intel 来说,如果坐台积电和三星在制造工艺命名上耍花招,就很能会使自己失去一些订单,蒙受利益损失。特别是在当前制造工艺命名比较乱的情况下,继台积电推出 12nm 制造工艺后,三星推出 6nm、8nm 制造工艺。 因此,Intel 推出新的衡量半导体工艺水平的...阅读全文

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

kubectl 创建 Pod 背后到底发生了什么?—探寻 Kubectl 创建 Pod 的原理

关,该操作不会影响到系统的稳定运行。这种对资源隔离的重也体现在 Controller 本身的设计中:Controller 不能对自己没有明确拥有的资源进行操作,它们应该选择对资源的所有权,互不干涉,互不共享。 有时系统中也会出现孤儿(orphaned)资源,通常由以下两种途径产生: 父级资源被删除,但子级资源没有被删除垃圾收集策略禁止删除子级资源 当发生这种情况时,Controller 将会确保孤儿资源拥有新的 Owner。多个父级资源以相互竞争同一个孤儿资源,但只有一个会成功(其他父级资源会收到验证错误)。 Informers 你能已经注意到,某些 Controller(例如 RBAC 授权器或 Deployment Controller)需要先检索集群状态然后才能正常运行。拿...阅读全文

博文 2022-04-18 16:18:04 CSDN

Web前端知识体系精简

页面就是由一堆html标签组成的代码,,人以通过化的方式来判断页面上哪些内容是重点,而机器做不到。 但搜索引擎会根据标签的含义来判断内容的权重,因此,在合适的位置使用恰当的标签,使整个页面的语义明确,结构清晰,搜索引擎才能正确识别页面中的重要内容,并予以较高的权值。比如h1~h6这几个标签在SEO中的权值非常高,用它们作页面的标题就是一个简单的SEO优化。 2、页面渲染机制 页面渲染就是浏览器的渲染引擎将html代码根据CSS定义的规则显示在浏览器窗口中的过程。大致工作原理如下: 用户输入网址,浏览器向服务器发出请求,服务器返回html文件; 渲染引擎开始载入html代码,并将HTML中的标签转化为DOM节点,生成DOM树; 如果中引用了外部css文件,则发出css文件请求...阅读全文

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

Gitlab CI 配置文件 .gitlab

入手动执行。GitLab 9.0 开始引入手动停止。GitLab 9.2 开始引入保护手动操作。 手动操作指令是不自动执行的特殊类型的job;它们必须要人为启动。手动操作指令以从pipeline,build,environment和deployment图中启动。 部署到生产环境是手动操作指令的一个很好示例。 了解更多请查看environments documentation。 手动操作指令以是选的或阻塞。在定义了手动执行的那个stage中,手动操作指令将会停止pipline中的自动执行指令。当有人通过点击play按钮来执行需要手动执行的job时,以来恢复pipeline的执行。 当pipeline被阻塞时,即使是pipeline是成功状态也不会merge。被阻塞的pipelines...阅读全文

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

WebAssembly:无需容器的 Docker (下)

$(pwd)/images/php/docroot:/docroot \ ghcr.io/vmware-labs/php-wasm:7.4.32-cli-aot -S 0.0.0.0:8080 -t /docroot 但是如果我们看 docker stats,我们只看到传统容器的数据。这之后能会变化,因为 Docker+Wasm 现在是 beta 版特性。 所以,如果真的想看看发生了什么,以改为监对照组。 每个传统容器都有自己的控制组,如 docker/ee44...。另一方面,Wasm 容器作为 podruntime/docker 控制组的一部分包含在内,以间接观察它们的 CPU 或内存消耗。$ systemd-cgtop -kP --depth=10 Control Group...阅读全文

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

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

协议介绍之深入了解 gRPC

,或者只想给特定的 stream 分配资源,receiver 端就能不想处理这些数据。譬如,如果 client 给 server 请求了一个频,但这时候用户暂停观看了,client 就能告诉 server 别在发送数据了。 虽然 TCP 也有 flow control,但它仅仅只对一个连接有效果。HTTP/2 在一条连接上面会有多个 streams,有时候,我们仅仅只想对一些 stream 进行控制,所以 HTTP/2 单独提供了流控机制。Flow control 有如下特性: Flow control 是单向的。Receiver 以选择给 stream 或者整个连接设置 window size。 Flow control 是基于信任的。Receiver 只是会给 sender 建议它...阅读全文

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

译:零信任对 Kubernetes 意味着什么

确保它在每一点都得到执行。这听起来像是常识。但与技术中的许多新想法一样,理解零信任的最佳方法是了解它的反应。零信任摒弃了边界安全的观点。在边界安全模型中,在敏感组件周围实施“装甲”。例如,数据中心周围能有一个防火墙,其任务是阻止问题流量和参与者进入。这种模型,有时被称为城堡策略,具有直观的意义:城堡的墙壁是为了将坏人拒之门外。如果你在城堡里,那么根据定义,你就是一个好人。零信任模型表明,边界安全已经不足。根据零信任原则,即使在安全边界内,仍必须将用户、系统和网络流量为不受信任。国防部的参考架构很好地总结了这一点:“在安全边界之外或之内运行的任何参与者、系统、网络或服务都是不信的。相反,我们必须验证任何试图建立访问权限的事物。从边界验证一次到对每个用户、设备、应用程序和交易的持续验证,这...阅读全文

使用 MongoDB 之前应该知道的 14 件事

“模式浏览器(Schema Explorer)”这样以执行定期模式检查的特性也是值得拥有的。 忘记排序规则(排序顺序) 这比其他任何的配置错误都会导致更多的挫折和时间浪费。MongoDB 默认使用 二进制排序规则 。这对任何地方的文化都是不利的。在 80 年代,大小写敏感、重音敏感、二进制排序规则,和念珠、土耳其长衫和卷胡子一起,被为奇怪的时代错误。现在,他们没法辩解了。在现实生活中,motorbike 和 Motorbike 就是一样,而 Britain 和 britain 就是同一个地方。小写字母和大写字母只是书写上的等价。就不要让我再说重音字符排序规则了。当你创建一个 MongoDB 数据库时,使用一种合乎系统 用户语言和文化 的 重音敏感、大小写敏感 排序规则。这使得字符串数据的检...阅读全文

如何读懂火焰图?+ 实例讲解程序性能优化 - xuxh120

API收集堆栈跟踪和跟踪内存分配,因而其以和OpenJDK、Oracle JDK和其他基于HotSpot JVM的Java应用在运行时协同工作。 Github项目链接地址:https://github.com/jvm-profiling-tools/async-profiler Async-profiler以跟踪以下类型的事件: CPU周期; 硬件和软件性能计数器,如缓存未命中、分支未命中、页面错误、上下文切换等; Java堆中的分配; 满足的锁定尝试,包括Java对象监器和重入锁; 支持的平台Linux / x64 / x86 / ARM / AArch64macOS / x64注意:macOS分析仅限于用户空间代码。 生成的火焰图,绿色代表用户栈,黄色代表jvm,红色代表内核;横坐标...阅读全文

博文 2022-03-11 10:05:09 博客园

Git 介绍与使用详解

没有中央服务器,每个人的电脑就是一个完整的版本库,这样,工作的时候就不需要联网了,因为版本都是在自己的电脑上。举个例子,要浏览项目的历史,Git 不需外连到服务器去获取历史,然后再显示出来——它只需直接从本地数据库中读取。 你能立即看到项目历史。 如果你想查看当前版本与一个月前的版本之间引入的修改,Git 会查找到一个月前的文件做一次本地的差异计算,而不是由远程服务器处理或从远程服务器拉回旧版本文件再来本地处理。 2.安装、配置Git 2.1GUI化界面推荐 1.GitForWindows https://gitforwindows.org/ 自带GIT BASH和GIT GUI 2.TortoiseGit https://tortoisegit.org/download/ 3...阅读全文

博文 2017-02-25 09:00:27 程序员

Debian 往事: 与已故创始人 Ian Murdock 的昔日访谈

System。后来他在说道 Debian 发行版的时候还曾提到, 「我开发这个版本时的灵感很大程度上来源于 SLS,因为我自己使用 SLS 时我曾对很多地方非常不满。我想着要去改善 SLS,但后来我意识到最好的方法就是从头开始。」 Murdock 在 1999 年那次访谈中曾告诉我: 「开发 SLS 的那个人败就败在他想一个人搞定所有事情。Linux 让我意识到的就是这样做出来的模型永远都不会是最佳的产品。我们真正要做的是找出 Linux 最超前的产品,然后围绕这个型号再打造新的系统。」 简单说,Murdock 的观点就是:Linux 的内核完全以应用到整个操作系统乃至应用上。 如果你想打造一个完整的操作系统,你该如何给员工分工,给他们每一个人都布置相应的任务,最后再拼凑成一个完整的系统呢...阅读全文

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

OpenAI掌门人Sam Altman:AI的下一个发展阶段_OneFlow

和图像的互相转换,而是所有模态之间都以方便地互相转化。 第三个方向是,模型以持续学习。目前的模型如GPT都停滞在当初训练好的状态,并不会随着使用次数的增加而自我优化。我相信未来以改变这一点。 如果上述三点都能实现的话,我们就以解锁无数全新的应用场景,实现真正的科技革新,帮助人类实现科技的飞跃式前进。而且我相信,我们也有办法利用AI推动科研进步和新知识的产生。 我认为,现在普遍存在的一种错误观点是:“虽然语言模型的功能已经比较完善,还以应用到图像和频领域,将应用智能的边际成本降得非常低,但归根结底,它只是模仿人类做过的东西,不能为人类产生新知识,不能治疗癌症,也不能拓展人类已知的科学领域。”我相信,AI的发展会让持这种观点的人大吃一惊。 Reid Hoffman:AI将如何影响未来...阅读全文

博文 2023-02-04 15:55:11 CSDN博客

Hadoop 核心 - HDFS 分布式文件系统详解

全模式 6. HDFS 的 block 块和副本机制 HDFS 将所有的文件全部抽象成为 block 块来进行存储,不管文件大小,全部一同仁都是以 block 块的统一大小和形式进行存储,方便我们的分布式文件系统对文件的管理。 所有的文件都是以 block 块的方式存放在 hdfs 文件系统当中,在 Hadoop 1 版本当中,文件的 block 块默认大小是 64M,Hadoop 2 版本当中,文件的 block 块大小默认是128M,block块的大小以通过 hdfs-site.xml 当中的配置文件进行指定。 dfs.block.size 块大小 以字节为单位 //只写数值就以 阅读全文

Kafka 3.0新特性全面曝光,真香!

发送消息的客户端。 consumer:消息消费者,就是从broker拉取数据的客户端。consumer group:消费者组,由多个消费者consumer组成。消费者组内每个消费者负责消费不同的分区,一个分区只能由同一个消费者组内的一个消费者消费;消费者组之间相互独立,互不影响。所有的消费者都属于某个消费者组,即消费者组是一个逻辑上的订阅者。broker:一台服务器就是一个broker,一个集群由多个broker组成,一个broker以有多个topic。topic:以理解为一个队列,所有的生产者和消费者都是面向topic的。partition:分区,kafka中的topic为了提高拓展性和实现高用而将它分布到不同的broker中,一个topic以分为多个partition,每个...阅读全文

博文 2022-04-28 16:02:11 mp.weixin.qq.com

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

mymaster 60000 #多长时间没有响应为Master失效 sentinel failover-timeout mymaster 180000 #两次failover尝试间的间隔时长 sentinel parallel-syncs mymaster 1 #如果有多个Slave,以通过此配置指定同时从新Master进行数据同步的Slave数,避免所有Slave同时进行数据同步导致查询服务也不用 另外需要注意的是,Redis Sentinel实现的自动failover不是在同一个IP和端口上完成的,也就是说自动failover产生的新Master提供服务的IP和端口与之前的Master是不一样的,所以要实现HA,还要求客户端必须支持Sentinel,能够与Sentinel交互获得新Master的...阅读全文

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

HAProxy用法详解 最详细中文文档

作一个单词,因此,中间的任何空白字符都必须使用反斜线进行转义。此参数仅在与“stats auth”配置使用时有意义。 :实现HTTP基本认证时显示在浏览器中的领域名称,用于提示用户输入一个用户名和密码。 尽管“stats realm”一条就能够启用统计报告,但还是建议设定其它所有的参数,以免其依赖于默认设定而带来非期后果。具体请参照“stats enable”一节的说明。 3.14 stats scope stats scope { | "." } 启用统计报告并限定报告的区段,不能用于“frontend”区段。当指定此语句时,统计报告将仅显示其列举出区段的报告信息,所有其它区段的信息将被隐藏。如果需要显示多个区段的统计报告,此语句以定义多次。需要注意的是,区...阅读全文

博文 2014-05-10 17:14:46 debian.cn

Open Source Initiative 批准四个新的开源许可证

作为"开放源码定义"的管理者,Open Source Initiative(OSI)20多年来一直将许证指定为"Open Source"。这些许证是开源软件生态系统的基础,确保每个人都能使用、改进和共享软件。当一个许证被批准时,是因为 OSI 相信该许证促进了合作和共享,使参与生态系统的每个人都受益。 在过去的 20 年里,世界已经发生了翻天覆地的变化,软件现在以新的方式甚至是难以想象的方式被使用。OSI 已经看到,以前被人们所熟悉的开源许证并不总是能适合这些新的情况。因此,OSI 作为许证管理员站了出来,为更广泛的用途提交了几个新的许证。OSI 面临的挑战是评估这些新的许证概念是否会继续推动共享和协作,是否值得被称为"开源"许证。最终 OSI 批准了一些用于特殊领域的新...阅读全文

博文 2021-03-01 10:44:35 OSChina

不可变基础设施 (immutable infrastructure) - 云原生定义解析

云原生技术的不断发展,2018年,CNCF扩展了云原生技术的定义,以下是云原生技术的新定义:“云原生技术有利于各组织在公有云、私有云和混合云等新型动态环境中,构建和运行弹性扩展的应用。云原生的代表技术包括容器、服务网格、微服务、不变基础设施和声明式API。这些技术能够构建容错性好、易于管理和便于观察的松耦合系统。结合靠的自动化手段,云原生技术使工程师们能够轻松地对系统作出频繁和预测的重大变更。”其中,像容器,微服务等概念早已深入人心,而很多开发人员都对此次提及的“不变基础设施”这个概念有不少疑惑,下文将对这个概念进行解析。其实不变基础设施这个概念由来已久,并在不同的场合被很多技术专家已不同的形式提出并讨论过, 例如:“Trash Your Servers and Burn...阅读全文

OpenSSL 3.0 正式发布,更改许可协议并弃用所有低级别 API

经过 3 年的开发,17 个 alpha 版本,2 个 beta 版本,超过 7500 个提交,以及来自 350 位不同开发者的贡献,OpenSSL 3.0 终于正式发布了。OpenSSL 1.1.1 以来的主要变化主要版本开发者以从这里下载 OpenSSL 3.0,并升级你的应用程序使之兼容。OpenSSL 3.0 是一个大版本升级,并不完全向后兼容以前的版本。大多数使用 OpenSSL 1.1.1 的应用程序仍然以正常工作,只是需要重新编译(能会有关于使用废弃的 API 的编译警告)。还有一些不能完全兼容的应用能需要进行修改才能正确编译和使用。如果应用程序需要利用 OpenSSL 3.0 中的一些新功能(例如 FIPS 模块),也需要对应用进行更改。许证变更在以前的版本中...阅读全文

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

AWS省钱攻略:预留实例怎么玩

AWS的预留实例(Reserved Instance)是一种计费方式,并不是一种计算实例,简单讲是一个“包年包月”的优惠方式。购买RI后,以获得30%以上,至最高 75% 的优惠。你能会说:“这些我都知道,并且RI我已经在用了。” 你真的熟悉 RI 吗? 我们知道预留实例(RI)分为两种: 标准RI与转换RI(CRI),转换RI的价格往往较高而不容易被接受,而我们又经常遇到需要调整RI,那么我们购买的标准RI能不能进行适当的转换呢?答案是没问题的,AWS为满足客户的需求,提供了很灵活性的设定。 今天主要介绍一下RI的三个灵活属性:大小灵活性匹配,合并拆分,转换(CRI),我们暂且这么称呼,三者适用于不同的场景,是互相补充的关系。 大小灵活性匹配 场景:区域范围RI 、相同实例类型...阅读全文

博文 2019-08-18 18:26:19 debian.cn

使用 cURL 对Web请求进行性能测试

在做 Web 开发的时候,经常需要对 Web Page 或者 REST-ful API 做简单的 Benchmark。本文将介绍如何使用 cURL 进行简单快速的性能评测。本文内容分为以下两部分: 使用 curl 查看加载时间 使用 curl -w 查看更多的网络情况 使用 curl 查看加载时间 curl -s -w "%{time_total}\n" -o /dev/null http://www.github.com/ 1.492 以看到请求时间为 1.492 秒。此时: -s, --silent: 让 curl 保持静默模式,不会输出进度条 -w "%{time_total\n}":输出使用时间 -o /dev/null: 这个参数用来隐藏 response 的内容 如果使用...阅读全文

博文 2018-11-28 18:40:47 debian.cn

GoDaddy SSL证书七折购买图文教程

SSL是网络加密传输协议,安装SSL数字证书之后,就以通过加密方式访问网站。SSL证书的作用主要是确保网络传输数据安全,GoDaddy 提供了的 SSL 证书服务比较受欢迎。下面,我将给大家介绍,如何使用30%的折扣码,在 GoDaddy 网站上购买 SSL 证书。 1.通过本优惠链接进入Godaddy官网,点击Logo右边的菜单,然后依次点击 “Web Security” → “SSL Certificates”,下拉后,我们以看到这些选项, 国内用户访问的,多半会跳转到 sg.godaddy.com 下,以不影响购买。页面上我们看到的价格,也是优惠前的价格。 2.GoDdaddy提供了多种 SSL证书,结合自己的需要选择。如果需要用通配符证书,选择第三个 Wildcard SSL...阅读全文

博文 2020-03-23 14:47:26 debian.cn

系统解析JDK源码,领略大牛设计思想,JAVA面试必备

系统解析JDK源码,领略大牛设计思想,JAVA面试必备 download:https://www.51xuebc.com/thread-555-1-1.html Vue3实战商城后台管理系统开发示例 Vue是一款流行的JavaScript框架,它以帮助我们快速构建高效、维护、易用的Web应用程序。在本文中,我们将介绍如何使用Vue3来开发一个商城后台管理系统。 技术栈选型 在开始开发之前,我们需要选择合适的技术栈。以下是我们所采用的技术: Vue.js 3:Vue.js 3是Vue框架最新版本,它具有更好的性能、更好的TypeScript支持、更好的响应式系统等特点,以提高开发效率和应用性能。 Element Plus:Element Plus是一套基于Vue3的UI组件库,提供了丰...阅读全文

博文 2023-05-27 12:50:27 bianchengyuan123

Java 12 / JDK 12 正式发布

CDS Archives 默认类数据共享归档文件344Abortable Mixed Collections for G1 中止的 G1 Mixed GC346Promptly Return Unused Committed Memory from G1 G1 及时返回未使用的已分配内存 下边分别来看看: Shenandoah: A Low-Pause-Time Garbage Collector (Experimental) Shenandoah:低暂停时间的 GC(实验性功能) 新增了一个名为 Shenandoah 的 GC 算法,通过与正在运行的 Java 线程同时进行 evacuation 工作来减少 GC 暂停时间。使用 Shenandoah 的暂停时间与堆大小无关,这意味着无论堆是...阅读全文

博文 2019-03-20 12:46:27 debian.cn

WebAssembly时代 Rust也想成为Web语言

目前 Mozilla 正在基于 WebAssembly 移植代码格式研发 JavaScript 和 Rust 之间的桥梁——wasm-bindgen,意义是提高 JavaScript 和 Rust 之间的互操作性。Mozilla 这么做是想让 Rust 成为类似 JavaScript 的 Web 语言,让它能够与 Web 应用中的 WebAssembly 和 JavaScript 一起使用。 Wasm-bindgen 提供 WebAssembly(wasm)模块和 JavaScript 之间的高级别交互。使用 wasm-bindgen,JavaScript 和 WebAssembly 之前不仅以通过整形和浮点型进行通信,还以使用字符串、JavaScript 对象和类进行。 wasm...阅读全文

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

译:Kubernetes 最佳实践

本文翻译自 Jack Roper 的文章 Kubernetes Best Practice。译者:文章中作者从应用程序开发、治理和集群配置三个方面给出了一些 Kubernetes 的最佳实践,同时翻译过程中也加入了我过往的一些使用经验。有误的地方,也欢迎大家指正。在这篇文章中,我将介绍一些使用 Kubernetes (K8s) 时的最佳实践。作为最流行的容器编排系统,K8s 是现代云工程师掌握的事实标准。众所周知,不管使用还是维护 K8s 复杂的系统,因此很好地掌握它应该做什么和不应该做什么,并知道什么是能的,将是一个好的开局。这些建议包含 3 大类中的常见问题,即应用程序开发、治理和集群配置。最佳实践目录使用命名空间使用就绪和存活探针(译者注:还有启动探针)使用自动缩放使用资源请求和约...阅读全文

博文 2022-09-13 19:32:21 atbug.com

成功运作一个开源项目的15个要点

运作开源项目很容易。所有你需要做的就是让你的源代码用和开源,对吧?嗯,也许。其实,开源项目是否成功取决于你对项目成功的定义。且不论你是怎么定义的,创建开源项目需要大量的工作。如果你已经有了目标,那么你需要准备投资。虽然开源软件是免费的,但它的创作却不是免费的:你需要往项目中投入时间和精力等宝贵资源。 那么,你如何投资这些资源? 1、定义成功 在考虑运作开源项目之前,你需要明确定义成功的意义。这里有很多因素要考虑。只将代码放入公开访问的存储库就以了,还是说你想对你的项目做更多?合作与采用对你来说重要吗?你只是为了打造作为一名软件开发者的声誉吗?你对成功的定义是否包括长期的行性?你想围绕这个项目发展一个社区吗?你关心商业采用吗?你对这些问题的回答以帮助你确定接下来你需要采纳的建议有多...阅读全文

博文 2017-11-08 09:58:28 debian.cn

PostgreSQL 13 正式版发布

PostgreSQL 13 已正式发布,新版本对索引和查找系统进行了重大改进,大型数据库因此受益甚多,包括节省了空间并提高了索引的性能,使用聚合或分区的查询的响应时间更快,使用增强的统计信息时更好的查询计划(query planning)等。 除了并行化清理(parallelized vacuuming)和增量排序(incremental sorting)等呼声较高的功能外,PostgreSQL 13 还为大大小小的工作负载提供了更好的数据管理体验,并对日常管理进行了优化,为应用开发者提供了更多便利,并增强了安全性。 性能提升 在先前 PostgreSQL 版本的基础上,PostgreSQL 13 以有效地处理 B 树索引(PostgreSQL 的标准索引)中的重复数据,从而降低 B 树...阅读全文

博文 2020-10-04 20:07:23 debian.cn

兼容 tmux 的文件上传/下载工具 trzsz ( trz / tsz ) 使用指南 支持进度条和目录传输

我们登陆远程服务器后,常常需要下载、或者上传一些文件,我们常用的 lrzsz 对 tmux 支持不够友好,于是就有了 trzsz 这个新工具,它安装简单,使用方便,功能全面,小巧灵活,GitHub项目地址: https://github.com/trzsz/trzsz为什么需要 trzs 这个“轮子”?考虑 laptop -> hostA -> hostB -> docker -> tmux 这种场景,使用 scp 或 sftp 是不方便的。在这种场景下,使用 lrzsz ( rz / sz ) 是很方便的,但是很惜它与 tmux 不兼容。 tmux 不愿意支持 rz / sz ( 906, 1439 ),而重新造一个工具比修改 tmux 简单很多。trzsz 安装指南在远程服务器上安装...阅读全文

树莓派基于 Raspbian 的 Windows XP 现已可用

新的树莓派操作系统 Linux Raspbian XP Professional 现已用,该操作系统专门针对 Raspberry Pi 4 设计。 Raspbian XP Professional 是一个仿 XP 外观的 Linux 系统。尽管用户不能在树莓派上拥有完整的 Windows XP 体验,但是该操作系统所提供的用户体验已相当接近 Windows XP。 Raspbian XP Professional 附带许多功能,使人联想到旧的 XP OS。它具有有效的“开始”菜单,顶部带有用的搜索栏。所有的菜单、图标和任务栏都具有经典的气泡 XP。其甚至包括完整的 LibreOffice 套件来代替 Microsoft Office,以满足办公要求。 不过,尽管该操作系统看起来像...阅读全文

博文 2020-04-28 09:45:50 debian.cn

Java Annotations详解

Java注释被用来为java代码提供元数据(meta data)。作为元数据,注释不会直接影响代码的执行结果,不过事实上有些注释就是为了影响代码的执行结果而定义的。 Java注释是从Java 5开始添加的。本文对于Java注释的讨论是基于java 6的,据我所知,到目前为止Java 7中关于注释的部分并没有发生改变,所以本文对java 7编程人员上来说应该也是用的。 目录: · Java 注释的作用 · 注释的基础知识 · 注释的位置 · Java中预置的注释 · 创建你自己的注释 Java 注释的作用 预编译指令(Compiler instructions) 编译时指令(Build-time instructions) 运行时指令(Runtime instructions) Java有...阅读全文

博文 2013-03-02 08:04:55 CSDN博客

Proxy-Go v6.6 发布啦

Proxy-Go v6.6 发布啦。Proxy 是 golang 实现的高性能 http,https,websocket,tcp,udp,socks5 代理服务器, 支持正向代理、反向代理、透明代理、内网穿透、TCP/UDP 端口映射、SSH 中转、TLS 加密传输、协议转换、DNS 防污染代理。 优化了 limitconn 的关闭逻辑, 释放更多资源. http(s)\socks 代理增加了–intelligent, 智能模式设置, 以是 intelligent|direct|parent 三者之一, 默认是:intelligent. 每个值的含义如下. --intelligent=direct, 不在 blocked 里面的目标都直连. --intelligent=parent, 不...阅读全文

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

使用 setfacl 管理文件的访问控制列表ACL

如果你是在一个大型组织,你运行了 NFS 或者 Samba 服务给不同的用户,你将会需要灵活的挑选并设置很多复杂的配置和权限去满足你的组织不同的需求。Linux(以及其他Unix等POSIX兼容的操作系统)有一个被称为访问控制列表(ACL)的权限控制方法,它是一种权限分配之外的普遍范式。例如,默认情况下你需要维护3个权限组:owner、group和other。 使用ACL后,你以设置权限给其他用户或组,而不单只是简单的"other"。以允许指定的用户A、B、C拥有写权限而不再是让他们整个组拥有写权限。 ACL支持多种Linux文件系统,包括ext2, ext3, ext4, XFS, Btrfs等。如果你不确定你的文件系统是否支持ACL,请参考文档。 首先我们需要安装工具来管理ACL...阅读全文

Linux基金会推出ACT项目 帮助开发者遵守开源许可证

Linux Foundation 正致力于通过组建新项目来改善开源的合规性,他们近日推出了一个 Automated Compliance Tooling(ACT)项目,旨在整合对推进开源合规性工具的投入,提高互操作性和用性,从而帮助组织管理合规性义务。 根据 Linux 基金会的说法,虽然开源代码的使用变得越来越流行,但使用开源代码有责任遵守该代码许的条款,这会给用户和组织的管理带来挑战。 Linux 基金会战略高级主管 Kate Stewart 表示:“推进开源合规性的工具或项目有很多,但大多没有资金,构建强大用性或高级功能的范围有限。我们从许多组织那里听说,目前存在的工具无法满足当前的需求。在 Linux 基金会下成立一个中立机构来处理这些问题,将使我们能够增加对合规工具开发社区...阅读全文

博文 2018-12-09 13:32:56 debian.cn

Rust 1.39.0 发布,async/.await 稳定了

Rust 1.39.0 已经发布。此版本的亮点包括 async/.await,对 match 守卫 by-move 绑定的共享引用,以及函数参数的属性。 async/.await 稳定 此版本 async/.await 特性已经稳定,这意味着现在以定义 async 函数和块,并进行 .await 操作。 async 函数通过 async fn 引入,被调用时会返回一个 Future,该 Future 是一个会挂起的计算,以使用 .await 运行并完成计算。而除了 async fn,async{…} 和 async move{…} 块也以用来定义“异步文字”,它们的行为像闭包。 match 守卫引用 by-move 绑定 在 Rust 中进行模式匹配时,一个变量,也就是“绑定”,以...阅读全文

博文 2019-11-11 09:44:43 debian.cn

Google 开源 Docker 镜像差异分析工具 container

Google 发布了一个名为 container-diff 的开源项目,这是一个分析和比较容器镜像的工具,用来分析 Docker 镜像之间的差异。 container-diff 通过几个不同的标准来检查镜像,包括: Docker 镜像历史 镜像文件系统 Apt 包管理器 pip 包管理器 npm 包管理器 上述分析以在单个镜像上执行,也以在两个镜像上执行以进行比较。 该工具以帮助用户更好地了解他们的镜像内部发生了什么变化,并让他们更好地了解镜像包含什么内容。 单个分析: container-diff analyze [Run default analyzers] container-diff analyze --type=history [History...阅读全文

登陆 jumpserver 跳板机每天只输入一次2FA token的方法

自从跳板机升级后,无所不在的二次验证 token 让小x很是恼火。使用 ssh clone session ,就以避免每次登陆,都需要输入一次 2FA 验证 Code。 ** Linux 或 Mac OS 系统 ** 在 Linux 或者 Mac OS 下很简单,只需要修改或者创建 ~/.ssh/config 文件,写入以下内容即, ``` #file:~/.ssh/config Host * ControlMaster auto ControlPath ~/.ssh/master-%r@%h:%p ``` 这样第一次登陆跳板机时正常输入token,只要这个 session 没有退出,再次登陆就以复用这个 SSH Session, 不需要再输入...阅读全文

事务性包管理器 GNU Guix 1.0.0 正式发布

2012 年宣布的 GNU Guix 包管理器项目正式释出了 1.0.0 版本。在过去七年中,260 名开发者递交了超过 4 万个 commits,此外还有文档、翻译、设计等方面的大量工作。 GNU Guix 是事务性包管理器,以安装在 GNU/Linux 发行版上,也以作为 i686、x86_64、ARMv7 和 AArch64 机器的独立操作系统发行版。 用户使用 Guix 安装应用程序并保持程序在最新状态,软件开发者以产生一次性的软件环境,系统管理员以更容易的部署复杂服务。 感兴趣的用户以使用虚拟机镜像体验 Guix。...阅读全文

博文 2019-05-05 12:58:39 debian.cn

如何在一个U盘上安装多个Linux发行版

本教程介绍如何在一个 U 盘上安装多个 Linux 发行版。这样,你以在单个 U 盘上享受多个现场版live Linux 发行版了。 我喜欢通过 U 盘尝试不同的 Linux 发行版。它让我以在真实的硬件上测试操作系统,而不是虚拟化的环境中。此外,我以将 USB 插入任何系统(比如 Windows 系统),做任何我想要的事情,以及享受相同的 Linux 体验。而且,如果我的系统出现问题,我以使用 U 盘恢复! 创建单个启动的现场版 Linux USB 很简单,你只需下载一个 ISO 文件并将其刻录到 U 盘。但是,如果你想尝试多个 Linux 发行版呢?你以使用多个 U 盘,也以覆盖同一个 U 盘以尝试其他 Linux 发行版。但这两种方法都不是很方便。 那么,有没有在单个...阅读全文

博文 2017-10-18 13:42:20 debian.cn

GitLab 12.5 稳定版发布:支持EKS集群、多云托管和环境面板等

GitLab 于上周发布了 12.5 新版本,官方在发布说明中介绍到,为了尽能高效地交付高质量的软件,企业会经常需要跨多云以支持广泛的基础架构,因此新版带来了 EKS 集群和环境面板等功能以支持跨各种配置的项目配置,更方便监控和管理。 轻松创建并部署 EKS 集群 在新版本中 GitLab 添加了 EKS 集成,因此我们以在 GitLab 集群页面中选择 EKS 作为选项,然后系统会提示进行身份验证以使用 AWS 账户。一旦通过身份验证,只需为集群指定所需的参数,GitLab 将负责完成其余的工作。因此在新版本中,我们只需单击几下就以在 Amazon 的 EKS 上创建 Kubernetes 集群。 使用 Crossplane 配置多云托管服务 在 GitLab 12.5 中,我们...阅读全文