- 博客(83)
- 收藏
- 关注
原创 论软件设计模式及其应用
2023年 3 月,我所在的公司承接了某油企智慧加油站平台的建设工作。该项目旨在帮助加油站提升运营效率、降低运营成本和提高销售额。我在该项目中担任系统架构设计师,负责整个系统的架构设计工作。本文以该项目为例,详细论述了软件设计模式在支付场景中的具体应用。在支付场景中,我们用到的设计模式主要包括策略模式、模板方法模式和代理模式。我们运用策略模式实现了对多种支付方式的支持和灵活替换,提升了顾客支付的便利性;运用模板方法模式实现了支付处理流程的标准化,降低了支付出错的风险;
2025-05-13 23:27:01
1012
原创 软件架构师知识点总结
系统开发(开发方法/模型、需求分析、测试等);系统可靠性、安全性、容错技术等;企业应用集成、企业集成平台、企业集成架构;数据库(基本也是架构案例分析必考的题目)、项目管理。5. 软件设计方法;6. 软件系统测试.论企业应用系统的分层架构风格。论数据访问层设计技术及其应用。论微服务架构及其应用。
2025-05-11 23:42:53
378
原创 软件架构师案例知识点总结
组合或组成【有共同生命周期,整体不存在,部分也不存在】:大脑和人;泛化:大一、二、三、四学生和学生。这三个关系是用例图特有的;答案:A、C、D.对象建模是对象图。注明:图中聚集是聚合,是空心图的。3.uml图分为动态图、静态图。2.4种类型6种关系(重要)4.5通信图【消息有序号】4.6状态图【重要】
2025-05-08 02:22:27
193
原创 论微服务架构及其应用
2023 年 3 月,我所在的公司承接了某油企智慧加油站平台的建设工作。该项目旨在帮助加油站提升运营效率、降低运营成本和提高销售额。我在该项目中担任系统架构设计师,负责整个系统的架构设计工作。本文结合我在该项目中的实践,讨论微服务架构在该项目中的具体应用。在该项目中,微服务架构的实施主要经历了设计、实现、演化三个阶段,在设计阶段,我们主要从功能维度和质量属性维度来划分微服务,确保服务的高内聚和低耦合;在实现阶段,我们采用了Spring Cloud Alibaba作为微服务框架,简化了微服务的开发;
2025-04-22 00:57:39
985
原创 论数据访问层设计技术及其应用
2023 年 3 月,我所在的公司承接了某油企智慧加油站平台的建设工作。该项目旨在帮助加油站提升运营效率、降低运营成本和提高销售额。我在该项目中担任系统架构设计师,负责整个项目的架构设计工作。本文结合我的实践,详细论述了数据访问层设计技术在该项目中的具体应用。在该项目中,良好的数据访问层设计至关重要,我们主要采用了工厂方法设计模式和数据库连接池两种技术,其中采用工厂方法设计模式灵活应对交易数据的快速增长,采用数据库连接池来保障交易的高效处理。通过以上技术的运用,我们提高了数据访问的灵活性和性能。
2025-04-21 01:04:15
662
原创 论企业应用系统的分层架构风格
通过层次化架构的运用,我们有效地控制了系统的复杂度,实现了业务复杂度和技术复杂度的关注点分离,提高了系统的可维护性和可扩展性。最终,经过10个月的研发,该项目于2023年12月完成并交付上线,至今运行稳定,各项功能和性能指标均达到客户要求,得到了客户和各级领导的一致好评。虽然项目取得了成功,但我们也看到了一些不足之处,其中需求频繁变更导致项目团队经常加班是比较突出的问题。针对这个问题,我们采取了以下两个措施:一是规范需求变更流程,提升变更成本,以避免过度的需求变更;
2025-04-21 00:41:51
711
原创 论软件系统架构评估
首先由作为架构设计师的我向评估小组成员介绍ATAM方法,它是一种基于场景的架构评估方法,根据质量属性效用树对系统进行评价,确定敏感点、权衡点、风险点,检查各自的非功能性需求是否满足需求。其次描述了系统将采用面向服务的架构SOA,主要拆分为数据采集服务、设施监控服务、容量管理服务、资产管理服务等,数据采集服务负责采集基础设施指标数据,并实时上报,其他设施监控等服务负责对数据分析处理,实现智能化管理。
2025-04-17 00:55:15
750
原创 论软件系统架构风格
本文将主要阐述项目中主要应用的三种架构风格,其中包括解释器架构风格、隐式调用风格、B/S架构设计风格,这些架构风格非常适合解决不同层次的问题域。独立构件风格包括进程通讯风格与隐式调用风格,进程通讯风格强调构件间通过连接件进行通讯,而隐式调用风格支持通过消息订阅和发布触发监听监控和信息交互,独立构件风格的应用能够较大的减低系统耦合度,提高架构的可修改性,B/S架构风格是基于浏览器和服务器的软件架构,它主要使用http协议进行通信和交互,极大的简化客户端的工作,客户终端极易推广和维护.【过渡点题】
2025-04-17 00:32:04
831
转载 不同局域网下的Socket通信(配置)
参考:01、处于不同局域网下的Socket通信(配置)_猪猪的博客-CSDN博客_socket编程怎么跨局域网通信
2024-04-29 14:30:44
1375
原创 java: 错误: 不支持发行版本 5
排查完所有的IDEA设置后,代码仍然报错不支持的发行版5,是因为pom文件默认是jdk1.5,所以需要标明是哪个jdk版本。pom.xml文件加入properties,注明jdk版本号<properties> <maven.compiler.source>11</maven.compiler.source> <maven.compiler.target>11</maven.compiler.target>
2024-04-29 14:29:32
3773
原创 一文搞懂“支付与收单”
支付、收单。指收单机构与特约商户签订银行卡受理协议,在特约商户按约定受理银行卡并与持卡人达成交易底,为特约商户提供交易资金结算服务的行为。
2024-04-20 23:55:46
4371
1
原创 Springboot使用教程
name: “zhangsan \n lisi”:输出; name: ‘zhangsan \n lisi’:输出; YAML isn’t Markup Language:不是一个标记语言;k:(空格)v:表示一对键值对(空格必须有); YAML:以数据为中心,比json、xml等更适合做配置文件;SpringBoot使用一个全局的配置文件,配置文件名是固定的;只要是左对齐的一列数据,都是同一个层级的。 k: v:在下一行来写对象的属性和值的关系; 以前的配置文件; k: v:字面直接来写;
2024-04-08 23:15:39
786
原创 银行业务知识
2.客户账号:一个卡号在银行的内部账中对会对应几个账号,做为记账的依据。是用于银行之间的资金往来,如资金划拨和结算,而相互开立的往来账户,一般称为跨系统资金划拨,其核算以“同业往来”科目往来账户清算。支付账户是作为商户与客户之间直接资金流动的中间者,而银行账户是直接客户与商户之间直接的资金流动。3.客户编号(客户号):这个是由对应的身份证号产生的,为客户分配的一个。是由支付机构为客户开立,主要用于电子商务交易的收付款结算的账户。是客户在银行开立的存款账户、贷款账户、往来账户的总称。日切一般是指柜面轧帐。
2024-01-24 05:00:00
6563
原创 机器学习-特征工程
1.1 什么是特征数值特征(连续特征)、文本特征(离散特征)1.2 特征的种类1.3 特征工程特征是机器学习可疑直接使用的,模型和特征之间是一个循环过程;实际上特征工程就是将原始数据处理成机器学习可以直接使用数据的过程;特征工程,降噪、将特征转化为数字,更好构建数学模型。
2023-10-31 00:52:00
670
原创 Redis面试题总结
持久化就是把内存的数据写到磁盘中去,防止服务宕机了内存数据丢失。缓存雪崩是指缓存同一时间大面积的过期(失效)或者redis服务器宕机,所以,后面的请求都会落到数据库上,造成数据库短时间内承受大量请求而崩掉。
2023-01-03 17:22:57
444
原创 java多线程总结
如果你的代码在多线程下执行和在单线程下执行永远都能获得一样的结果,那么你的代码就是线程安全的。【回答】这里可以举例说明不安全的一个实例,就是多线程处理共享数据比如仅剩一张票时,多线程操作会造成重复卖票情况。也就是说在多线程环境中,能够正确地处理多个线程之间的共享变量,使程序功能正确完成。
2022-10-27 01:35:54
330
原创 RabbitMQ总结
RabbitMQ 是一个消息中间件,负责接收、存储、转发消息。类似生活中的快递站,负责接受快递,存储快递,转发快递。生产者:负责产生数据接收来自生产者的消息,并将消息推送到队列中。决定消息是要推送给特定队列,还是推送给多个队列,还是丢弃。队列:存储消息。消费者:接收消息。在上节的死信队列案例中有一种情况是消息 TTL 过期,从而消息进入死信队列的过程。这种过程单独列出来就叫做延迟队列。延迟队列:延时队列就是用来存放需要在指定时间被处理的元素的队列。
2022-09-28 14:43:00
458
原创 Oracle、MySQL等数据库对比
②Oracle数据库的应用场景:大都集中于一些大型企业,一些传统行业的数据化业务中,比如:银行、金融这一类,对于可用性,安全性,健壮性,实时性要求极高的业务。①Oracle:大型数据库软件,收费,支撑体系完善,强大,安全性高(适用于服务器比较强大的单节点或者集群环境)②Mysql数据库的应用场景:大都集中于互联网方向,因为免费,安装使用简便快捷,深受广大互联网公司的喜爱。①Mysql是一个自动增长的数据类型,插入数据时候,不需要管理,它自己会自动增长。①Oracle默认不自动提交,需要用户手动提交。
2022-09-26 22:27:06
1185
原创 Spring Cloud
在服务治理框架中,通常都会构建一个注册中心,每个服务单元向注册中心注册,同时还需要以心跳检测的方式去监测清单中的服务是否可用,若不可用需要从服务清单中剔除,以达到排除故障服务的效果。:服务注册中心在启动时会创建一个定时任务,默认每隔一段时间 (默认为60秒)将当前清单中超时(默认为90秒)没有续约的服务剔除。当一个服务未按时进行心跳续约时,Eureka会统计最近15分钟心跳失败的服 务实例的比例是否超过了85%,当EurekaServer节点在短时间内丢失过多客户端(可能发生了网络分区故障)。
2022-09-26 16:25:45
259
原创 Spring 的 IOC 和 AOP
控制反转解释:控制:指的是对象创建(实例化、管理)的权利反转:控制权交给外部环境了(spring框架、IoC容器)与传统开发方式相比在IOC的思想开发方式下,当类A需要以来类B时,我们不要自己去new对象了,而是由IOC容器帮我们实例化对象并且去管理它,我们需要什么对象直接从IOC容器中获取即可,由此我们可以省去创建和管理对象的一系列事情,也丧失了创建、管理对象的权力。
2022-09-25 00:47:01
488
原创 眼底相机系统设计
最常见的眼科疾病有眼睑炎症、结膜炎、白内障、青光眼等,除外观表征的眼科类病变,视网膜的毛细血管病变可早期诊断高血压、糖尿病、血栓等疾病。
2022-09-18 17:10:58
2835
原创 深度学习方法在糖尿病视网膜病变诊断中的应用
DR 是糖尿病 (Diabetes mellitus, DM) 的重要并发症之一, 调查显示, 其中约 1/3 的糖尿病患 者将发生 DR, 近 10% 的 DM 患者将发生威胁视力 的视网膜病变 (Vision-threatening diabetic retinopathy, VTDR),已成为全球工作人群失明人数攀升的主要原因. 由于 DR 检查量增 加, 在诊断方面出现了以下问题:1) 大量的阅片任 务, 给医生带来了极大的工作压力;2) 医生阅片速 度慢, 患者也无法得到即时的反馈;
2022-09-18 15:14:02
2913
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人