深入理解并发编程艺术之内存模型

随着硬件技术的飞速发展,多核处理器已经成为计算设备的标配,这使得开发人员需要掌握并发编程的知识和技巧,以充分发挥多核处理器的潜力。然而并发编程并非易事,它涉及到许多复杂的概念和原理。为了更好地理解并发编程的内在机制,需要深入研究内存模型及其在并发编程中的应用。本文将主要以 Java 内存模型来探讨并 ...阅读全文

设计原则总结

## 目录 - 封装变化 - 针对接口编程,不针对实现编程 - 多用组合(has-a),少用继承(is-a) - 为交互对象之间的松耦合设计而努力 - 最少知识原则 LKP / 迪米特法则 Law of Demeter - 好莱坞原则 - SOLID 原则 - 单一职责原则 SRP - 开放关闭原则 ...阅读全文

消息队列二十年

2020 年我有幸加入腾讯 tdmq 初创团队,当时 tdmq 还正在上云公测阶段,我第一次从一个使用工具的人转变成了开发工具的人, 这个过程使我沉淀了很多消息队列知识与设计艺术。 后来在业务中台的实践中,也频繁地使用到了 MQ,比如最常见的消息推送,异常信息的重试等等, 过程中也对消息队列有了更加 ...阅读全文

JavaWeb和MVC三层架构

# JavaWeb 概述 **网站发布和部署一定要依托技术语言吗:** 不一定,一个网站可以直接发布和部署,因为因为浏览器能够识别网页只需要两样东西,网络和静态页面,还有一个装在他们的容器,比如 nginx。 **静态页面面临的问题:** - 1:静态网页是固定的,是不可变的。如果一个网站比如腾讯首 ...阅读全文

[WIP]业务中台如何实现业务的结果通知

绞尽脑汁生产中... 如下RPC通信场景:业务线向交易中台发起交易。当交易完成后,zhongtai-trans要将交易结果通知给业务线。 那么,在程序实现上,zhongtai-trans如何通知业务线呢? 这个问题暂且不表。我们先来看跨企业通信的业务回调通知。这里,我们以企业对接微信支付来举例。用户 ...阅读全文

业务中台如何实现业务的结果通知

0x01 如下RPC通信场景:业务线向交易中台发起交易。当交易完成后,zhongtai-trans要将交易结果通知给业务线。 那么,在程序实现上,zhongtai-trans如何通知业务线呢? 0x02 这个问题暂且不表。我们先来看跨企业通信的业务回调通知。这里,我们以商户对接微信支付来举例。用户在 ...阅读全文

系统设计蓝图指南

系统设计蓝图指南 我们有时敏捷软件开发过程,系统设计采用一张纸,如下图供参考图例DNS接上面, APP或用户 请求与响应,分页,过期头,Gzip,幂等性设计负载均衡,API网关,访问日志,CDN,服务伸缩,通用扇出服务《系统设计蓝图指南》源文件PDF 在:链接:https://pan.baidu.c ...阅读全文