首页 文章 精选 留言 我的

精选列表

搜索[脑洞落地],共10000篇文章
优秀的个人博客,低调大师

免费报名:EdgeX技术运用与行业落地大师课

为帮助参赛选手更好地了解并运用相关技术,2022EdgeX中国挑战赛将在7月至9月持续开展3轮技术培训,涵盖初、中、高不同层级,帮助开发者系统学习智能边缘系统知识。培训 由来自阿里云、EMQ、CCFA、京东、英特尔、VMware 的技术与行业专家进行分享。 第二阶段 中级培训 2022年8月22-26日(预约报名中) 第三阶段 高级培训 时间 2022年9月(敬请期待) 日程安排 ​ 点击立刻报名: http://innospaceplus.mikecrm.com/3WR6qTp 或扫描下方二维码 EdgeX中文社区将在接下来的日子里为大家带来更多 边缘计算技术讲座 和 赛事进度更新 。在这个盛夏,让我们一起展现风采,从自身所学的领域出发,为物联网、边缘计算市场提供更多更好的解决方案,展望一个更好的科技未来。 2022EdgeX中国挑战赛正在火热报名中,报名时间: 2022年8月3日00:00 - 9月5日24:00 。参与大赛,共同推动万物互联,请即刻联系我们。 大赛官网: https://www.edgex-challenge.com/

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

速度和质量不可兼得,为什么DevOps落地如此困难?

