- 在软件架构中,关注点分离(Separation of Concerns, SoC)是一种至关重要的设计原则,它帮助开发者构建更加模块化、灵活且易于维护的系统。通过将不同的功能和业务逻辑分离到不同的组件中,我们可以降低系统的复杂性,提高代码的可读性和可维护性。 在软件架构中,关注点分离(Separation of Concerns, SoC)是一种至关重要的设计原则,它帮助开发者构建更加模块化、灵活且易于维护的系统。通过将不同的功能和业务逻辑分离到不同的组件中,我们可以降低系统的复杂性,提高代码的可读性和可维护性。
- 在现代软件工程中,可扩展性是确保软件系统能够适应未来增长的关键特性。本文将全方位探讨可扩展性的多个方面,包括类设计、插件化、框架设计、架构设计、中间件集成扩展和服务治理。主要传递给大家扩展性设计的思路与涉足的范围。具体完善的细节,可以参考各中间件与业务架构。不了解的可以关注肖哥,提问。 在现代软件工程中,可扩展性是确保软件系统能够适应未来增长的关键特性。本文将全方位探讨可扩展性的多个方面,包括类设计、插件化、框架设计、架构设计、中间件集成扩展和服务治理。主要传递给大家扩展性设计的思路与涉足的范围。具体完善的细节,可以参考各中间件与业务架构。不了解的可以关注肖哥,提问。
- 文章来源于时习知公众号本文作者:孙献伟(华为终端IT应用架构师)全文约2644字,阅读约需9分钟编者按:随着企业数字化转型进程加快,数字化产品被频繁提及。所谓数字化产品,是指通过数字技术手段实现其功能的产品,比如一段软件代码、一个移动应用程序(App)等,数字化产品的核心特点是可以被电子化处理、存储和传输。为什么数字化产品需要高质量?如何做成数字化产品高质量建设…一起和笔者一探究竟吧!最近两... 文章来源于时习知公众号本文作者:孙献伟(华为终端IT应用架构师)全文约2644字,阅读约需9分钟编者按:随着企业数字化转型进程加快,数字化产品被频繁提及。所谓数字化产品,是指通过数字技术手段实现其功能的产品,比如一段软件代码、一个移动应用程序(App)等,数字化产品的核心特点是可以被电子化处理、存储和传输。为什么数字化产品需要高质量?如何做成数字化产品高质量建设…一起和笔者一探究竟吧!最近两...
- 在AIGC(AI生成内容)快速发展的今天,最前沿的模型结构和创新成为了研究和应用的焦点。本文聚焦于两个新兴的SOTA(state-of-the-art)模型——Sora与OpenAI o1,深入解析它们的技术架构及独特的创新点,并通过代码示例来展示如何构建并使用类似的模型。 一、Sora与OpenAI o1概述Sora和OpenAI o1是两个具有代表性的生成模型,它们在文本生成、图像生成等... 在AIGC(AI生成内容)快速发展的今天,最前沿的模型结构和创新成为了研究和应用的焦点。本文聚焦于两个新兴的SOTA(state-of-the-art)模型——Sora与OpenAI o1,深入解析它们的技术架构及独特的创新点,并通过代码示例来展示如何构建并使用类似的模型。 一、Sora与OpenAI o1概述Sora和OpenAI o1是两个具有代表性的生成模型,它们在文本生成、图像生成等...
- 排查思路【1】定位高负载进程 pid:登录进服务器使用top或top -c命令[ps -ef | grep xxx 命令]查看当前CPU消耗过高的进程,从而得到进程id。观察各个进程资源使用情况,可以看出进程id为18571的进程,有着较高的CPU占比。按P(大写)可以倒序查看占CPU占用率。【定位具体的异常业务】:使用pwdx pid命令[查看当前pid进程启动时的工作目录]根据pid找... 排查思路【1】定位高负载进程 pid:登录进服务器使用top或top -c命令[ps -ef | grep xxx 命令]查看当前CPU消耗过高的进程,从而得到进程id。观察各个进程资源使用情况,可以看出进程id为18571的进程,有着较高的CPU占比。按P(大写)可以倒序查看占CPU占用率。【定位具体的异常业务】:使用pwdx pid命令[查看当前pid进程启动时的工作目录]根据pid找...
- 由于当前项目需要对接多个不同的数据源,同时涉及到多端处理,而且需要考虑海量数据处理,还有总部与分部架构部署问题,因而整体技术栈倾向于大数据和分表分库式处理数据层接入问题。简单讲,项目分为数据中台和业务中台两个子系统,其中数据中台主要对接不同数据源,提供数据聚合,统一的数据报表。业务中台分为基础服务和业务服务,基础服务主要是提供统一网关,统一权限,日志,定时任务等服务。 一、关键功能需求1、实... 由于当前项目需要对接多个不同的数据源,同时涉及到多端处理,而且需要考虑海量数据处理,还有总部与分部架构部署问题,因而整体技术栈倾向于大数据和分表分库式处理数据层接入问题。简单讲,项目分为数据中台和业务中台两个子系统,其中数据中台主要对接不同数据源,提供数据聚合,统一的数据报表。业务中台分为基础服务和业务服务,基础服务主要是提供统一网关,统一权限,日志,定时任务等服务。 一、关键功能需求1、实...
- 本文详解分布式全局唯一ID及其5种实现方案,关注【mikechen的互联网架构】,10年+BAT架构经验倾囊相授。 本文详解分布式全局唯一ID及其5种实现方案,关注【mikechen的互联网架构】,10年+BAT架构经验倾囊相授。
- 【摘要】 本文是Java Chassis 3最佳实践系列文章之一,主要介绍Fence在韧性架构设计方面的一些思考。 【摘要】 本文是Java Chassis 3最佳实践系列文章之一,主要介绍Fence在韧性架构设计方面的一些思考。
- 对于工作3年左右的Java程序员来说,在面试大厂的过程中,面试官可能不会太关注你做了多少个项目、你的CRUD水平如何。更多的是关注你对某项技术点的理解深度,所以说,工作3年左右的小伙伴一定要把自己的重心放到技术的深度上来。 对于工作3年左右的Java程序员来说,在面试大厂的过程中,面试官可能不会太关注你做了多少个项目、你的CRUD水平如何。更多的是关注你对某项技术点的理解深度,所以说,工作3年左右的小伙伴一定要把自己的重心放到技术的深度上来。
- 分布式IM即时通讯系统本质上就是对线上聊天和用户的管理,针对聊天本身来说,最核心的需求就是:发送文字、图片、文件、语音、视频、消息缓存、消息存储、消息未读、已读、撤回,离线消息、历史消息、单聊、群聊,多端同步,以及其他一些需求。对用户管理来说,存在的需求包含:添加好友、查看还有列表、删除好友、查看好友信息、创建群聊、加入群聊、查看群成员信息、退出群聊、修改群昵称、拉人进群、踢人出群、解散群聊、 分布式IM即时通讯系统本质上就是对线上聊天和用户的管理,针对聊天本身来说,最核心的需求就是:发送文字、图片、文件、语音、视频、消息缓存、消息存储、消息未读、已读、撤回,离线消息、历史消息、单聊、群聊,多端同步,以及其他一些需求。对用户管理来说,存在的需求包含:添加好友、查看还有列表、删除好友、查看好友信息、创建群聊、加入群聊、查看群成员信息、退出群聊、修改群昵称、拉人进群、踢人出群、解散群聊、
- 在不破坏封装的前提下,捕获一个对象的内部状态,并在该对象之外进行保存,以便在未来将对象恢复到原先保存的状态 在不破坏封装的前提下,捕获一个对象的内部状态,并在该对象之外进行保存,以便在未来将对象恢复到原先保存的状态
- 揭示设计模式中模板方法模式的核心原理和实用技巧的文章。模板方法模式是一种行为设计模式,它通过定义一个算法的骨架,将一些步骤的具体实现延迟到子类中。本文将深入探讨该模式的设计原理,以及如何在实际项目中应用该模式来提高代码的可维护性、扩展性和复用性。通过学习本文,您将了解模板方法模式的内部工作原理,并学会如何使用该模式解决实际开发中的问题。 揭示设计模式中模板方法模式的核心原理和实用技巧的文章。模板方法模式是一种行为设计模式,它通过定义一个算法的骨架,将一些步骤的具体实现延迟到子类中。本文将深入探讨该模式的设计原理,以及如何在实际项目中应用该模式来提高代码的可维护性、扩展性和复用性。通过学习本文,您将了解模板方法模式的内部工作原理,并学会如何使用该模式解决实际开发中的问题。
- 分布式锁是在分布式系统中用于实现并发控制和保护共享资源的重要工具。文章通过介绍分布式锁的背景和概念,帮助读者理解其在构建可靠分布式应用中的关键作用。 在文章中,读者将学习到分布式锁的不同实现方式,例如基于数据库、基于缓存、基于共享存储等。每种实现方式都有其独特的特点和适用场景。文章将深入探讨这些实现方式的原理、优缺点以及适用条件,帮助读者了解如何选择合适的分布式锁实现方式。 分布式锁是在分布式系统中用于实现并发控制和保护共享资源的重要工具。文章通过介绍分布式锁的背景和概念,帮助读者理解其在构建可靠分布式应用中的关键作用。 在文章中,读者将学习到分布式锁的不同实现方式,例如基于数据库、基于缓存、基于共享存储等。每种实现方式都有其独特的特点和适用场景。文章将深入探讨这些实现方式的原理、优缺点以及适用条件,帮助读者了解如何选择合适的分布式锁实现方式。
- 文章通过介绍创建型设计模式的定义、背景和核心概念,帮助读者理解它们在软件开发中的重要性。创建型设计模式主要关注对象的创建过程,包括如何灵活地创建对象、管理对象的生命周期和实现对象的复用。文章通过具体的示例和代码片段,演示了如何使用这些设计模式来解决实际的软件设计问题。 文章通过介绍创建型设计模式的定义、背景和核心概念,帮助读者理解它们在软件开发中的重要性。创建型设计模式主要关注对象的创建过程,包括如何灵活地创建对象、管理对象的生命周期和实现对象的复用。文章通过具体的示例和代码片段,演示了如何使用这些设计模式来解决实际的软件设计问题。
- 经过四个多月的坚持,《Seckill秒杀系统》终于接近尾声了,也感谢大家这四个多月以来的坚持和陪伴,也相信大家在《Seckill秒杀系统》专栏中,学到了不少知识和技术。接下来,我们就一起对《Seckill秒杀系统》专栏做个总结。 经过四个多月的坚持,《Seckill秒杀系统》终于接近尾声了,也感谢大家这四个多月以来的坚持和陪伴,也相信大家在《Seckill秒杀系统》专栏中,学到了不少知识和技术。接下来,我们就一起对《Seckill秒杀系统》专栏做个总结。
上滑加载中
推荐直播
-
GaussDB数据库介绍
2025/01/07 周二 16:00-18:00
Steven 华为云学堂技术讲师
本期直播将介绍GaussDB数据库的发展历程、优势、架构、关键特性和部署模式等,旨在帮助开发者了解GaussDB数据库,并通过手把手实验教大家如何在华为云部署GaussDB数据库和使用gsql连接GaussDB数据库。
去报名 -
DTT年度收官盛典:华为开发者空间大咖汇,共探云端开发创新
2025/01/08 周三 16:30-18:00
Yawei 华为云开发工具和效率首席专家 Edwin 华为开发者空间产品总监
数字化转型进程持续加速,驱动着技术革新发展,华为开发者空间如何巧妙整合鸿蒙、昇腾、鲲鹏等核心资源,打破平台间的壁垒,实现跨平台协同?在科技迅猛发展的今天,开发者们如何迅速把握机遇,实现高效、创新的技术突破?DTT 年度收官盛典,将与大家共同探索华为开发者空间的创新奥秘。
去报名
热门标签