复杂业务系统的通用架构设计法则

生活中我们经常谈及 “架构”,那么到底什么是 “架构”,Robert C.Martin《架构整洁之道》中的定义:软件架构是指设计软件的人为软件赋予的形状,这个形状是指系统如何被划分为组件 (Components),各个组件如何排列(Ar...阅读全文

C++ 单例模式的各种坑及最佳实践

单例模式是设计模式中最简单、常见的一种。其主要目的是确保整个进程中,只有一个类的实例,并且提供一个统一的访问接口。常用于 Logger 类、通信接口类等。 # 基本原理 限制用户直接访问类的构造函数,提供一个统一的 public 接口获...阅读全文

策 略 模 式「指 鼠 为 鸭」

大家好,我是 god23bin,今天我们来介绍下设计模式中的一个重要的设计模式——策略模式。 当涉及到某个行为或算法有多个变体时,策略模式是一种常见的设计模式。它允许在运行时选择使用不同的策略,而无需修改现有代码。 现在就使用设计模...阅读全文

翻译:REST 和 gRPC 详细比较

>译者注:在微服务架构设计,构建API和服务间通信技术选型时,对 REST 和 gRPC 的理解和应用还存在知识盲区,近期看到国外的这篇文章:[A detailed comparison of REST and gRPC](htt...阅读全文

驱动开发:内核文件读写系列函数

在应用层下的文件操作只需要调用微软应用层下的`API`函数及`C库`标准函数即可,而如果在内核中读写文件则应用层的API显然是无法被使用的,内核层需要使用内核专有API,某些应用层下的API只需要增加Zw开头即可在内核中使用,例如本章要...阅读全文

详解驱动开发中内核PE结构VA与FOA转换

摘要:本文将探索内核中解析PE文件的相关内容。 本文分享自华为云社区《驱动开发:内核PE结构VA与FOA转换》,作者: LyShark 。 本章将探索内核中解析PE文件的相关内容,PE文件中FOA与VA、RVA之间的转换也是很重要的,所...阅读全文

驱动开发:内核封装WFP防火墙入门

WFP框架是微软推出来替代TDIHOOK传输层驱动接口网络通信的方案,其默认被设计为分层结构,该框架分别提供了用户态与内核态相同的AIP函数,在两种模式下均可以开发防火墙产品,以下代码我实现了一个简单的驱动过滤防火墙。WFP 框架分为两...阅读全文

移动应用架构新思路——WePY+小程序容器

WePY(微信小程序开发框架)是一个基于组件化开发思想的微信小程序开发框架。它类似于Vue.js框架,通过封装小程序原生的API,提供了更加简洁、高效的开发方式。 WePY的主要特点包括: 组件化开发:WePY将页面拆分为多个组件,每个...阅读全文

如何做架构设计?

我们要寻求更好的技术方案,推动架构的良性演进,每一步都是经过深度思考的,而架构设计方法就是帮助我们思考的框架。通过做架构设计,我们应该提升软件的质量和效率,降低风险和成本。 ...阅读全文

C#设计模式19——装饰器模式的写法

装饰器模式(Decorator Pattern)是一种结构型设计模式,它允许你动态地给一个对象添加一些额外的职责,而不需要修改这个对象的代码。 What(什么) 装饰器模式是一种结构型设计模式,它允许你动态地给一个对象添加一些额外的职责...阅读全文

C++程序开发技巧

## 引言 > 类(class)的使用分为两种——基于对象(object Based)和面向对象(object oriented) > > 基于对象是指,程序设计中单一的类,和其他类没有任何关系 > > 单...阅读全文

微服务架构基本原理学习笔记(二)

上一篇:微服务架构基本原理学习笔记(一) 三、微服务架构 从一个已有的单体架构的应用程序开始进行微服务架构的重构往往是一个不错的选择。随着业务量和功能的增加,我们可以考虑使用微服务架构来扩充应用程序中原有的功能,或者每次添加新功能时,都...阅读全文

03.外观模式

### 外观式定义 为子系统中的一组接口提供一个一致的界面,Facade 模式定义了一个高层接口,这个接口使得这一子系统更加容易使用。 #### 界面 在这里提到的界面,主要指的是从一个组件外部来看这个组件,能够看到什么,这就是这个组件...阅读全文

Java课堂|餐饮的本质(设计模式之工厂模式)

# 前言 本文主要讲述**工厂模式**,文中使用通俗易懂的案例,使你更好的学习本章知识点并理解原理,做到有道无术。 # 一.什么是工厂模式 工厂模式是23种设计模式中**创建型模式**的一种,它是一个最简单的对象创建管理方式,根据调用方...阅读全文

解释器模式(Interpreter Pattern)

### 解释器模式(Interpreter Pattern) #### 一、定义 解释器模式(Interpreter Pattern)提供了评估语言的语法或表达式的方式,它属于行为型模式。这种模式实现了一个表达式接口,该接口解释一个特定...阅读全文

缓存击穿、穿透、雪崩及常用解决方案

# 缓存击穿、穿透、雪崩及解决方案 Redis是一种高性能的键值型数据库,它可以用来实现缓存功能,提高应用的响应速度和承载能力。但是,使用Redis缓存也会遇到一些常见的问题,比如缓存击穿、缓存穿透、缓存雪崩。这些问题都会影响缓存的效率...阅读全文