首页 文章 精选 留言 我的

精选列表

搜索[镜像无法拉取],共10000篇文章
优秀的个人博客,低调大师

办事不力、沟通果,cURL 作者公开指责微软

这家名为微软的公司运营着这个名为 NuGet 的软件包管理器,他们托管了一个 cURL 软件包……,…… 这个软件包一直在欺骗用户下载它,它已经过时、陈旧、满是漏洞,应该被移除,但我无法反馈此事或让他们对此采取什么行动。 这是 cURL 作者 Daniel Stenberg 近日发布的推文节选,直指微软不作为。 抱歉讲太快,现在让我们倒带 <<<<<<<<< 重新梳理一下故事的来龙去脉。 cURL 项目的作者 Daniel Stenberg 对项目的维护非常积极,经常使用 cURL 的用户应该也清楚它的大致更新周期。cURL 差不多每两个月就会发布一个版本更新,目前 cURL 的最新版本为今年二月中旬发布的 7.88。 但你可以想象到目前 NuGet 包管理器当中的 cURL 版本到底有多旧吗?5、4、3、2、1,答案是 cURL 7.30,最后一次更新时间还停留在 2013 年 6 月。 版本太老旧也不是 Daniel Stenberg 发布推文抨击微软的主要原因,最主要的原因在于 Daniel Stenberg 向 NuGet 反馈后,NuGet 一直没有帮助他解决这个问题。 Daniel Stenberg 表示,当他向 NuGet 报告了这个问题后,NuGet 以为 Daniel Stenberg 是在寻求支持,所以表示他们不对个别软件包提供支持,让 Daniel Stenberg 使用详细信息页面上的 “联系” 链接直接联系软件包的所有者(上传这个包的用户,NuGet 上的软件包是由志愿者构建和提供的,Daniel Stenberg 无法亲自提供更新或 “接管” 此软件包)。 NuGet 上的 cURL 的所有者叫 coapp,Daniel Stenberg 在尝试联系后,并没有得到任何回应。因此 Daniel Stenberg 就想着能不能以存在漏洞为由报告这个问题(由于版本太老,很多漏洞都是公开可查询到的),让他们从 NuGet 上删除这个包呢。但 NuGet 表示他们只接受微软产品的这种报告,对于其他非微软的软件包都需要联系软件包的所有者。 NuGet 不帮忙处理,所有者也联系不上,那么这件事情就陷入了死胡同,无奈之下 Daniel Stenberg 就发布了多条推文,公开了此事。 网友的力量还是强大的,在网友的帮助下经过几次 @,微软的开发者,也是领导 nuget.org 工程团队的负责人 Joel Verhagen 看到并回复了 Daniel Stenberg。 原来在 Daniel Stenberg 上报这个问题后,NuGet 团队就注意到了这个特殊情况,并与这个软件包的所有者取得了联系,目前这个所有者已经参与进来了。只不过 NuGet 在这个过程中都没有通知 Daniel Stenberg,并承认这是他们的失误,后续他们将通过电子邮件进行联系。 目前 NuGet 已经暂时撤下了 cURL,用户无法再搜索到 cURL,即便你知道项目详细的链接,现在访问 cURL 的页面也会展示明显的警告,让用户暂时不要使用 cURL。 暂时还不清楚他们是否会更新 cURL,也不清楚会在何时重新上架 NuGet。不过 cURL 并非个例,NuGet 中还有许多其他软件包也面临着类似的情况,NuGet 也需要改变现有的机制,总不能让每个软件包的真正作者都来 Twitter 上抱怨吧。

优秀的个人博客,低调大师

Serverless 1.60.4 发布,服务器架构开发框架

Serverless 架构开发框架 Serverless Framework 发布了 1.60.2、1.60.3 和 1.60.4 版本,该框架使用 AWS Lambda、Azure Functions、Google CloudFunctions 等技术,可以构建 Serverless 架构的 Web、移动和 IoT 应用。 1.60.4更新内容: Bug Fixes AWS APIGW:修复对 ProvisionedConcurrency 的处理:0 设置 (efe6d02), closes#7133 1.60.3更新内容: Bug Fixes AWS APIGW:修复不涉及 API GW 时的 Rest API ID 检测 (81096ca)c 1.60.2 更新内容: Bug Fixes AWS Lambda 修复预配置的并发设置(closes#7059): 修复预配置的并发配置。在别名而不是版本上配置。因此,它可以与启用版本控制一起使用,并且对已配置的并发配置所做的更改无法避免内部故障(04a7657) 解决与别名重新部署有关的 AWS 问题 (56b9d3d) 确保 API 网关端点指向预配版本 (67d27ed), 修复 CloudWatch 日志创建访问 (a2db989), closes#6241#6692 AWS API Gateway: 如果没有配置端点,请确保应用 API GW 阶段设置 (e93e6f4), closes#7036 修复自定义资源 lambda 工件生成 (7132af3) 更新说明:https://github.com/serverless/serverless/releases

