C++程序开发技巧
## 引言 > 类(class)的使用分为两种——基于对象(object Based)和面向对象(object oriented) > > 基于对象是指,程序设计中单一的类,和其他类没有任何关系 > > 单...阅读全文
## 引言 > 类(class)的使用分为两种——基于对象(object Based)和面向对象(object oriented) > > 基于对象是指,程序设计中单一的类,和其他类没有任何关系 > > 单...阅读全文
# 前言 本文主要讲述设计模式中的**抽象工厂模式**,文中使用通俗易懂的案例,使你更好的学习本章知识点并理解原理,做到有道无术。 # 一.什么是抽象工厂模式 抽象工厂是23种设计模式中**创建型模式**的一种,抽象工厂是由多个工厂组合...阅读全文
上一篇:微服务架构基本原理学习笔记(一) 三、微服务架构 从一个已有的单体架构的应用程序开始进行微服务架构的重构往往是一个不错的选择。随着业务量和功能的增加,我们可以考虑使用微服务架构来扩充应用程序中原有的功能,或者每次添加新功能时,都...阅读全文
### 外观式定义 为子系统中的一组接口提供一个一致的界面,Facade 模式定义了一个高层接口,这个接口使得这一子系统更加容易使用。 #### 界面 在这里提到的界面,主要指的是从一个组件外部来看这个组件,能够看到什么,这就是这个组件...阅读全文
# 前言 本文主要讲述**工厂模式**,文中使用通俗易懂的案例,使你更好的学习本章知识点并理解原理,做到有道无术。 # 一.什么是工厂模式 工厂模式是23种设计模式中**创建型模式**的一种,它是一个最简单的对象创建管理方式,根据调用方...阅读全文
### 解释器模式(Interpreter Pattern) #### 一、定义 解释器模式(Interpreter Pattern)提供了评估语言的语法或表达式的方式,它属于行为型模式。这种模式实现了一个表达式接口,该接口解释一个特定...阅读全文
# 缓存击穿、穿透、雪崩及解决方案 Redis是一种高性能的键值型数据库,它可以用来实现缓存功能,提高应用的响应速度和承载能力。但是,使用Redis缓存也会遇到一些常见的问题,比如缓存击穿、缓存穿透、缓存雪崩。这些问题都会影响缓存的效率...阅读全文
技術架構師,將整間企業的IT開發流程至維運管理,視為一個大型系統進行規劃。並分為四個面向進行發展: - [開發平台]:構建高度重用的共用模組和服務,並在多個專案項目和應用系統中使用,以提高開發效率並降低維護成本。 - [Dev...阅读全文
还在一行一行地手撸查询代码吗?有没有想过全自动的,通用的,免写代码的动态查询?上一篇简略讲了构造出可执行的表达式的原型实现,本篇来剧透一下多层嵌套查询Expression Lambda表达式的动态自动构建完之后有什么用法。 ...阅读全文
本文通过对贫血三层架构进行精炼,推导出适合我们落地的应用架构,并且将之实现为Maven Archetype以应用到实际开发,然而应用架构只是落地DDD的一个知识点,要完整落地DDD还必须体系化地掌握限界上下文、上下文映射、充血模型、实体...阅读全文
设计一个支持百万用户的系统是具有挑战性的,这是一段需要不断改进和不断提升的旅程。在本章中,我们将构建一个支持单个用户的系统,并逐渐扩展以服务于数百万用户。阅读本章后,您将掌握一些技巧,帮助您解决系统设计面试问题。 > AI不会取代...阅读全文
### 命令模式(Command Pattern) #### 一、定义 命令模式(Command Pattern)是一种数据驱动的设计模式,它属于行为型模式。请求以命令的形式包裹在对象中,并传给调用对象。调用对象寻找可以处理该命令的合适...阅读全文
还在一行一行地手撸查询代码吗?有没有想过全自动的,通用的,免写代码的动态查询?上一篇简略讲了如何根据前面设计的查询描述器构造出可执行的表达式的原理,本篇来讲讲如何用C#代码实现俄罗斯套娃般的多层嵌套查询Expression Lambda...阅读全文
还在手撸查询代码吗?有没有想过全自动的,通用的,免写代码的动态查询?上一篇简略讲了如何把查询条件用代码描述出来,本篇接继来讲讲,如何根据前面设计好查询描述器构造出可执行的表达式。 ...阅读全文
如果你有 *n* 个缓存服务器,一个常见的负载均衡方式是使用以下的哈希方法: *服务器索引 = 哈希(键) % N*,其中 *N* 是服务器池的大小。 让我们通过一个例子来说明这是如何工作的。如表5-1所示,我们有4台服务器和8个字符串...阅读全文
基于Expression Lambda表达式树的通用复杂动态查询构建器。在上一篇中构思了把查询子句描述出来的数据结构,那么能否用代码将其表达出来,如何表达呢?本篇来讲讲查询描述器的构思。 ...阅读全文
基于Expression Lambda表达式树的通用复杂动态查询构建器。在上一篇中构思了把查询子句描述出来的数据结构,那么能否用代码将其表达出来,如何表达呢?本篇来讲讲查询描述器的构思。 ...阅读全文
### GC 优化 #### 1.防止大对象Buffer到内存中 **现象**:当大包请求时,YGC 耗时严重 **原因**:默认情况下 Zuul2 并不会缓存请求体(DirectByteBuffer),也就意味着它会先发送接收到的请求...阅读全文
一、什么是微服务 微服务是一种技术架构,通常我们可以把它理解为一组可以相互之间协同工作的应用程序或服务,这些应用程序或服务能够被单独部署到不同的服务器中,并且能够自主运行和维护。 微服务技术只是一个名称而已,或许我们在日常工作中已经或多...阅读全文
# Redis内存兜底策略——内存淘汰及回收机制 Redis内存淘汰及回收策略都是Redis**内存优化兜底**的策略,那它们是如何进行**兜底**的呢?先来说明一下什么是内存淘汰和内存回收策略: - Redis内存淘汰:当Redis的...阅读全文