架构 模型 设计师 能力

详解redis网络IO模型

前言 "redis是单线程的" 这句话我们耳熟能详。但它有一定的前提,redis整个服务不可能只用到一个线程完成所有工作,它还有持久化、key过期删除、集群管理等其它模块,redis会通过fork子进程或开启额外的线程去处理。所谓的单线程是指从网络连接(accept) -> 读取请求内容(read) ......
模型 redis 网络

详解视频中动作识别模型与代码实践

摘要:本案例将为大家介绍视频动作识别领域的经典模型并进行代码实践。 本文分享自华为云社区《视频动作识别》,作者:HWCloudAI。实验目标 通过本案例的学习: 掌握 C3D 模型训练和模型推理、I3D 模型推理的方法; 注意事项 本案例推荐使用TensorFlow-1.13.1,需使用 GPU 运 ......
模型 动作 代码 视频

一文聊透Apache Hudi的索引设计与应用

Hudi索引在数据读和写的过程中都有应用。读的过程主要是查询引擎利用MetaDataTable使用索引进行Data Skipping以提高查找速度;写的过程主要应用在upsert写上,即利用索引查找该纪录是新增(I)还是更新(U),以提高写入过程中纪录的打标(tag)速度。 MetaDataTabl ......
索引 Apache Hudi

架构设计(三):引入缓存

架构设计(三):引入缓存 作者:Grey 原文地址: 博客园:架构设计(三):引入缓存 CSDN:架构设计(三):引入缓存 缓存是一个临时存储区域,如果请求的数据获取代价比较高或者数据的访问频率比较高,则会把响应结果存储在内存中,以便更快速地提供后续请求。 每次加载一个新的网页,都要执行一次或多次数 ......
缓存 架构

架构设计(二):数据库复制

架构设计(二):数据库复制 作者:Grey 原文地址: 博客园:架构设计(二):数据库复制 CSDN:架构设计(二):数据库复制 在架构设计(一):从单服务器模式到负载均衡设计中提到了数据库类型的选择, 针对大数据量,高可用的场景,数据库复制是一种比较好的方式,其中多个数据库实例之间可以是主/从关系 ......
架构 数据库 数据

架构设计(一):从单服务器模式到负载均衡设计

架构设计(一):从单服务器模式到负载均衡设计 作者:Grey 原文地址: 博客园:架构设计(一):从单服务器模式到负载均衡设计 CSDN:架构设计(一):从单服务器模式到负载均衡设计 单服务器模型是最简单的一种架构,参考如下图 用户访问一个 URL,URL 会先到 DNS 服务器进行域名解析,然后返 ......
架构 模式 服务器

架构设计(五):有状态服务和无状态服务

架构设计(五):有状态服务和无状态服务 作者:Grey 原文地址: 博客园:架构设计(五):有状态服务和无状态服务 CSDN:架构设计(五):有状态服务和无状态服务 无状态的服务 在横向扩展服务的过程中,将状态(例如用户会话数据)从服务中移出并将会话数据存储在持久性存储介质中,如关系型数据库或 No ......
状态 架构

痞子衡嵌入式:对比恩智浦全系列MCU(包含Kinetis/LPC/i.MXRT/MCX)的GPIO电平中断设计差异

大家好,我是痞子衡,是正经搞技术的痞子。今天痞子衡给大家介绍的是恩智浦全系列MCU(包含Kinetis, LPC, i.MXRT, MCX)的GPIO电平中断设计差异。 在痞子衡旧文 《以i.MXRT1xxx的GPIO模块为例谈谈中断处理函数(IRQHandler)的标准流程》里,痞子衡主要介绍得是 ......
电平 痞子 全系列 嵌入式 差异

MongoDB - 数据模型的设计模式

在实际开发中,大多数性能问题都可以追溯到糟糕的模型设计。官方也提供分享过文档模型设计的进阶技巧,这里简单翻译记录一下。 ......
设计模式 模型 MongoDB 模式 数据

云原生架构(三)简单样例

系列目录 云原生架构(一)原理概览 云原生架构(二)环境搭建 云原生架构(三)简单样例 云原生架构(四)源码详解 云原生架构(五)总结提高 一、目标&准备 1.1 目标 前两节,我们学习了云原生架构Istio的原理概览、环境搭建。要快速熟悉一个技术架构,最快的方式是先跑起来。这一节我们以Istio服 ......
架构

高可用系列文章之二 - 传统分层架构技术方案