优秀的个人博客,低调大师

Serverless 1.56.0 发布,服务器架构开发框架

Serverless 架构开发框架 Serverless Framework 1.56.0 发布了,该框架使用 AWS Lambda、Azure Functions、Google CloudFunctions 等技术,可以构建 Serverless 架构的 Web、移动和 IoT 应用。 新版更新说明如下: AWS - 仅适用于 HTTPS 的部署存储桶策略 有关重命名输出和扩展支持的文档 修正错字 添加了模拟集成文档示例 修复 Lambda@Edge 实施中的区域错误处理 允许指定 ApiGateway 日志角色 ARN 添加未使用的内存警报 通过域名和路径查找来源 修复 kubeless 文档中的小错字 添加腾讯提供商创建模板 更新说明及下载地址 1.56.1 版本修复了一处错误: 使用自定义存储桶修复部署存储桶策略处理 更新说明及下载地址

优秀的个人博客,低调大师

Serverless 1.55.0 发布,服务器架构开发框架

Serverless 架构开发框架 Serverless Framework 1.55.0 发布了,该框架使用 AWS Lambda、Azure Functions、Google CloudFunctions 等技术,可以构建 Serverless 架构的 Web、移动和 IoT 应用。 新版更新说明如下: 允许覆盖中的空数组 使问号可作为变量回退 改进插件解析度和初始化流程 Azure Python 模板 Chore - 停止使用已被弃用的 'new Buffer()' 方法 AWS - 为 S3 编译的模板文件名添加命名功能 Span docs! 以及完整的 serverless_sdk 文档 修复 perms 修复 Azure 文档断开的链接 向 Azure Node.js 模板添加注释 更新了 Azure Functions 文档 支持 IAM 角色声明中的 NotAction 和 NotResource 向 SDK 文档添加了 frontmatter 通过 CLI 命令和交互式 CLI 步骤完成设置 升级 gradle 版本 更新 Google provider 文档 SNS 集成测试 SQS 集成测试 流集成测试 对 SQS 文档进行了改进 Schedule集成测试 更新事件文档 升级 groovy/gradle/插件版本和依赖项(aws-groovy-gradle) 升级 Gradle/插件版本和依赖项(aws-clojure-gradle) IoT集成测试 更新 https-proxy-agent 依赖性 允许在流 arn 属性中使用 Ref 为 resolveFilePathsFromPatterns() 添加测试 集成测试改进和修复 自定义资源中的 Honor cfnRole 更新说明及下载地址 1.55.1版本更新如下: 允许插件自定义交互式 cli 中支持的标志 更新说明及下载地址

优秀的个人博客,低调大师

分布式架构全方位立体死角解析