据Veritis发布的《2019 年 DevOps 状况报告》显示,正确实施 DevOps 的组织有着明显的竞争优势:软件部署频率提高 208 倍,事件恢复速度提高 2604 倍,变更失败率降低 7 倍。这项结果让更多企业看到了DevOps的高效之处,同时也使得 DevOps 在近年来慢慢有成为主流的趋势。 近期,Techstrong Research 和 Testlio 对1000 多名工程师和 DevOps 专业人士进行了调查,以了解他们对人才短缺、自动化和左移的看法。调查结果发现,大部分企业都面临人才短缺的问题,同时,很多团队为了提高软件交付速度,而不得不牺牲软件质量。 以下是调查结果中的几组数据: 80% 的企业缺少 QE 人才 在软件开发过程中,质量工程师(Quality Engineer,QE)是一个关键的岗位,其主要工作是把一些手动、可重复的任务自动化,使流程更高效且不易出错。Techstrong Research 的数据显示,仅有 12% 的团队拥有合适的 QE 人才,超过 80% 找不到 QE 来支持测试和自动化,其中有大量团队没有足够的人才招聘预算。 事实上,不仅仅是 QE面临人才短缺,而是所有 DevOps 技能职位都面临人才短缺。Gartner 曾预测,由于人才的短缺,到 2022 年75% 的 DevOps 计划将无法达到预期。 81% 的企业无法实现全自动化测试 测试自动化是测试团队的关键能力之一,调查发现,已经有过半的团队利用自动化来进行测试,但其中仅有 19% 的团队能够实现全自动化测试,12% 的企业仍然采用手动测试,还有26% 的受访者表示希望能够在测试中利用自动化。 在各种类型的测试中,自动化的最佳用途是回归测试。自动化回归测试可以节省测试人员的时间,让他们可以有更多时间专注于新功能的探索性测试。如果实施得当,自动检查可以在最少或没有监督以及人工干预最少的情况下自动运行。 不过,当拥有了自动化测试工具时,也要警惕一种观念:自动化所有的测试,是为了摆脱所有“手动测试人员”。 54% 的企业无法满足用户需求 还有一个值得关注的调查是,用户对新软件的特性、功能和更新的持续需求,增加了企业快速交付的压力。54% 的受访者表示,无法满足用户对开发新软件和更新软件的需求。 而那些声称“能做到”的公司,通常会牺牲质量以换取速度。比如,为了节省时间,在发布前进行不完整或表面测试,这样开发出来的软件,虽然可以跟着发布计划走,但并不能达到消费者对软件质量的预期。随着时间推移,这些质量问题最终会暴露出来,从而造成用户不信任甚至用户流失。 为了平衡速度和质量,Testlio 合作伙伴生态系统副总裁 Emeka Obianwu 建议避免零和游戏。快速迭代和开发高质量的软件不需要相互阻碍。在高度优化的软件开发周期中,开发速度和软件质量应该共同发展。 79% 的企业在CI/CD 管道集成测试 由于项目团队在交付无缺陷产品方面承受着巨大压力,许多人正在采用左移方法、持续测试策略和严格封闭的反馈循环,以便将测试集成到 CI/CD 管道的每个部分。Techstrong Research 调查显示,将测试集成到 CI/CD 管道的企业达到了79% ,不过他们大部分都处于浅层次实践之中。 应用程序测试在平衡速度和质量方面扮演着至关重要的角色,为了跟上对速度的需求和持续的技能短缺,将自动化和测试集成到 DevOps 流程中至关重要。 58% 的企业认为“左移”意味着实现持续测试 “左移”这一口号在 DevOps 市场上已经讨论了好几年,并且正在扩展到业务的其他部分。但是,当涉及到测试时,“左移”意味着什么呢?Techstrong Research 发现,58% 的企业认为“左移”意味着实现持续测试。这表明,整个行业发生了巨大的变化,在过去几年中,“左移”就是将测试负担转移到开发人员身上的代名词。 在软件开发生命周期 (SDLC) 中,检测和修复软件缺陷的成本随时间呈指数增长。越在开发过程的早期测试修复问题,左移测试对成本的降低越显著。它通过使代码与早期测试用例保持一致来减少初始开发阶段的错误,缺陷在刚发现时就被修复,而不是在最终的测试周期之后进行修复,以此节省维修成本和宝贵的开发时间。 一个典型的测试周期是 DevOps 团队交付代码,测试人员运行测试然后发回问题,然后循环重复,而左移则可以消除开发和测试之间的冗长来回。接受左移并避开标准的两周黑盒测试周期,使测试成为 CI/CD 管道中的支柱,团队能够满足覆盖率、质量和速度要求。 Techstrong Research调查结果所暴露出的人才短缺、测试自动化程度不高、牺牲质量换速度等问题,并不是突然出现的,而是一直以来就存在的。 有许多关注DevOps的企业一直在寻求解决之法,通过利用工具来完善流程成为业界共识。因此有许多DevOps工具应运而生,如提供 bug 跟踪和敏捷项目管理功能的问题跟踪器JIRA、自动化构建Java项目的Maven等,但市面上的大部分工具能解决的都只是一部分问题,不能从根本上扫除企业在DevOps进程中的障碍。 如何从根本上扫除DevOps实践过程中的障碍,成了大家急需解决的痛点,也正是看到这一点,飞算云智总裁陈定玮在六年前就开始了飞算 SoFlu 软件机器人的研发。他说,DevOps 的实施对人才的依赖性强,且对人员的基本素质要求非常高,这也是很多 IT 公司在实践 DevOps 时不得不以失败告终的原因。 以上文提到的测试问题为例,飞算 SoFlu 软件机器人的全自动测试平台能够优化DevOps在企业中的实施,它能够以自动化的方式,实现测试生命周期管理、测试用例自动生成、测试数据管理、精准回归测试等一系列功能,不仅降低了测试门槛,让初学者轻松上手,还可以减少测试对资源的占用,提高执行效率。 此外,飞算SoFlu软件机器人还采用了通用的技术功能模块,支持循环、条件判断、函数调用等组件,用户只要根据业务逻辑,通过拖拽方式进行参数配置,就能完成编程。而且,平台统一了代码规范,不依赖人工编码、审码,因此可以从源头上保证代码高质量。总而言之, 飞算SoFlu 软件机器人通过可视化编程的方式满足低门槛开发需求,输入流程图即可实现自动开发。 飞算 SoFlu软件机器人能解决的不只是开发问题。事实上,在软件项目开发过程中,风险几乎无处不在。项目进度是否正常、软件质量是否严格把控、技术是否成熟、系统架构是否符合性能指标等问题,都会威胁到软件的最终交付结果。有效地识别、控制和管理风险,对项目的成功起着至关重要的作用。 而通过飞算 SoFlu软件机器人,一人就能完成开发、测试一整套流程,不仅提高了开发和测试效率,保证了代码质量,还使软件工程全流程摆脱对人力的依赖,解决了人才不足的问题。用飞算SoFlu软件机器人进行开发,可以真正实现“一人一项目,十人抵百人”。

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

微服务技术栈:API网关中心,落地实现方案

