首页 文章 精选 留言 我的

精选列表

搜索[应用接续],共10000篇文章
优秀的个人博客,低调大师

KiCad 7.0.1 发布,开源 CAD 应用

KiCad 7.0.1 稳定版包含了自上一版本以来的关键错误修复和其他小的改进。适用于 Windows、macOS 和 Linux 的软件包已经推出。 常规问题 在 DoRepaint() 崩溃前确保 GAL 被初始化 防止 GAL 初始化时崩溃 修复字体加载失败时的崩溃 提高使用自定义字体时的打印质量 修复错误的图像尺寸 防止取消位图放置后出现重影 使 Freetype 访问线程安全 修复访问库表时的崩溃 修复删除项目树项时的崩溃 捕捉 PCM 本地资源库的解析异常。 修复中文字符类型支持 修复 Python 脚本的内置颜色方案 修复绘制斜体字时的不正确倾斜 正确地在文本编辑器中打开选定的文件 减少 PCM 中的一些闪动 调整笔画字体基线偏移,以更好地匹配 6.0 修复 CADSTAR 导入器的内存泄漏 通过 PCM 添加新库时重新加载库表 修复 HiDPI 情况下的图层部件颜色匹配。 Windows 更新 Sentry 至 0.60 版本 修复颜色面板色块的截断问题 macOS 修复编辑多个仿真模型的问题 更多详情可查看:https://github.com/KiCad/kicad-source-mirror/releases/tag/7.0.1

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

KiCad 6.0.10 发布,开源 CAD 应用

KiCad 6.0.10 现已发布。这是 6 系列的最新稳定版本,包含了一些关键错误修复和自上一版本以来的其他小改进,建议尽快升级。具体更新内容包括: General 解决嵌入式文本变量问题。 保持键盘在网格上的位置。#13027 清理自动保存文件处理的边缘情况。 Schematic Editor 修复损坏的 legacy schematic 文件保存。 修复 hierarchical sheet bug 中未连接的 bus 错误。#12165 防止文本元素的镜像。#13007 修复搜索包含斜线的文本。#12789 修复点击 unconnected wire 末端后按下“M”键时的崩溃。#12936 修复翻译字段名称的问题。 修复 NC 和标签逻辑。 如果 pin 为空,则不要报告 pin ERC。 Symbol Editor 修复symbol SVG 导出。#13093 PCB Editor routing 后返回原来的active layer。#12313 当项目文件丢失时解析嵌入的文本变量。 修复了使用 CR+LF 作为行尾导入 SVG 文件时的问题。#10096 修复图形捕捉。 使用 snap position 进行 segment routability checks。 修复使用 negative clearance 时 DRC 崩溃的问题。#12981 允许 nested groups。 恢复相对于行为的 broken position。#12912 向自定义规则评估器添加对无单位值的支持。#13016 修复长度调整工具中的错误计算。12881 遵守 DRC 中的“report all errors”复选框。 修复移动 empty selection 时的崩溃。#13114 Footprint Editor 单击 footprint 属性按钮时修复崩溃。#12944 尝试启动 dimension tool 时修复崩溃。#12841 Gerber Viewer 从 zip archive 中加载时,不产生路径错误。 Windows 修复图标缩放问题。#11880 修复由于旧的 ngspice 版本导致的模拟器崩溃。 详情可查看更新说明:https://www.kicad.org/blog/2022/12/KiCad-6.0.10-Release/

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

KiCad 6.0.0 发布,开源 CAD 应用

KiCad 已经发展了 30 年,近日 KiCad 正式推出 6.0.0 版本,这是自 2018 年 7 月发布 5.0.0 版本以来 KiCad 的第一个重要版本发布。 该版本有数以百计的新功能和改进,也有数以百计的错误被修复。下面是新版本的一些亮点: 现代、一致的外观 KiCad 6.0 的用户界面焕然一新,旨在降低新用户的入门门槛,减少在 KiCad 和其他设计软件之间切换时的摩擦。整个 KiCad 的视觉设计语言、快捷键、对话框布局和编辑工作流程已经统一,因此在 Schematic 编辑器和 PCB 编辑器之间切换时不再感觉是在使用两种不同的工具。 升级后的原理图编辑 KiCad 的原理图编辑器在 6.0 版本中进行了有史以来最大的改革。它现在使用与 PCB 编辑器相同的对象选择和操作范式,并获得了几十个新的功能来增强设计能力。 KiCad 6.0 还具有全新的原理图和符号库文件格式,该格式是基于 KiCad 板和 footprint 文件的格式。这种新的格式实现了长期以来所期望的功能,如将原理图中使用的符号直接嵌入原理图文件中,这样就不再需要缓存库了。 改进的 PCB 设计体验 KiCad 的 PCB 编辑器进行了全面的外观升级,具有许多新的选项来帮助你浏览复杂的设计。 通过 KiCad 更新的 3D 查看器,以更多的方式可视化你的电路板,其特点是光线追踪照明控制,突出显示在 PCB 编辑器中选择的对象,以及更容易访问经常使用的控件。 新的自定义设计规则系统允许定义复杂的设计规则,包括特定区域的规则、特定层的规则以及高级设计所需的其他约束。 由于 KiCad 5 和 KiCad 6 之间有成千上万的变化,因此更多详情可查看:https://www.kicad.org/blog/2021/12/KiCad-6.0.0-Release/

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