随着移动互联网的发展智能终端的普及,计算机系统早就从单机独立工作过渡到多机器协作工作。计算机以集群的方式存在,按照分布式理论的指导构建出庞大复杂的应用服务,也已经深入人心。本文力求从分布式基础理论,架构设计模式,工程应用,部署运维,业界方案这几大方面,介绍基于MSA(微服务架构)的分布式的知识体系大纲。从而对SOA到MSA进化有个立体的认识,从概念上和工具应用上更近一步了解微服务分布式的本质,身临其境的感受如何搭建全套微服务架构的过程。 SOA面向服务架构 由于业务发展到一定层度后,需要对服务进行解耦,需要把一个主系统按照逻辑拆分成不同的的子系统,通过服务接口来通讯,面向服务的设计模式,最终需要总线集成服务,这样的好处是降低代码间的耦合度,有利于拓展,有利于维护。但是相对来说结构复杂,对小型项目的成本要求也比较高,所以出现了更加独立的架构模式。 MSA微服务架构 微服务是真正意义上的独立服务,从服务入口到数据持久层,逻辑上都是独立隔离的,无需服务总线来接入,但同时增加了整个分布式系统的搭建和管理难度,需要对服务进行编排和管理,所以伴随着微服务的兴起,微服务生态的整套技术栈也需要无缝接入,才能支撑起微服务的治理理念。 节点 传统的节点也就是一台单体的物理机,所有的服务容纳进去包括服务和数据库,一台服务器搭建一套系统;随着虚拟化的发展,单台物理机往往可以分成多台虚拟机,实现资源利用的最大化,节点的概念也变成单台虚拟机上面服务;近几年容器技术逐渐成熟后,服务已经彻底容器化,也就是节点只是轻量级的容器服务。总体来说,节点就是能提供单位服务的逻辑计算资源的集合。 网络 分布式架构的根基就是网络,不管是局域网还是公网,没有网络就无法把计算机联合在一起工作,但是网络也带来了一系列的问题。网络消息的传播有先后,消息丢失和延迟是经常发生的事情,我们定义了三种网络工作模式:同步网络/半同步网络以及异步网络 时间 慢速物理时空中,对于串行的事务来说,往往需要按照时间线来排队,相互之间不能并行发生。分布式世界里面,我们要协调不同节点之间的先来后到关系,但是不同节点本身承认的时间又各执己见,于是我们创造了网络时间协议(NTP)试图来解决不同节点之间的标准时间,但是NTP本身表现并不如人意,所以我们又构造除了逻辑时钟,最后改进为向量时钟:NTP的一些缺点,无法完全满足分布式下并发任务的协调问题节点间时间不同步硬件时钟漂移线程可能休眠操作系统休眠硬件休眠 顺序 有了衡量时间的工具,解决顺序问题自然就是水到渠成了。因为整个分布式的理论基础就是如何协商不同节点的一致性问题,而顺序则是一致性理论的基本概念,所以前文我们才需要花时间介绍衡量时间的刻度和工具。 强一致性ACID 单机环境下我们对传统关系型数据库有苛刻的要求,由于存在网络的延迟和消息丢失,ACID便是保证事务的原则,这四大原则甚至我们都不需要解释出来就耳熟能详了:Atomicity:原子性,一个事务中的所有操作,要么全部完成,要么全部不完成,不会结束在中间某个环节。Consistency:一致性,在事务开始之前和事务结束以后,数据库的完整性没有被破坏。Isolation:隔离性,数据库允许多个并发事务同时对其数据进行读写和修改的能力,隔离性可以防止多个事务并发执行时由于交叉执行而导致数据的不一致。Durabilit:事务处理结束后,对数据的修改就是永久的,即便系统故障也不会丢失。 分布式一致性CAP 分布式环境下,我们无法保证网络的正常连接和信息的传送,于是发展出了CAP/FLP/DLS这三个重要的理论:CAP:分布式计算系统不可能同时确保一致性(Consistency)、可用性(Availablity)和分区容忍性(Partition)。FLP:在异步环境中,如果节点间的网络延迟没有上限,只要有一个恶意的节点存在,就没有算法能在有限的时间内达成共识。DLS:(1)在一个部分同步网络的模型(也就是说:网络延时有界限但是我们并不知道在哪里)下运行的协议可以容忍1/3任意(换句话说,拜占庭)错误;(2)在一个异步模型中的确定性的协议(没有网络延时上限)不能容错(不过这个论文没有提起随机化算法可以容忍1/3的错误);(3)同步模型中的协议(网络延时可以保证小于已知d时间)可以,令人吃惊的,达到100%容错,虽然对1/2的节点出错可以发生的情况有所限制 弱一致性BASE 多数情况下,其实我们也并非一定要求强一致性,部分业务可以容忍一定程度的延迟一致,所以为了兼顾效率,发展出来了最终一致性理论BASE,BASE是指基本可用(Basically Available)、软状态( Soft State)、最终一致性( Eventual Consistency)基本可用(Basically Available):基本可用是指分布式系统在出现故障的时候,允许损失部分可用性,即保证核心可用。软状态(Soft State):软状态是指允许系统存在中间状态,而该中间状态不会影响系统整体可用性。分布式存储中一般一份数据至少会有三个副本,允许不同节点间副本同步的延时就是软状态的体现。最终一致性(Eventual Consistency):最终一致性是指系统中的所有数据副本经过一定时间后,最终能够达到一致的状态。弱一致性和强一致性相反,最终一致性是弱一致性的一种特殊情况。 一致性算法 分布式架构的核心就在一致性的实现和妥协,那么如何设计一套算法来保证不同节点之间的通信和数据达到无限趋向一致性,就非常重要了。保证不同节点在充满不确定性网络环境下能达成相同副本的一致性是非常困难的,业界对该课题也做了大量的研究。首先我们要了解一致性的大前提原则(CALM):CALM原则的全称是 Consistency and Logical Monotonicity ,主要描述的是分布式系统中单调逻辑与一致性的关系,它的内容如下,参考consistency as logical monotonicity在分布式系统中,单调的逻辑都能保证 “最终一致性”,这个过程中不需要依赖中心节点的调度任意分布式系统,如果所有的非单调逻辑都有中心节点调度,那么这个分布式系统就可以实现最终“一致性”然后再关注分布式系统的数据结构CRDT(Conflict-Free Replicated Data Types):我们了解到分布式一些规律原则之后,就要着手考虑如何来实现解决方案,一致性算法的前提是数据结构,或者说一切算法的根基都是数据结构,设计良好的数据结构加上精妙的算法可以高效的解决现实的问题。经过前人不断的探索,我们得知分布式系统被广泛采用的数据结构CRDT。基于状态(state-based):即将各个节点之间的CRDT数据直接进行合并,所有节点都能最终合并到同一个状态,数据合并的顺序不会影响到最终的结果。基于操作(operation-based):将每一次对数据的操作通知给其他节点。只要节点知道了对数据的所有操作(收到操作的顺序可以是任意的),就能合并到同一个状态。

