如何提升系统架构能力?
系统设计与架构,与系统的业务类型关联很大,比如,传统的业务系统主要关注的是领域建模设计,高并发、高可用、数据一致性等系统,在设计的时候会与业务系统有较大的差别,所以这里针对不同类型的系统,来简单介绍一下设计的时候面临的一些难点与解决方案。
系统设计与架构,与系统的业务类型关联很大,比如,传统的业务系统主要关注的是领域建模设计,高并发、高可用、数据一致性等系统,在设计的时候会与业务系统有较大的差别,所以这里针对不同类型的系统,来简单介绍一下设计的时候面临的一些难点与解决方案。
WebSocket 是一种网络传输协议,可在单个 TCP 连接上进行全双工通信,位于 OSI 模型的应用层。WebSocket 协议在 2011 年由 IETF 标准化为 RFC 6455,后由 RFC 7936 补充规范。本文详细介绍了 WebSocket 协议的核心要点及相关 API。
GraphQL 是 FaceBook 推出的一种用于 API 的查询语言。本文主要围绕 GraphQL 的 Server 端实现,因为相比 Client 端,Server 端包含了更多的内容。如果你的项目正处于技术选型,你正在犹豫选择一种接口风格的时刻,不妨了解一下 GraphQL 这个神奇而强大的技术。
不管是 jQuery、 Vue 还是 React,它们都支持插件。插件是库和框架中很常见的功能,插件能够使你的项目具有更高的价值,而且也不会增加太多额外的维护负担。本文详细介绍了使用 JavaScript 构建插件系统的方法和流程,以及相关注意事项。
在浏览器端或服务端, JSON.stringify()
都是我们很常用的方法,在一些性能敏感的场合下(例如服务端处理大量并发),或面对大量 stringify 的操作时,我们会希望 JSON.stringify()
的性能更好,速度更快。这也催生了一些优化的 stringify 方案/库。那么,在大幅的性能提升背后的技术原理是什么呢?
和一维码相比,二维码的信息承载量更大,能表达的信息更加多样化。比如,同样是识别商品,一维码只能展示出商品的名称、价格、产地等少量基础信息,二维码则可以展示出更详尽的信息,甚至扫码后还能获得图片、视频、音频等不同类型的信息。