
架构师
文章平均质量分 90
以架构师认证考试教程为蓝本,据此进行整理。
boonya
资深Java,热衷大数据,Python爬虫,持续探索副业中,有需要的可以加我微信联系:boonya221
展开
-
DB-Engines定期发布最新全球数据库信息汇总和排名
DB-Engines是一项收集和呈现数据库管理系统(DBMS)信息的倡议。除了已建立的关系DBMS之外,还强调了正在发展的NoSQL领域的系统和概念。数据库引擎排名是一个数据库管理系统的列表,根据它们当前的流行程度进行排名。该名单每月更新一次。数据库管理系统概述中显示了许多系统的最重要属性。您可以检查每个系统的属性,并可以并排比较它们。在数据库百科全书中,对这个主题的术语和概念进行了解释。原创 2024-09-02 11:37:08 · 1323 阅读 · 0 评论 -
常用企业技术架构开发速查工具列表
对于Java开发者来说,不光要关注业务代码也要注重架构的修炼。日常用到的工具组件都是我们架构中重要的元素,服务于应用系统。我们应该选择适合应用体量的架构避免过度设计,最简单的方式就是矩阵方式去分析每个组件的适用场景优缺点,从而综合评估做好决策。 程序员大多数时间并不是花在编写代码上,而是研究适合于业务需求的框架和架构环境的推演。AI人工智能的兴起是来帮助我们从代码中解脱出来的,我们要善于利用工具,让工作更简单,更有效率。原创 2024-09-02 10:09:50 · 1659 阅读 · 0 评论 -
微服务之间的最佳调用方式
在微服务架构中,需要调用很多服务才能完成一项功能。服务之间如何互相调用就变成微服务架构中的一个关键问题。服务调用有两种方式,一种是RPC方式,另一种是事件驱动(Event-driven)方式,也就是发消息方式。消息方式是松耦合方式,比紧耦合的RPC方式要优越,但RPC方式如果用在适合的场景也有它的一席之地.耦合的种类:我们总在谈耦合,那么耦合到底意味着什么呢? 时间耦合:客户端和服务端必须同时上线才能工作。发消息时,接受消息队列必须运行,但后台处理程序暂时不工作也不影响。 容量耦...转载 2021-08-05 17:49:40 · 569 阅读 · 0 评论 -
分布式锁Redis、zookeeper、etcd(推荐)怎样抉择?
目录分布式锁定义使用分布式锁的目的基于redis分布式锁基于zookeeper实现的分布式锁redis、zookeeper、etcd实现分布式锁的比较建议选择etcd实现分布式锁转载地址:https://blog.youkuaiyun.com/A_art_xiang/article/details/107362718分布式锁定义分布式环境下,锁定全局唯一资源。请求处理串行化、实际表现为互斥锁。使用分布式锁的目的 交易订单锁定:防止重复下单、解决业务层幂等问题。...转载 2021-05-26 22:57:15 · 2140 阅读 · 0 评论 -
从0到1实战微服务架构
目录读者基础微服务架构梳理https://www.coder4.com/homs_online/读者基础由于篇幅、精力所限,本书无法写成一本”零起点”教程。我假设读者具有至少2年的服务端工作经验,并且了解以下技术或原理:Git Maven & Gradle Docker & k8s Java Spring / Spring Boot 数据库: 如MySQL 消息队列: 如RabbitMQ 缓存系统: 如Memcached 内存数据库: 如Re...原创 2021-04-04 17:57:09 · 1697 阅读 · 4 评论 -
Google Guava Cache高效本地缓存
Guava Cache缓存Guava Cache 是Google Fuava中的一个内存缓存模块,用于将数据缓存到JVM内存中。 提供了get、put封装操作,能够集成数据源 ; 线程安全的缓存,与ConcurrentMap相似,但前者增加了更多的元素失效策略,后者只能显示的移除元素; Guava Cache提供了多种基本的缓存回收方式 监控缓存加载/命中情况通常,Guava缓存适用于以下情况: 愿意花费一些内存来提高速度。 使用场景有时会多...转载 2021-04-04 17:40:18 · 2700 阅读 · 0 评论 -
ELK日志分析系统架构演变
文章转自:https://www.jianshu.com/p/66db4d660d9cELK中文网: https://elasticsearch.cn/背景介绍随着软件行业的发展,软件系统的生产部署结构日趋复杂。对于一个分布式的系统,同一应用通常部署在不同的节点上,通过负载均衡的方式将请求分发到各个不同的节点进行处理。此时就会相对增加生产运维的复杂度,在进行问题查询的时候很难判断本次请求是在哪台机器上执行的,也就无法快速的对日志进行查询从而定位问题,因此,就需要对日志进行统一的处理...转载 2021-04-04 10:25:11 · 516 阅读 · 0 评论 -
DDD领域驱动设计基本理论知识总结
领域驱动设计之领域模型加一个导航,关于如何设计聚合的详细思考,见这篇文章。2004年Eric Evans 发表Domain-Driven Design –Tackling Complexity in the Heart of Software (领域驱动设计),简称Evans DDD。领域驱动设计分为两个阶段:以一种领域专家、设计人员、开发人员都能理解的通用语言作为相互交流的工具,在交流的过程中发现领域概念,然后将这些概念设计成一个领域模型;由领域模型驱动软件设计,用代码来实现该领域模型;转载 2021-03-09 11:59:18 · 1436 阅读 · 1 评论 -
建议使用RPC替代企业应用间通信RESTFul接口服务调用
Restful已经用得太多了,是不是有种被接口压垮的感觉? 接口还没好,您就等着吧。摸鱼抓虾,问兄弟好了没,答还没好,今天啥事儿没干,1,2,3,4,周五好了,你这儿疯狂测试一堆问题,ok周末加加班,这就是常态。RPC是远程过程调用(Remote Procedure Call)的缩写形式。SAP系统RPC调用的原理其实很简单,有一些类似于三层构架的C/S系统,第三方的客户程序通过接口调用SAP内部的标准或自定义函数,获得函数返回的数据进行处理后显示或打印。 RPC主要是解决软件多进程之间的调用问题,而要原创 2021-01-24 23:23:30 · 968 阅读 · 1 评论 -
软件架构设计网页端轮询策略:轮询、长轮询、长连接、websocket
Web端即时通讯技术:即时通讯技术简单的说就是实现这样一种功能:服务器端可以即时地将数据的更新或变化反应到客户端,例如消息即时推送等功能都是通过这种技术实现的。但是在Web中,由于浏览器的限制,实现即时通讯需要借助一些方法。这种限制出现的主要原因是,一般的Web通信都是浏览器先发送请求到服务器,服务器再进行响应完成数据的现实更新。 实现Web端即时通讯的方法:实现即时通讯主要有四种方式,它们分别是轮询、长轮询(comet)、长连接(SSE)、WebSocket。它们大体可以分为两类,一种是在HTTP基转载 2020-11-10 10:10:04 · 654 阅读 · 0 评论 -
PG数据库PipelineDB流式聚合汇总提升系统查询性能
使用PipelineDB统计的方式减少了不少SQL统计查询,程序端只需要根据业务场景进行组装使用就可以了。PG数据库PipelineDB插件以下是几篇有关PipelineDB基础的文章:PostgreSQL PipelineDB插件(C语言)Postgresql PipelineDB 学习研究资料PostgreSQL PipelineDB 理解与统计性能升实践PostgreSQL PipelineDB插件实现数据条数汇总基于上面的方法原来使用触发器增量统计的数据流图已经不适用..原创 2020-10-16 15:57:31 · 570 阅读 · 0 评论 -
为什么并行(Parallel)优于串行(Serial)?
为什么并行优于串行?并行的特点是同一时间可以干别的事情,在系统优化的过程中很常见的一点就是接口请求合并,合并请求内部也要做并行处理,否则时间上优势不大。并行最大的好处就是:可以在同一时间内做不同的业务处理,大大缩短用户的等待时间提升用户体验。以下图为例:代码和思想同样重要,没有思想的代码就是死代码,有了灵魂和思想的代码才是代码层面的提升!...原创 2020-10-10 10:41:35 · 3841 阅读 · 0 评论 -
架构师框图及流程图示例-系统架构-技术体系-测试流程
系统架构系统架构图用于描述各个系统及子系统和组件的关系。技术体系用以描述技术的分层关系和依赖关系。测试上线流程测试上线流程图是用以控制需求开发、测试、上线的整个流程。...原创 2020-09-22 11:54:33 · 1006 阅读 · 0 评论