架构知识
文章平均质量分 90
架构知识
小霸戈
资深码农,记录学习,分享个人经验
展开
-
学习 DDD - 通用语言的模式
大家好,我是霸戈,这周学习了一些关于领域驱动设计的知识 ,对比较深刻的地方做了不少笔记,分享给大家。 在日常需求讨论的时候,经常会碰到一个需求会议开了一个多小时还没有达成共识。作为业务方(领域专家)明明表达的很清楚,但是开发人员却始终无法理解透彻,很明显的原因就是由于双方的知识体系不一致 ,没有形成一种双方互相都能理解的语言。 语言的鸿沟 虽然领域专家对软件开的技术所知有限,但他们熟悉使用自己的领域术语——可能还具有各种不同的风格。另一方面,开发人员可能会用一些描述性的,功能性的术语来理解和讨论系统,而这原创 2021-12-05 20:37:16 · 360 阅读 · 0 评论 -
学习 DDD 之消化知识
接触到DDD到现在已经有8个月份了,目前所维护的项目也是基于DDD的思想开发的,从一开始的无从下手,到现在游刃有余,学到不少东西,但是都是一些关键字和零散的知识,同时我也感受到了是因为我对项目越来越熟悉,熟能生巧导致我现在在做需求的时候根本不用过多的去思考,就能很好的完成业务需求,我慢慢的意识到,学习DDD是非常有必要的。 在传统的开发模式中,产品经理在跟业务专家沟通业务需求后,对其进行抽象并将结果通过口头或者项目管理工具传达到开发人员,开发人员根据产品经理传递的业务需求机械式地进行功能开发,这样的模式使开原创 2021-11-28 11:33:53 · 237 阅读 · 0 评论 -
“淘宝” 开放平台接口设计思路
最近对接的开放平台有点多,像淘宝、京东、快手、抖音等电商平台的开放平台基本对接了个遍,什么是CRUD BODY也许就是这样的吧!!! 虽然对接各大开放平台没啥技术含量,但咱也得学点东西不是,不能白对接哈!经过这几天的整理,脑子里大概有了个开放平台接口的设计套路,故整理成文章方便有需要的时间去实现自己的开放平台接口。 开放平台比较关注的几个点: 易用性:接口设计要简洁,请求参数要见名知意,使服务商能快速接收,为用户提供服务 安全性:开放平台接口是暴露在外网,必须保证用户数据的安全 稳定性:开放平台接口是给上原创 2021-09-25 18:57:04 · 313 阅读 · 0 评论 -
高级程序员必知的 7 种软件架构模式!
做者:Trung Anh Dangweb 策划:万佳数据库 架构模式是对给定上下文的软件架构中常见问题的一种通用的可复用的解决方案。 一种模式就是特定上下文的问题的一种解决方案。 然而,不少开发者至今还对各类软件架构模式之间的差异搞不清,甚至对其所知甚少。 大致上,主要有下面这7种架构模式: 分层架构编程 多层架构浏览器 管道 - 过滤器架构服务器 客户端 - 服务器架构微信 模型 - 视图 - 控制器架构网络 事件驱动架...转载 2021-03-10 20:53:15 · 346 阅读 · 0 评论 -
关于 TCP/IP,必知必会的十个问题
来源:https://juejin.im/post/6844903490595061767 标题:tcp-ip 作者:Ruheng 本文整理了一些TCP/IP协议簇中需要必知必会的十大问题,既是面试高频问题,又是程序员必备基础素养。 TCP/IP十个问题 一、TCP/IP模型 TCP/IP协议模型(Transmission Control Protocol/Internet Protocol),包含了一系列构成互联网基础的网络协议,是Internet的核心协议。 基于TCP/IP的参考模型将协议分成四.转载 2020-10-31 09:01:58 · 141 阅读 · 1 评论 -
这次一定让你记住 TCP 三次握手、四手挥手!
TCP协议全称为:Transmission Control Protocol,是一种面向链接、保证数据传输安全、可靠的数据传输协议。为了确保数据的可靠传输,不仅需要对发出的每个字节进行编号确认,还需要验证每一个数据包的有效性。每个TCP数据包是封闭在IP包中的,每个一IP包的后面紧跟着的是TCP头,TCP报文格式如下: 源端口和目的端口字段 TCP源端口(Source Port):源计算机上的应用程序的端口号,占 16 位。 TCP目的端口(Destination Port):目标计算机的应用程序端口号原创 2020-10-12 20:58:01 · 178 阅读 · 0 评论 -
利用 ShardingSphere-JDBC 实现分库分表实践
来源:https://www.cnblogs.com/wingsless/p/11406481.html 作者:wingsless 利用ShardingSphere-JDBC实现分库分表 1. ShardingSphere概述 1.1 概述 业务发展到一定程度,分库分表是一种必然的要求,分库可以实现资源隔离,分表则可以降低单表数据量,提高访问效率。 分库分表的技术方案,很久以来都有两种理念: ...转载 2020-04-22 08:16:05 · 714 阅读 · 0 评论 -
SaaS(软件即服务) 的架构设计,是什么样子的
来源:https://juejin.im/post/5cf45fc151882502f9490639 作者:谭朝红 1、介绍 从计算机诞生开始,就伴随着计算机应用程序的演变。简短的回顾历史,我们可以清楚的看到应用程序发生的巨大变化。上世纪70年代中期,随着个人PC机的爆炸式增长以及程序员的崛起,让计算机的计算能力得到了大跨越的提升,个人PC机上可以运行非常复杂的应用程序。 进入上世纪80年代,...转载 2020-03-29 10:40:58 · 567 阅读 · 0 评论 -
百万级商品数据实时同步,查询结果秒出
微微科技技术团队(Kevin) https://juejin.im/post/5e6989faf265da5756326908 前阵子老板安排了一个新任务,要建设一个商家商品搜索系统,能够为用户提供快速、准确的搜索能力,在用户输入搜索内容时,要能从商家名称和商品名称两个维度去搜索,搜索出来的结果,按照准确率排序,并按商家所属商品的关联关系,来组合数据结构,同时提供API给业务系统调用。 背景很...转载 2020-03-21 22:52:30 · 513 阅读 · 0 评论 -
基于 RBAC 的大型网站权限管理系统设计思路
作者:不哼不哈 博客园:cnblogs.com/myindex/p/9116177.html 我们比较常见的就是基于角色的访问控制,用户通过角色与权限进行关联。简单地说,一个用户拥有多个角色,一个角色拥有多个权限。这样,就构造成“用户-角色-权限”的授权模型。在这种模型中,用户与角色之间、角色与权限之间,通常都是多对多的关系。如下图: 基于这个,得先了解角色到底是什么?我们可以理解它为一定数...转载 2020-03-19 09:45:20 · 442 阅读 · 0 评论 -
云计算的中的 Iaas、Paas、Saas 之间有什么区别!
产品经理大熊 https://www.jianshu.com/p/e3a32258db05 浏览招聘信息的时候我曾看到过SAAS,但不知道什么意思?工作中也有同事说他女朋友做PAAS产品,当时我一脸茫然。所以特地了解下这几个词汇的区别。 用户通过Internet可以从完善的计算机基础设施获得服务。这类服务可以称为基础设施即服务,这就是通常所说的IAAS。而相应的另外两种服务就是平台即服务和软件...转载 2020-03-03 09:30:57 · 387 阅读 · 0 评论 -
分布式事务之 RocketMQ 事务消息详解
张申傲 https://blog.csdn.net/weixin_34452850/article/details/88851419 事务消息是RocketMQ提供的非常重要的一个特性,在4.x版本之后开源,可以利用事务消息轻松地实现分布式事务。本文对RocketMQ的事务消息进行详细介绍,并给出了代码示例。 一. 相关概念 RocketMQ在其消息定义的基础上,对事务消息扩展了两个相关的概念...转载 2020-02-24 10:04:56 · 183 阅读 · 0 评论 -
Nginx 高可用集群解决方案 Nginx + Keepalived
10pcm https://blog.51cto.com/superpcm/2095395 1. Keepalived高可用软件 Keepalived软件起初是专为LVS负载均衡软件设计的,用来管理并监控LVS集群系统中各个服务节点的状态,后来又加入了可以实现高可用的VRRP功能。因此,keepalived除了能够管理LVS软件外,还可以作为其他服务的高可用解决方案软件。 keepalived...转载 2020-02-23 10:29:07 · 318 阅读 · 0 评论 -
使用 Spring Cloud 和 Docker 轻松构建微服务架构!
原文:https://dzone.com/articles/microservice-architecture-with-spring-cloud-and-do 作者:Alexander Lukyanchikov 译者:Oopsguy 【编者的话】如何使用Spring Boot、Spring Cloud、Docker和Netflix的一些开源工具来构建一个微服务架构。本文通过使用Spring ...转载 2020-02-21 13:05:18 · 179 阅读 · 0 评论 -
每小时百万推送量的多终端、多通道推送系统架构如何设计?
推送通知是让用户立即接收到事件的一个非常有效的工具。在 Gojek,我们每天需要处理 300 多万个订单,跨 20 多款产品。 可以想象的是,我们每天推送的通知数量有多大——大概每小时 1 百万个。这篇文章将介绍我们在处理如此体量的推送通知时所面临的挑战,以及我们的解决方案。 体量大还只是其中的一个方面,在 Gojek,我们还需要面对一些独有的问题。 多个应用程序 Gojek 不只有一个 App,...转载 2019-12-24 09:34:58 · 590 阅读 · 0 评论 -
再小的应用也有架构,面向架构新手的架构实践!
文章主人公:小明,就职于某互联网公司,从事后端开发工作。最近小明收到通知公司需要开发一款《证件照》应用,需要征集架构方案,主要功能包括: 小明虽然从事后端开发工作,但是一直很关注架构这方面的知识,以往都是开发大佬们架构好的应用现在有机会自己去实践下,打算把自己学到的知识应用于实际案例中来。 小明的脑海里是回想了下架构的基本三原则: 合适优于业界领先 简单优于复杂 ...原创 2019-11-08 09:32:41 · 81 阅读 · 0 评论 -
我花10个小时,写出了小白也能看懂的阿里数据中台分析
作者:数据分析不是个事儿 https://www.jianshu.com/p/05a8db84e454 数据中台被誉为大数据的下一站,由阿里兴起,核心思想是数据共享,2015年阿里提出“大中台,小前台”的策略。2018 年因为“腾讯数据中台论”,中台再度成为了人们谈论的焦点。 2019年,似乎人人都在提数据中台,但却不是所有人都清楚数据中台到底意味着什么。数据中台是只有大厂才需要考虑的高大上的...转载 2019-12-12 17:51:22 · 199 阅读 · 0 评论 -
5 分钟快速学习,缓存一致性优化方案!
缓存操作 读缓存 读缓存可以分为两种情况命中(cache hit)和未命中(cache miss): 缓存命中 首先从缓存中获取数据 将缓存中的数据返回 ##### 缓存未命中 首先从缓存中获取数据 此时缓存未命中,从数据库获取数据 将数据写入缓存 返回数据 读缓存的的处理由缓存中有没有数据? 决定,如果缓存中有数据那就是缓存命中,如果没有那就是缓存未命中: 写缓...原创 2019-12-09 11:01:46 · 847 阅读 · 0 评论