后端思想-单点登录组件的设计与思考

前言本文仅记录我在配合公司框架以及适配自己设计的门户网站的SSO组件开发历程。由于受到诸多限制,比如公司框架以及开发时间等因素,导致该单点登录组件并不是完整的认证授权鉴权三位一体。但是读者可从我的设计和思考中获得一些启发,本文详细记录了SSO组件五次大的变动,解释了很多疑问,比如SSO是依靠现有的shiro之类的中间件还是自研?兼容和扩展?目前该单点登录组件仍在第五版后继续优化...

聊聊支付流程的设计与实现逻辑

一、业务背景通常在业务体系中,都会或多或少的涉及到支付相关的功能;对于一些经验欠缺同学来说,最紧张的就是面对这类支付结算的逻辑,因为流程中的任何细节问题,都可能引发对账异常的情况; 错误发生之后,再想去修复流程,花费的时间成本又是高昂的,还牵扯错误数据的调平问题,最终很可能引发乱账算不清的结果,然后需要人工介入手动处理; 在支付场景中,不但涉及诸多的复杂业务,结算规则,超长的...

链表设计与Java实现,手写LinkedList这也太清楚了吧!!!

highlight: arduino-light链表设计与实现在谈链表之前,我们先谈谈我们平常编程会遇到的很常见的一个问题。如果在编程的时候,某个变量在后续编程中仍需使用,我们可以用一个局部变量来保存该值,除此之外一个更加常用的方法就是使用容器了。 那什么是容器呢?从字面上来说就是用来装某个东西的,比如我们的杯子,就是容器。在程序设计当中我们最常见的容器就是数组了,他可以存我们...

iOS MVX 设计模式漫谈

由于是漫谈,所以条理性不是很强,一般是想到什么就写下什么,所以如果感觉有一些不顺的情况,敬请见谅! 开场白说到架构,首先要了解什么是架构?架构按照我的理解,是属于一种编程经验的集合和总结,在经过许多人许多年的使用之后,基本稳定下来的一种模式。通常具有以下优点:适用性强,实用性强,可复用,易修改文章将使用登录的场景分别使用 MVC、MVP、MVVM 三种模式做示例,方便进行理解与...

搭建一个通用监控告警平台,架构上需要有哪些设计

大家好,又见面了。 说到监控告警平台,大家应该都不会陌生,对于线上系统而言可以说是个标配,各个公司或项目也都会有搭建自己的监控告警平台的实际诉求。 当前比较主流的监控告警平台实现方案,很多都是基于Prometheus + Grafana + AlertManager来实现的。但是实际使用的时候会发现不易实施: 在运维部署对接方面存在一些不便,接入新的被监控节点时需要到平台部署...

241. 为运算表达式设计优先级 : DFS 运用题

题目描述这是 LeetCode 上的 241. 为运算表达式设计优先级 ,难度为 中等。 Tag : 「DFS」、「爆搜」 给你一个由数字和运算符组成的字符串 expression,按不同优先级组合数字和运算符,计算并返回所有可能组合的结果。你可以 按任意顺序 返回答案。 生成的测试用例满足其对应输出值符合 $32$ 位整数范围,不同结果的数量不超过 $10^4$ 。 示例 1...

实践GoF的23种设计模式:装饰者模式

摘要:装饰者模式通过组合的方式,提供了能够动态地给对象/模块扩展新功能的能力。理论上,只要没有限制,它可以一直把功能叠加下去,具有很高的灵活性。 本文分享自华为云社区《【Go实现】实践GoF的23种设计模式:装饰者模式》,作者: 元闰子。 简介 我们经常会遇到“给现有对象/模块新增功能”的场景,比如 http router 的开发场景下,除了最基础的路由功能之外,我们常常还会加...

设计模式系列详解 -- 单例模式

什么是单例模式? 单例模式是一种创建型设计模式,它能够保证一个类只有一个实例,该单例对象必须由单例类自行创建,并提供一个访问该实例的全局节点。该方法可以创建一个新对象,但如果该对象已经被创建,则返回已有的对象。 例如,Windows中只能打开一个任务管理器,这样可以避免因打开多个任务管理器窗口而造成内存资源的浪费,或出现各个窗口显示内容的不一致等错误。 ...

设计模式之概述篇

1、设计模式的本质 ​ 面向对象设计原则的实际运用,是对类的封装性、继承性和多态性以及类的关联关系和组合关系的充分理解。 2、设计模式的目的 ​ 提高代码可读性、重用性、可靠性、可扩展性,实现“高内聚,低耦合”。 名词解释 可读性:按照规范编程,便于其他程序员阅读和理解 重用性:相同功能的代码,可以重复使用,无需多次编写 可靠性:增加功能时,对原有功能没有影响 可扩展性:增加...

技术管理进阶——管理者如何进行梯队设计及建设

原创不易,求分享、求一键三连 最近有个粉丝问了一个问题: 小钗,我是一个部门负责人,想知道你们具体是如何进行梯队建设的 之前我们聊过,大Leader的工作应该核心围绕五件事展开,最多加一个迫不得已的兜底: 梯队建设的重点就是我们不需要去兜底,他是Leader五件事中的重要模块,一般来说职位到了总监,就要有意识的了解梯队建设的知识,因为在后面的工作,这个对你要做的事情...