本文源码:GitHub·点这里 || GitEE·点这里 一、服务网关简介 1、外观模式 客户端与各个业务子系统的通信必须通过一个统一的外观对象进行,外观模式提供一个高层次的接口,使得子系统更易于使用: 简单说一下外观模式,网关和这个模式很像,但是比外观模式复杂,模式,结构,原则这些都是通用的,在各种架构或组件中使用。 2、网关简介 微服务网关从感觉上,很像是:拦截器+路由+过滤器,拦截请求,系列基础处理,路由转发到指定服务。 服务网关在整个架构体系上也是一个服务器,作为请求的唯一入口,与外观模式十分类似,在网关层处理所有的非业务功能,为客户端提供定制的API,在网关层通常会执行如下操作:如权限校验、监控、负载均衡、缓存、日志、限流、等等。 二、网关模式 1、模式对比 这里对比常用的请求服务管理模式,和网关模式,如图: 常规模式 在没有网关的情况下,微服务架构会在业务层服务上提供一个API服务,用来接收参数,例如Client-API,通常会根据系统模块划分多个API,例如,运营系统,用户系统等。 请求统一进入Client-API服务 ; Client-API经过鉴权,限流,路由等操作; 如果请求通过,会转发到相应业务服务上; 如果请求被拦截,会直接返回给客户端; Client-API集成所有业务服务的开放接口; 该模式下的缺点非常明显,每个Client-API都需要实现一套非业务服务,代码冗余,当系统膨胀之后,维护成本极高,适用于轻量级系统架构。 网关模式 在业务服务层上,添加一层网关控制,在服务网关中可以完成一系列的横切非业务功能: 客户端请求在网关层做统一拦截; 网关上执行:路由/鉴权/限流/降级等操作; 网关判断是转发请求还是直接响应客户端; 网关服务层要执行很多非业务流程,作为系统的服务端唯一入口,承受所有服务的路由转发,安全,限流,缓存,日志,监控,熔断降级等功能,网关服务不仅要做到高可用,还要避免出现性能瓶颈。 2、多重网关 在大型复杂的系统中,通常会对网关做分层管理,把一类业务规划到一个网关下,避免网关过于臃肿,方便维护和管理: 总网关:通用常用来做路由转发功能; 模块网关:分类的业务服务聚合网关,对这类服务的做非业务性操作,最后请求转发到具体服务上,在数据类平台上,通常对数据通道(流入流出)做一层独立的服务网关;对数据分析类服务做一层独立网关;基本是根据服务的使用情况来划分,这样避免单层服务网关过于复杂的情况。 三、核心功能 1、配置层面 服务发现 网关应该有服务发现功能,通过统一注册中心,获取服务列表,这样才能执行统一代理服务和路由转发功能。 路由请求 植入网关层服务之后,客户端不知道自己请求的是哪个具体的服务,只需要把请求转发给网关,网关放行之后会把请求路由到指定业务服务上。 负载均衡 网关连接的服务实例可能是集群模式存在,所以网关还可以对各个服务实例上执行负载均衡策略,常见的策略就是服务轮询或者按权重路由。 2、定制开发 定制开发例如:权限校验,日志集成,接口限流,等相关功能,需要和数据库交互,可以做成独立服务,在服务中实现具体的处理逻辑,网关层直接调用即可。 四、网关组件 1、Netflix-Zuul Zuul网关主要提供动态路由,监控,弹性,安全管控等功能。在分布式的微服务系统中,系统被拆为了多个微服务模块,通过zuul网关对用户的请求进行路由,转发到具体的后微服务模块中,Netflix开源的一个基于JVM路由和服务端的负载均衡器。 2、Tyk组件 Tyk是一个开源的、轻量级的、快速可伸缩的API网关,支持配额和速度限制,支持认证和数据分析,支持多用户多组织。基于go语言编写,在Java架构系统中使用很少。 3、Kong组件 Kong是一款基于Nginx+Lua编写的高可用,可扩展的开源网关项目,由Mashape公司开放。核心是实现数据库抽象,路由和插件管理,插件可以存在于单独的代码库中,并且可以在几行代码中注入到请求生命周期的任何位置。提供易于使用的RESTfulAPI来操作和配置API管理,并且可以水平扩展多个Kong服务器,通过前置的负载均衡配置把请求均匀地分发到各个Server,来应对高并发的网络请求。 五、源代码地址 GitHub·地址 https://github.com/cicadasmile/husky-spring-cloud GitEE·地址 https://gitee.com/cicadasmile/husky-spring-cloud

资源下载

更多资源
Mario

Mario

马里奥是站在游戏界顶峰的超人气多面角色。马里奥靠吃蘑菇成长,特征是大鼻子、头戴帽子、身穿背带裤,还留着胡子。与他的双胞胎兄弟路易基一起,长年担任任天堂的招牌角色。

腾讯云软件源

腾讯云软件源

为解决软件依赖安装时官方源访问速度慢的问题,腾讯云为一些软件搭建了缓存服务。您可以通过使用腾讯云软件源站来提升依赖包的安装速度。为了方便用户自由搭建服务架构,目前腾讯云软件源站支持公网访问和内网访问。

Nacos

Nacos

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

WebStorm

WebStorm

WebStorm 是jetbrains公司旗下一款JavaScript 开发工具。目前已经被广大中国JS开发者誉为“Web前端开发神器”、“最强大的HTML5编辑器”、“最智能的JavaScript IDE”等。与IntelliJ IDEA同源,继承了IntelliJ IDEA强大的JS部分的功能。

用户登录
用户注册