前文链接 高可用系列文章之一 - 概述 - 东风微鸣技术博客 (ewhisper.cn) 三 技术方案 3.1 概述 单点是系统高可用最大的风险和敌人,应该尽量在系统设计的过程中避免单点。 保障系统的高可用, 方法论上,高可用保证的原则是「集群化」(或 「冗余」), 只有一个单点,该单点宕机所有服务 ......
架构 传统 方案 文章 技术

云原生架构(二)环境搭建(Mac上安装Istio---Docker+Kubernetes+Istio一条龙)

系列目录 云原生架构(一)原理概览 云原生架构(二)环境搭建 云原生架构(三)简单样例 云原生架构(四)源码详解 云原生架构(五)总结提高 一、背景 Istio 项目由 Google 和 IBM 的团队与 Lyft 的 Envoy 团队合作启动。它已经完全在 GitHub 上公开开发。目前已经是“S ......
Istio 一条龙 Kubernetes 架构 环境

微服务组件-----Spring Cloud Alibaba 注册中心Nacos的CP架构Raft协议分析

前言 本篇幅是继 注册中心Nacos源码分析 的下半部分。 意义 【1】虽说大部分我们采用注册中心的时候考虑的都是AP架构,为什么呢?因为性能相对于CP架构来说更高,需要等待的时间更少【相对于CP架构,采用的是二段提交,AP架构是直接落盘数据,然后进行数据扩散,来达到最终一致,所以客户端收到响应会更 ......
架构 组件 Alibaba Spring Cloud

小技巧 EntityFrameworkCore 实现 CodeFirst 通过模型生成数据库表时自动携带模型及字段注释信息

今天分享自己在项目中用到的一个小技巧,就是使用 EntityFrameworkCore 时我们在通过代码去 Update-Database 生成数据库时如何自动将代码模型上的注释和字段上的注释携带到数据库中,方便后续在数据库直接查看各个表和各个字段的含义。 实现效果如下: 可以看到我们每张表都有明确 ......

看完这篇,还不懂JAVA内存模型(JMM)算我输

