架构师日记-从代码到设计的性能优化指南 | 京东云技术团队

性能优化是个系统性工程,宏观上可分为网络,服务,存储几个方向,每个方向又可以细分为架构,设计,代码,可用性,度量等多个子项。 本文将重点从代码和设计两个子项展开,谈谈那些提升性能的知识点。

【实践篇】领域驱动设计:DDD工程参考架构

不同团队落地DDD所采取的应用架构风格可能不同,并没有统一的、标准的DDD工程架构。即使无法制定通用的、标准的工程应用架构,但为团队制定一个遵循领域驱动设计思想的参考架构依然有价值。

分布式数据库 Join 查询设计与实现浅析

本文记录 Mysql 分库分表 和 Elasticsearch Join 查询的实现思路,了解分布式场景数据处理的设计方案。文章从常用的关系型数据库 MySQL 的分库分表Join 分析,再到非关系型 ElasticSearch 来分析 Join 实现策略。逐步深入Join 的实现机制。

推荐一款免费好用的远程桌面:Getscreen

因为平时有多台设备要用,所以远程桌面是我经常要使用的工具。 最近,正好看到一款不错的远程桌面软件,马上拿出来推荐给大家,如果有需要的可以看看。 ![](https://img2023.cnblogs.com/other/626506/202308/626506-20230824152205856-1

试试用Markdown来设计表单

相信很多后端开发。对于前端知识是比较零碎的,所以很多时候写表单这样的工作,一般就是复制黏贴,然后改改字段。对于HTML格式,一直觉得比较杂乱,不够简洁。 最近TJ发现了一个有趣的小工具:Create HTML Form。 看看上面它的Slogan,是不是很有意思?居然可以通过Markdown来编写H

物联网 IOT 设备如何脱离信息孤岛?

目前在家庭物联网这一块,绝大部分的电子消费品都是基于wifi联网的设备。从商家那里达到消费者手中之后,简单开机使用无法体现其全部价值,还是需要经过消费者给设备配网的过程,把设备从信息孤岛接入互联互通的世界。

软件设计模式系列之十——组合模式

组合模式是一种结构型设计模式,用于将对象组合成树形结构以表示部分-整体层次结构。这个模式允许客户端以一致的方式处理单个对象和对象组合,因此它将单个对象和组合对象视为可互换的。 组合模式允许你将对象组合成树状结构来表示"部分-整体"的层次结构。组合模式使得客户端可以统一地处理单个对象和组合对象,无需关...

前端使用 Konva 实现可视化设计器(18)- 素材嵌套 - 加载阶段

本章主要实现素材的嵌套(加载阶段)这意味着可以拖入画布的对象,不只是图片素材,还可以是嵌套的图片和图形。

[MAUI 项目实战] 笔记App(二):数据库设计

@目录Sqlite配置创建实体笔记实体类笔记分组实体笔记片段实体笔记片段负载实体笔记片段仓库实体笔记模板(场景)实体笔记片段模板实体笔记片段模板负载实体配置EF创建映射迁移和种子数据项目地址 Sqlite配置 应用程序里使用Sqlite作为数据库,使用EntityFramworkCore作为ORM,

重构代码的一些想法

重构代码的一些想法 模块设计 需要明确服务的核心功能 执行时机(被谁驱动) 执行内容 和非核心功能的关系 从模块话的角度看,这三个部分其实都可以独立实现,这样更利于单元测试用例的编写,扎实的单元测试覆盖率大大提高对稳定性的信心。 执行时机一般都是外部驱动,如收到任务、请求甚至内部定时器驱动。 核心功

先有鸡还是先有蛋?这是领域驱动设计落地最大的困局

本文书接上回 《关于领域驱动设计,大家都理解错了》 欢迎关注公众号“老肖想当外语大佬”: https://mp.weixin.qq.com/s/HHJ5vt2_iT0-CFcw0HcPnA 先有鸡还是先有蛋的困局 前文我们提出了“领域驱动设计是一种价值观”这个观点,那么落地领域驱动设计就是践行价值观

可重入锁思想,设计MQ迁移方案

如果你的MQ消息要从Kafka切换到RocketMQ且不停机,怎么做?在让这个MQ消息调用第三方发奖接口,但无幂等字段又怎么处理?今天小傅哥就给大家分享一个关于MQ消息在这样的场景中的处理手段。 这是一种比较特例的场景,需要保证切换的MQ消息不被两端同时消费,并且还需要在一段消费失败后的MQ还可以继

构建高可用性、高性能和可扩展的Zabbix Server架构

简介 本教程讲解了一下如何设计构建一个高性能、高可靠、高扩展的Zabbix 监控集群。 架构图 架构图PDF下载: https://songxwn.com/file/Zabbix_HA.pdf Pigsty 时序数据库集群 Zabbix Server 和 Grafana的数据都是存放在数据库的,而Z

详解Web应用安全系列(3)失效的身份认证

大多数身份和访问管理系统的设计和实现,普遍存在身份认证失效的问题。会话管理是身份验证和访问控制的基础,并且存在于所有有状态的应用程序中。攻击者可以使用指南手册来检测失效的身份认证,但通常会关注密码转储,字典攻击,或者在类似于钓鱼或社会工程攻击之后,发现失效的身份认证。 确认用户的身份,身份验证和会话

表单引擎字段类型该如何设计?

在软件行业的发展过程中,从业者对于开发效率和质量提升是一直在追随的一个目标。通过复用软件模块来实现这些目标通常是一种有效的手段,从头文件引入、面向对象的封装、动态库的引入、代码生成器类工具、低代码引擎等,随着行业技术发展能复用的层次也从底层的文件逐步到界面层面的复用。本文主要围绕在OA、低代码平台中

Primer Premier 6安装使用教程

Primer Premier是一款专业级PCR引物设计工具软件,专为科研及分子生物学实验定制PCR扩增、测序探针及杂交引物。该程序运用尖端演算法评估引物的特异性、二聚体可能性和熔解温度等核心属性,确保产出的引物在性能上精准高效。其用户友好界面不仅简化了引物设计流程,并整合了序列比对与限制性内切酶位点

面试官:你讲下如何设计支持千万级别的短链?

前言 前几天面试遇到的,感觉比较有趣。第一次面试遇到考架构设计相关的题目,挺新奇的,开始向国外大厂靠拢了,比天天问八股文好太多了,工作5年左右的,问八股文,纯纯的不负责任偷懒行为。 感觉此问题比较有趣,这几天简单的实现了一版本,和大家分享一下具体的细节,也欢迎大家交流讨论, 代码github链接 s

前端使用 Konva 实现可视化设计器(16)- 旋转对齐、触摸板操作的优化

这一章解决两个缺陷,一是调整一些快捷键,使得 Mac 触摸板可以正常操作;二是修复一个 Issue,使得即使素材节点即使被旋转之后,也能正常触发磁贴对齐效果,有个小坑需要注意。

『手写Mybatis』实现映射器的注册和使用

前言 如何面对复杂系统的设计? 我们可以把 Spring、MyBatis、Dubbo 这样的大型框架或者一些公司内部的较核心的项目,都可以称为复杂的系统。 这样的工程也不在是初学编程手里的玩具项目,没有所谓的 CRUD,更多时候要面对的都是对系统分层的结构设计和聚合逻辑功能的实现,再通过层层转换进行

前端使用 Konva 实现可视化设计器(15)- 自定义连接点、连接优化

本章将处理一些缺陷的同时,实现支持连接点的自定义,一个节点可以定义多个连接点,最终可以满足类似图元接线的效果。