优秀的个人博客,低调大师

Serverless 1.54.0 发布,服务器架构开发框架

Serverless 架构开发框架 Serverless Framework 1.54.0 发布了,该框架使用 AWS Lambda、Azure Functions、Google CloudFunctions 等技术,可以构建 Serverless 架构的 Web、移动和 IoT 应用。 新版更新说明如下: 修正变量名称中的错别字 简化 GitHub Issue/PR Template 捕获并扩展文档 自动保持 sfe-next 分支的最新状态 更新 AWS-scala-sbt 模板中的依赖项 PR Template->在展开部分隐藏有用的脚本 文件重构和新功能 doc:添加 cosmosdb 事件 doc 展示如何在 sls 助手中使用 AWS 开发工具包 Issue 4867 - 允许 InvokeBridge 从超级类中查找 handleRequest 方法 更新 Azure 环境变量文档 更新 quick-start.md 添加 Questions issue template,可将用户导航到论坛 更新 SLS 部署文档 S3 Block Public Access CI/CD 文档 添加了无服务器 openwhisk-nodejs 模板的日志记录实现 更新说明及下载地址

优秀的个人博客,低调大师

Serverless 1.52.0 发布,服务器架构开发框架

Serverless 架构开发框架 Serverless Framework 1.52.0 发布了,该框架使用 AWS Lambda、Azure Functions、Google CloudFunctions 等技术,可以构建 Serverless 架构的 Web、移动和 IoT 应用。 新版更新说明如下: 添加初始化生命周期事件 修复 API 网关名称未解析 API 网关资源不在主堆栈中的问题 支持为自定义资源 lambdas 编写可选的 CloudWatch 日志 确保查询者的 chalk 覆盖通过符号链接起作用 在 apigateway resourceArn 中修复 aws 分区名称以支持 GovCloud 不要重试 AWS 403 错误 修复打包功能后覆盖封装设置 null 从 Bitbucket 服务器下载模板 更新 Readme 以使用 nordcloud.com 替换 SC5.io 添加插件挂钩以定义配置变量 getter 允许 GetAtt 解析尾部 解析空配置文件的空配置对象 从升级说明中删除企业 添加对 Lambda@Edge 的支持 测试交互式 CLI CloudFront 中没有事件的支持功能会删除日志记录 添加对 Condition 和 DependsOn 的支持 改进插件加载错误报告 使用挂钩记录 Lambda@Edge 删除提醒 在 Windows 上快速修复“太多打开的文件”问题 Bump sfe 插件 在文档和模板中替换租户与组织的使用 更新 insights.md 更新说明及下载地址

资源下载

更多资源
Nacos

Nacos

Nacos /nɑ:kəʊs/ 是 Dynamic Naming and Configuration Service 的首字母简称,一个易于构建 AI Agent 应用的动态服务发现、配置管理和AI智能体管理平台。Nacos 致力于帮助您发现、配置和管理微服务及AI智能体应用。Nacos 提供了一组简单易用的特性集,帮助您快速实现动态服务发现、服务配置、服务元数据、流量管理。Nacos 帮助您更敏捷和容易地构建、交付和管理微服务平台。

Spring

Spring

Spring框架(Spring Framework)是由Rod Johnson于2002年提出的开源Java企业级应用框架,旨在通过使用JavaBean替代传统EJB实现方式降低企业级编程开发的复杂性。该框架基于简单性、可测试性和松耦合性设计理念,提供核心容器、应用上下文、数据访问集成等模块,支持整合Hibernate、Struts等第三方框架,其适用范围不仅限于服务器端开发,绝大多数Java应用均可从中受益。

Rocky Linux

Rocky Linux

Rocky Linux(中文名:洛基)是由Gregory Kurtzer于2020年12月发起的企业级Linux发行版,作为CentOS稳定版停止维护后与RHEL(Red Hat Enterprise Linux)完全兼容的开源替代方案,由社区拥有并管理,支持x86_64、aarch64等架构。其通过重新编译RHEL源代码提供长期稳定性,采用模块化包装和SELinux安全架构,默认包含GNOME桌面环境及XFS文件系统,支持十年生命周期更新。

Sublime Text

Sublime Text

Sublime Text具有漂亮的用户界面和强大的功能,例如代码缩略图,Python的插件,代码段等。还可自定义键绑定,菜单和工具栏。Sublime Text 的主要功能包括:拼写检查,书签,完整的 Python API , Goto 功能,即时项目切换,多选择,多窗口等等。Sublime Text 是一个跨平台的编辑器,同时支持Windows、Linux、Mac OS X等操作系统。

用户登录
用户注册