欢迎关注专栏【JAVA并发】 前言 开篇一个例子,我看看都有谁会?如果不会的,或者不知道原理的,还是老老实实看完这篇文章吧。 @Slf4j(topic = "c.VolatileTest") public class VolatileTest { static boolean run = true; ......
模型 内存 JAVA JMM

一步步带你设计MySQL索引数据结构

前言 MySQL的索引是一个非常重要的知识点,也基本上是面试必考的一个技术点,所以非常重要。那你了解MySQL索引的数据结构是怎么样的吗?为什么要采用这样的数据结构? 现在化身为MySQL的架构师,一步步迭代设计出MySQL的索引结构,保证你再也忘记不了索引的结构了,轻松通过面试。 索引介绍 MyS ......
数据结构 索引 结构 数据 MySQL

使用C# 11的静态接口方法改进 面向约定 的设计

C# 11带来了一个我期待已久的特性——接口方法。我们知道接口是针对契约的定义,但是一直以来它只能定义一组“实例”的契约,而不能定义类型(的静态成员)的契约,因为定义在接口中的方法只能是实例方法。由于缺乏针对“类型契约”的支持,我们在设计一些框架或者类库的时候,只能采用“按照约定”的设计,比如ASP... ......
静态 接口 方法

软件设计中最关键的“开闭原则”,究竟指什么呢?

前言 软件设计原则中有一条很关键的原则是开闭原则,就是所谓的对扩展开放,对修改关闭。个人觉得这条原则是非常重要的,直接关系到你的设计是否具备良好的扩展性,但也是相对比较难以理解和掌握的,究竟怎样的代码改动才被定义为“扩展”?怎样的代码改动才被定义为“修改”?怎么才算满足或违反“开闭原则”?别急,本文 ......
原则 关键 软件

Dubbo架构设计与源码解析(三)责任链模式

作者:周可强 一、责任链模式简介 1、责任链模式定义 责任链(Chain of Responsibility)模式的定义:为了避免请求发送者与多个请求处理者耦合在一起,于是将所有请求的处理者通过前一对象记住其下一个对象的引用而连成一条链;当有请求发生时,可将请求沿着这条链传递,直到有对象处理它为止。 ......
架构 源码 模式 责任 Dubbo

模型驱动设计的构造块(上)——DDD

为了保证软件实践得简洁并且与模型保持一致,不管实际情况如何复杂,必须运用建模和设计的实践。 某些设计决策能够使模型和程序紧密结合在一起,互相促进对方的效用。这种结合要求我们注意每个元素的细节,对细节问题的精雕细琢能够打造一个稳定的平台。 本部分主要将一些模式,说明细微的模型差别和设计决策如何影响领域 ......
模型 DDD

.NET 云原生架构师训练营(基于 OP Storming 和 Actor 的大型分布式架构一)--学习笔记

目录 为什么我们用 Orleans Dapr VS Orleans Actor 模型 Orleans 的核心概念 为什么我们用 Orleans 分布式系统开发、测试的难度(服务发现、通信) 运维的复杂度(伸缩性与可靠性的保障) actor 拥有全局唯一身份 自动伸缩功能 Dapr VS Orlean ......
架构 分布式 Storming 笔记 Actor

轻量级的架构决策记录机制

作者:倪新明 ADR是一种性价比非常高的架构决策文档化实践,团队引入和实践成本很低,却能为团队带来极大收益! 1 团队研发面临的问题 不论是在传统的IT行业,还是互联网行业,研发团队在架构决策层面或多或少的都会面临以下问题或挑战: •新成员加入团队,对系统现有的架构决策可能会盲目遵守,只知其然,不知 ......
轻量 轻量级 架构 机制

MasaFramework -- 领域驱动设计

概念 什么是领域驱动设计 领域驱动的主要思想是, 利用确定的业务模型来指导业务与应用的设计和实现。主张开发人员与业务人员持续地沟通和模型的持续迭代,从而保证业务模型与代码的一致性,实现有效管理业务的复杂度,优化软件设计的目的 痛点 基于领域驱动设计的模型有很多难点需要克服 统一认知 语言统一, 领域 ......
MasaFramework 领域

MASA Framework -- 跨进程事件 IntegrationEventBus入门与设计

概述 跨进程事件总线允许发布和订阅跨服务传输的消息, 服务的发布与订阅不在同一个进程中 在Masa Framework中, 跨进程总线事件提供了一个可以被开箱即用的程序 IntegrationEvents: 提供了发件箱模式 IntegrationEvents.Dapr: 借助Dapr实现了消息的发 ......
IntegrationEventBus Framework 事件 MASA

(Java)设计模式:行为型

前言 此篇博文内容续接的是 UML建模语言、设计原则、创建型设计模式 的内容,有兴趣的可以点前面的链接去看一下 3.2、行为型 这类设计模式是专门用于:对象间的高效沟通和职责委派 * 3.2.1、chain of responsibility 责任链模式 定义:责任链模式又名职责链模式,指的是:对某 ......
设计模式 行为 模式 Java

(Java)设计模式:创建型

前言 这篇内容是从另一篇:UML建模、设计原则 中分离出来的,原本这个创建型设计模式是和其放在一起的 但是:把这篇创建型设计模式放在一起让我贼别扭,看起来贼不舒服,越看念头越不通达,导致老衲躺在床上脑海中冒出来时都睡不着了 因此:最后实在受不了了,还是将其抽离出来 3、设计模式 分类: 注:使用设计 ......
设计模式 模式 Java

Easy-Classification-分类框架设计

1. 框架介绍 Easy-Classification是一个应用于分类任务的深度学习框架,它集成了众多成熟的分类神经网络模型,可帮助使用者简单快速的构建分类训练任务。 框架源代码:https://github.com/wuya11/easy-classification 1.1 框架功能 1.1.1 ......

新零售SaaS架构:多租户系统架构设计

传统大企业更喜欢私有化部署、个性化交付的传统模式,因为他们需要更强的管控和更高的安全性。 然而,中小企业付费能力有限,需求往往也更加标准化,所以更喜欢价格更低的、订购更简单的SaaS产品。 为了满足不同客户的需求,多租户的底层架构设计是至关重要的。 ......
架构 租户 系统 SaaS

【深入浅出 Yarn 架构与实现】4-1 ResourceManager 功能概述

前面几篇文章对 Yarn 基本架构、程序基础库、应用设计方法等进行了介绍。之后几篇将开始对 Yarn 核心组件进行剖析。 ResourceManager(RM)是 Yarn 的核心管理服务,负责集群管理、任务调度、状态机管理等,本篇将对 RM 总体架构进行介绍。 ......

NLP实践!文本语法纠错模型实战,搭建你的贴身语法修改小助手 ⛵

本文详细介绍 GECToR 这一优秀的文本纠错模型,使用 Transformer 编码器的序列标注器,以保证文本数据的质量,进而提升NLP模型的效果。 ......
语法 实战 助手 模型 文本