消息队列的应用场景

比如,微博中肯定是发微博的用户比看微博的人要少很多很多。这个时候,对于系统而言,整体流量就会不太大,而写流量很可能只占到总体的 1% 。这样的话,即使我们系统 QPS 达到了 10000次/s ,那写请求每秒也只有100 次,所以花大的精力去优化写请求是没有必要的,对于业务并没有什么影响。 但是,如果是对于突如其来的超大流量,可能就会出现高并发的写请求的场景,例如最经典的秒杀场景。如果我们的商城在双十二零点要搞一个秒杀活动,限制前 200 个用户,那么在秒杀活动即将开始之前,就会有很多的用户疯狂的去刷新APP或者浏览器,为了就是不错过这次秒杀。 在这个时候,我们系统面临着的依旧是大量的读请求,那我们应该怎么去应对呢? 因为这个秒杀场景中,用户查询的是少量的商品,属于查询热点数据,我们就可以采用缓存策略啊,将用户请求放在服务之外,或者是将静态资源放CDN等等,这些方案之前都教给大家了,自行查看哈,比如(分布式缓存的高可用方案,我们都是这么做的,CDN加速技术,开发人员也必须要搞清楚) 当秒杀活动在零点准时开始之后 ,就会有大量的用户瞬时向我们商城系统提交订单,扣减库存,这个时候用户的这一操作是不经过缓存的,而是直接落到数据库中的。1 秒内,会有 1 万个数据库连接产生,这个时候数据库就会很快崩溃,那我们该怎么办呢?一般这里我们会使用一个组件那就是消息队列。 消息队列是什么 消息队列的概念以及有什么作用,前面有讲到相关中间件的时候提到过(消息中间件能干什么?RabbitMQ、Kafka、RocketMQ正确选型姿势)。其实它就是一个暂时存放数据的容器,同时是一个平衡高速系统和低速系统处理任务时间差的工具,在系统设计中也是个比较常见的组件,比如,Java线程池会使用一个队列来存提交的任务,RPC 框架中,会将请求写到队列里,通过工作线程去处理。 那我们如何使用消息队列来解决现在的秒杀场景带来的问题呢?下面我们就一起来看看该怎么使用。 秒杀削峰写流量 看过我前面的文章的朋友可能会问,为什么不像以前那样的进行分库分表呢?当然是可以的,但是你应该知道不管是分库分表还是扩展数据库,势必会增加复杂性的,还要做数据迁移,虽然你通过前面的学习能具备解决这些数据复杂性的问题。 但是,这样的秒杀场景,高并发的写请求并不是持续的,也不是每天都有的,可能只有活动的几秒或者几十秒就结束了,就没那么大的并发写请求了。如果我们为了这几十秒的并发写请求折腾好几天来搞数据,不现实,没那么多时间也没那么多资源给我们去折腾。 所以,我们就可以将秒杀请求暂时存在消息队列中,然后我们的业务服务器高速用户“秒杀进行中”等,等释放系统资源后再去处理其他用户请求。 我们在后台可以开启 n 个队列处理程序,不断的消费消息队列中的任务,然后校验库存接着下单等操作,现在由于我们是有限的队列处理线程在执行,所以最终落到数据库上的并发请求也是有限的。用户请求是可以在消息队列中短暂堆积的,当库存为零了,消息队列堆积的请求也就可以全部释放了。 7f0c974ba0d0fa9e2e2177dfb991f44f.png 如上所述,就是消息队列在秒杀系统中最关键的运用:削峰填谷,即用来削平短暂的流量峰值。 注意,我们秒杀过程中不能长时间的不给用户响应,只能短暂的延迟通知结果,你想想看,如果你正在秒杀我们一个商品的时候,我个把小时都不告诉你,你还在傻傻等着结果,你心里肯定在怀疑我们秒杀的真实性,是不是套路了你。因此,我们在使用消息队列应对流量高峰时,需要对队列的处理时间,前段写入流量的大小以及数据库处理能力都要做好评估,最后根据不同量级来决定该部署多少台处理程序。 例如,我们现在有 1000 个商品参与秒杀,单次购买请求的时间大概在 500ms ,那么秒杀总共时间就是 500s ,此时,如果我们部署 10 台队列处理程序,则秒杀的处理请求时间也就在 50s ,也就是说,用户需要等待 50s 才可以看到此次的秒杀结果,对于常理来说,这个时间用户是完全可以接受的。而数据库端也只有 10 个并发打过去,也是没有压力的。 异步化简化秒杀业务 通过上面的学习我们知道了消息队列能够在大流量的写请求时,起到削峰填谷的作用。其实,我们还可以使用异步化机制来简化我们的秒杀请求业务流程,以提升我们整个系统性能。 如上我们秒杀场景下,在处理一个购买请求时,需要耗时 500ms ,其实,我们整个流程中是有主次之分的,也就是说有些次要的流程可以不和当前购买主流程同步在一起的。比如,我们当前购买主流程是创建订单和扣减库存,而非关键流程是下单成功之后的发放优惠券和增加用户积分等操作。 假如,发放优惠券耗时 50ms,增加用户积分耗时 50ms,现在如果我们将这两个操作放在另一个队列处理机中去执行,那么整个购买流程是不是就缩短到了 400ms了,性能提升了 20% 。 3c8223fbd435dd1492b20f58e1a1d32d.png 解耦实现秒杀系统模块间松耦合 消息队列除了上面表现出的削峰填谷和异步机制,同时,它在秒杀中还有另外一个作用那就是解耦。 假如,现在咱们公司的大数据团队对我们一个需求就是,他们想在我们在秒杀活动之后做相关数据统计,用来分析活动商品的受欢迎度、购买用户的行为特点以及对于秒杀互动的满意程度等相关指标。这个时候,我们就需要将大量的数据发送给大数据团队,该怎么做呢? 我们最容易想到的方案就是,使用 HTTP 或者 RPC 的方式来同步调用,即大数据团队提供一个接口给我们,然后我们将需要的数据推过去,但是,这样做会有两个问题: 整个系统耦合较高,如果他们的接口出问题就会直接影响到了我们秒杀系统的可用性。 如果大数据团队接口相关参数要变更的话,我们这边也得跟着变更。 这个时候,我们就可以使用消息队列来对其进行解耦。 秒杀系统产生一条购买数据之后,我们先将全部数据发送到消息队列中。 然后大数据团队自己订阅消息队列的topic。 最后他们自己做数据处理方面工作。 如此一来,大数据系统的故障就不会影响到我们秒杀系统了,同时,当他们需要更新相关字段的话,只需要解析消息队列中的数据,拿到自己需要的数据就行了。 776cdab5995413259647dc5b22de865f.png 削峰填谷、异步处理以及解耦是消息队列在秒杀系统设计中起到至关重要的作用。 削峰填谷可以削掉到达秒杀系统的峰值流量,让业务逻辑处理更加缓和自然; 异步处理可以简化整个业务流程的步骤从而提升系统性能; 解耦合可以将秒杀系统和大数据系统解耦开,这样彼此间的任何变更都不会影响到对方。 总结,今天我们结合秒杀的这种实际场景,一起学习到了消息队列在高并发系统设计中起到的作用。主要讲到这三大点: 削峰填谷是消息队列最主要的作用,但是会造成请求处理的延迟。 异步处理是提升系统性能的神器,但是你需要分清同步流程和异步流程的边界,同时消息存在着丢失的风险,我们需要考虑如何确保消息一定到达。 解耦合可以提升你的整体系统的鲁棒性。 当然,你要知道,在使用消息队列之后虽然可以解决现有的问题,但是系统的复杂度也会上升。比如上面提到的业务流程中,同步流程和异步流程的边界在哪里?消息是否会丢失,是否会重复?请求的延迟如何能够减少?消息接收的顺序是否会影响到业务流程的正常执行?如果消息处理流程失败了之后是否需要补发?这些问题都是我们需要考虑的。

资源下载

更多资源
腾讯云软件源

腾讯云软件源

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

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应用均可从中受益。

WebStorm

WebStorm

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

用户登录
用户注册