2023-12-26 16:30:00 ~ 2023-12-27 16:30:00
随着云上办公和远程工作的普及,越来越多的在线办公软件加入了协同编辑功能,使得多人能够同时编辑同一份资源,提高工作效率。
对于多人协作,开发人员通常使用 git 作为版本管理工具来并行开发需求,通过 merge 指令将各自的修改合并。然而,当多个人同时更改同一处内容时,可能会产生冲突,需要开发人员手动解决。
这种模式对一般用户并不友好。以前,大多采用悲观锁的方式,即一个文档只允许一个用户编辑,其他用户处于锁定状态,以避免协同编辑冲突。然而,悲观锁方式简单粗暴,效率较低。我们希望多人能够同时编辑同一份文档,且在出现冲突时能够自动解决,无需像 git 那样手动处理,确保文档一致性,降低用户心智负担。这就需要应用复杂的协同处理算法。
登录后可查看文章图片
在 Elasticsearch 中,Fingerprint(指纹)通常指的是一种机制,用于为数据生成一个唯一的标识符或指纹。这个指纹是基于数据内容的一个哈希值,可用于识别和区分数据项。
登录后可查看文章图片
binlog 是一个二进制格式的文件,用于记录用户对数据库更新的 SQL 语句信息,例如更改数据库表和更改内容的 SQL 语句都会记录到 binlog 里,但是对库表等内容的查询不会记录。
登录后可查看文章图片
资金安全中基于DB字段异常的演练是一个让人又爱又恨的事情,饿了么的测试同学进行了一个非常高效的实践:自动生成脚本、自动注入服务器、自动发起流量,将2小时的演练工作,缩减到9秒。
登录后可查看文章图片
对于人类的身体健康来说,“三高”是个大忌,但在计算机界,系统的“三高”却是健康的终极目标。本文将介绍一下流量治理是如何维持这种“三高”系统的健康,保障数据流动的均衡与效率,就如同营养顾问在维持人类健康饮食中所起的作用一般。
登录后可查看文章图片
全新的微盟前端APM3.0指标统计与告警能力,基于VictoriaMetrics + VMAlert,设计前端应用数据上报、指标exporter服务。
登录后可查看文章图片
众所周知,DevOps流水线(DevOps pipeline)的本质是实现自动化工作流程,用于支持软件开发、测试和部署的连续集成、交付和部署(CI/CD)实践。它是DevOps方法论的核心组成部分,旨在加速软件交付、提高质量和实现持续改进。
登录后可查看文章图片
软件系统是通过软件开发来解决某一个业务领域或问题单元而产生的一个交付物。而通过软件设计可以帮助我们开发出更加健壮的软件系统。因此,软件设计是从业务领域到软件开发之间的桥梁。而DDD是软件设计中的其中一种思想,旨在提供一种大型复杂软件的设计思路和规范。通过DDD思想可以让我们的业务架构、系统架构、部署架构、数据架构、工程架构等都具备高扩展性、高维护性和高测试性。
登录后可查看文章图片
Taro本质上是进行多端编译和运行,而Taro的编译主要依赖于webpack配置,Taro则通过mini-runner完成webpack配置的组装,然后根据 webpack 配置生成编译后的代码。
登录后可查看文章图片
关注公众号
接收推送