
系统架构
文章平均质量分 93
编程点滴
这个作者很懒,什么都没留下…
展开
-
Apache-Seata 拯救分布式系统数据一致性的开源神器
Seata是一款开源的分布式事务解决方案,致力于在微服务架构下提供高性能和简单易用的分布式事务服务。它主要用于解决分布式系统中数据一致性的问题。在分布式系统中,一个业务操作可能会涉及多个服务(如订单服务、库存服务、支付服务等),这些服务可能分布在不同的服务器上,使用不同的数据库。Seata就是要保证在这样复杂的环境下,这些服务操作的数据能够保持一致性,就像在单体应用中一样。在一个电商系统中,用户下单购买商品这个操作涉及订单创建、库存扣减和支付处理三个服务。原创 2024-11-02 14:26:51 · 994 阅读 · 0 评论 -
认证授权的设计与实现
每个网站,小到一个H5页面,必有一个登录认证授权模块,常见的认证授权方式有哪些呢?又该如何实现呢?下面我们将来讲解SSO、OAuth等相关知识,并在实践中的应用姿势。原创 2024-10-22 10:37:18 · 713 阅读 · 0 评论 -
Web安全实践
安全无小事,成败在细节,网络有风险,灾难弹指间。安全一般情况下看不见,在你周围漂浮着,显现出来后,往往会刻骨铭心。正因为安全看不见,所以往往不受重视,因为感知到的概率真的太低,用户的第一感知是他看得见、摸得着、嗅得到、品得出的东西,实实在在的东西,而不是那种虚无缥缈的东西,我们对概率低的东西往往默认选择忽略。原创 2024-10-16 09:38:21 · 1233 阅读 · 0 评论 -
剖析 Redis:应对雪崩、穿透和击穿的实战秘籍
用户的数据通常存储在数据库中,而数据库的数据存放在磁盘上。磁盘的读写速度在计算机硬件中可以说是最慢的。如果用户的所有请求都直接访问数据库,当请求数量增多时,数据库很容易崩溃。因此,为了避免用户直接访问数据库,会使用 Redis 作为缓存层。因为 Redis 是内存数据库,我们可以将数据库中的数据缓存在 Redis 里,相当于把数据缓存在内存中。内存的读写速度比硬盘快好几个数量级,这样能大大提高系统性能。引入缓存层后,就会出现缓存异常的三个问题,即缓存雪崩、缓存击穿和缓存穿透。原创 2024-10-07 16:32:07 · 671 阅读 · 0 评论 -
谈一谈 DDD
DDD,全称Domain-Driven Design, 是一种处理复杂领域的设计思想,它试图分离技术实现的复杂性,并围绕业务概念构建领域模型来控制业务的复杂性,以解决软件难以理解,难以演进的问题。它通过边界划分将复杂业务领域简单化,帮我们设计出清晰的领域和应用边界,可以很容易地实现架构演进。DDD将项目的主要焦点放在核心领域和领域逻辑上。基于一个模型进行复杂的设计,在技术和领域专家之间发起创造性的协作,迭代地切割问题的概念性核心。DDD是面向对象的设计思想,是面向对象设计的一种升华。原创 2024-09-23 22:36:38 · 980 阅读 · 0 评论 -
可落地的DDD编码实践(代码结构)
网上那么多DDD的文章,但代码工程却没有一个比较好的例子,本文将手把手跟你一起写DDD代码,学习DDD思想与代码相结合带来的好处。原创 2023-02-21 21:28:35 · 1220 阅读 · 0 评论