首页 文章 精选 留言 我的

精选列表

搜索[解决方案],共10002篇文章
优秀的个人博客,低调大师

JEESZ-SSO解决方案

第一节:单点登录简介 第一步:了解单点登录 SSO主要特点是: SSO应用之间使用Web协议(如HTTPS),并且只有一个登录入口. SSO的体系中有下面三种角色: 1) User(多个) 2) Web应用(多个) 3) SSO认证中心(一个) SSO实现包含以下三个原则: 1)所有的登录都在SSO认证中心进行。 2) SSO认证中心通过一些方法来告诉Web应用当前访问用户究竟是不是通过认证的用户. 3) SSO认证中心和所有的Web应用建立一种信任关系. CAS的基本原理CAS(Central Authentication Service)是Yale耶鲁大学发起的构建Web SSO的Java开源项目。 1.CAS术语解释: SSO-Single Sign On单点登录 TGT-Ticket Granting Ticket用户身份认证凭证票据 ST-Service Ticket服务许可凭证票据 TGC-Ticket Granting Cookie存放用户身份认证凭证票据的cookie. 第二步:了解单点登录体系结构 1)CAS Server负责完成对用户信息的认证,需要单独部署,CAS Server会处理用户名/密码等凭证(Credentials). 2)CAS Client部署在客户端,当有对本地Web应用受保护资源的访问请求,并且需要对请求方进行身份认证,重定向到CAS Server进行认证. 第三步:单点登录环境准备工作 1)cas-server-3.5.0-release.zip(CAS服务端) 2)cas-client-3.3.3-release.zip(CAS客户端) 3)apache-tomcat-7.0.40 4)cas-client-core-3.2.1.jar 5)cas-server-core-3.5.0.jar 6)cas-server-support-jdbc-3.5.0.jar 第二节:单点登录环境搭建与部署 第一步:环境部署 1.通过Java JDK生成证书三部曲 证书对于实现此单点登录非常之重要,证书是服务器端和客户端安全通信的凭证,本教程只是演示,所有用了JDK自带的证书生成工具keytool。 当然在实际项目中你可以到专门的证书认证中心购买证书。 使用JDK自带的keytool生成证书 第一步生成证书: keytool -genkey -alias mycacerts -keyalg RSA -keystore C:/common/keys/keycard 注意:输入相关信息用于生成证书.其中名字与姓氏这一最好写你的域名,如果在单击测试你可以在C:WindowsSystem32driversetchosts文件中映射一个虚拟域名, 注意不要写IP。 第二步导出证书: keytool -export -file C:/common/keys/keycard.crt -alias mycacerts -keystoreC:/common/keys/keycard 第三步导入到JDK安装目录证书: keytool -import -keystore C:/"ProgramFiles"/Java/jdk1.6.0_32/jre/lib/security/cacerts -fileC:/common/keys/keycard.crt -alias mycacerts 2.解压cas-server-3.5.0-release.zip文件, 在cas-server-3.5.0-releasecas-server-3.5.0modules目录下找到cas-server-webapp-3.5.0.war文件并命名为cas.war,并复制到在Tomcat根目录的webapps目录下, 如下图: 3.修改host文件(C:WindowsSystem32driversetc)hosts文件中添加添加以下配置 127.0.0.1jeesz.cn (配置自己的域名.) 注意:如果想在一台PC机上模拟这个单点登录,就必须域名重定向,如果是多台PC机,可以不配置此项,下文有用到fast-web.cn,可以用相应PC机的IP代替 4.修改Tomcat文件下的server.xml(apache-tomcat-7.0.40confserver.xml)添加以下内容: 在server.xml文件中把 maxThreads="150" scheme="https"secure="true" clientAuth="false" sslProtocol="TLS" /> 修改成如下: port="8443" protocol="org.apache.coyote.http11.Http11Protocol" maxThreads="150" SSLEnabled="true" scheme="https" secure="true" clientAuth="false" sslProtocol="TLS" keystoreFile="C:/common/keys/keycard" keystorePass="xxxxxx " ciphers="TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256,TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384,TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA,TLS_RSA_WITH_AES_128_CBC_SHA256,TLS_RSA_WITH_AES_128_CBC_SHA,TLS_RSA_WITH_AES_256_CBC_SHA256,TLS_RSA_WITH_AES_256_CBC_SHA" /> 5.启动Tomcat服务,查看信息,(如果有报错,可以根据信息查找错误),打开浏览器,输入jeesz.cn:8080/cas如果出现以下界面,则代表CAS服务端配置成功。 注:这个是最简单的CAS服务,只要输入的用户名跟密码一样,就可以正常登陆,在我们实际开发中,这个验证因为跟数据库作比较,接下来,我们就配置数据库校验。 第二步:配置数据库验证 1.在apache-tomcat-7.0.2webappscasWEB-INF目录下找到deployerConfigContext.xml文件 这里sql属性是从user表中根据cas登陆名查找密码--> 2.增加数据源dataSource, 在deployerConfigContext.xml,(跟上面同一个文件)找到 ,在下面添加如下代码: com.mysql.jdbc.Driver jdbc:mysql://127.0.0.1:3306/sso根据自己的数据库URL地址--> root根据自己的数据库用户名--> 根据自己的数据库密码--> 3.数据库添加用户表及数据(这里用的mysql),比如在mysql数据库中有t_user表 4.增加jar包,cas-client-core-3.2.1.jar、cas-server-core-3.5.0.jar、cas-server-support-jdbc-3.5.0.jar包拷贝到apache-tomcat-7.0.2webappscasWEB-INFlib目录下。 5.重启Tomcat,打开浏览器,输入jeesz.cn:8080/,输入数据库里的用户名和密码,如果出现如下界面,则配置成功。 现在我们的CAS服务端已经配置好了,接下来,我们配置客户端 第二节:配置自己的Web工程(客户端) 1.在host文件下,添加如下代码: 127.0.0.1www.sso1.com 127.0.0.1 www.sso2.com 注意:这个网址最好不要用互联网已经存在的域名,否则你将无法访问该地址。 如果想在一台PC机上模拟这个单点登录,就必须域名重定向,如果是多台PC机,可以不配置此项,下文有用到www.sso1.com,www.sso2.com,可以用相应PC机的IP代替 1.在Tomcat根目录下创建一个sso1,sso2目录。如下如: 2在eclipse新建两个web工程,分别为sso1,sso2。 3在自己的Web工程里加入cas-client-core.jar,commons-logging-1.1.jar,(解压cas-client-3.2.0-release.zip,在cas-client-3.2.0-release.zipcas-client-3.2.0modules,找到该JAR包)分别加入到sso1,sso2工程的lib里。

优秀的个人博客,低调大师

MOBA类游戏解决方案

一、行业综述 MOBA是英文Multiplayer Online Battle Arena Games的缩写,意为多人联机在线游戏竞技。2003年,暴雪发布发布实时RTS游戏《魔兽争霸》,在这款游戏中,玩家可以自定义地图,其中的Dota地图可以说是如今MOBA游戏最相像的原型。 2015年,行业排名第一的Moba游戏 英雄联盟 (又名LOL)营业额达16.7亿美元,月平均活跃人数超过1亿用户,排名第二的Moba游戏《Dota2》年收入达3亿美金。 随着LOL和《Dota2》的火爆,其他游戏厂商也不甘寂寞,Moba类游戏如雨后春笋般一夜之间布满网游届比较有代表性的有《风暴英雄》《超神英雄》《自由之战》《神之浩劫》等。 与此同时,基于MOBA游戏的线下电子竞技赛事开始火爆。国内以虎牙直播、斗鱼TV为代表的游戏直播平台也被推上了风口浪尖。 (20

优秀的个人博客,低调大师

MySQL主从延迟解决方案

最近一段时间内,无论在博客评论还是私信里,技术老铁们都对老张写的博客表示认可和支持,我很欣慰!从业多年就希望有一天能把自己学过的东西,遇到的问题,分享出来!我们大家一起进步! 今儿打算给大家分享的是如何解决MySQL主从延迟的问题,这个也是一些同学在生产中面临的比较棘手的问题, 经常给我打电话或者微信,说张老师,现在监控主从之间的延迟特别大。怎么办啊?!有什么办法可以避免延迟嘛?! 面对抛出这样的问题,我们先来了解下生产中有哪些主从架构?线上生产环境一般有一主一从,一主多从,多主一丛(级联复制,MySQL5.7之后才有) ,主主复制。主从架构存在目的就是为了故障切换和读写分离。它的原理如下图: 主服务器有一个工作线程 io dump thread 从服务器有两个工作线程,一个是io thread,一个sql thread。 主库把外界接收的SQL请求,记录到自己的binlog日志里面,从库的 io thread去请求主库 的binlog日志,并将得到的binlog日志写到自己的relay log(中继日志) 文件中;主库通过io dump thread,给从库 io thread 传binlog 日志。 大家可以看到在主库上事务的提交是并发模式的,而从库只有一个sql thread 工作,这种不公平的待遇,你说它能不延迟嘛。 剖析其重要的延迟原因在于: 1. 首先就是主库可以并发写入,从库只能通过单sql thread完成任务(MySQL5.7之前) 2. MySQL主从之间的同步,本来就不是时时同步的,是异步的同步,也就是说,主库提交事务之后,从库才再来执行一遍。 3. 在主库上对没有索引大表的列进行delete或者update的操作 4. 从库的硬件配置没有主库的好,经常忽略从库的重要性 5. 网络问题 解决方法如下: 1. 使用MySQL5.7版本,在5.7中引入了基于组提交的并行复制,设置参数slave_parallel_workers>0 和slave_parallel_type='LOGICAL_CLOCK'。 MySQL 5.7才可称为真正的并行复制,这其中最为主要的原因就是slave服务器的回放与主机是一致的。就是说主服务器上是怎么并行执行的,从库上就怎样进行并行回放。不再有MySQL5.6版本中库的并行复制限制。 2. 可以采用percona公司的percona-xtradb-cluster简称PXC架构,这种架构下可以实现多节点写入,达到时时同步。可参考老张的MySQL高可用架构三部曲之PXC。 链接地址:http://sumongodb.blog.51cto.com/4979448/1956086 3. 业务初期规划的时候,就要选择合适的分库、分表策略,避免单表,或者单库过大。带来额外的复制压力。从而带来主从延迟的问题。 4. 避免一些无用的IO消耗,可以上高转速的磁盘,SSD或者PCIE-SSD设备。 5. 阵列级别要选择RAID10,raid cache策略要使用WB坚决不要WT。 6. IO调度要选择deadline模式。 7. 适当调整buffer pool的大小 8. 避免让数据库进行各种大量运算,要记住数据库只是用来存储数据的,让应用端多分担些压力,或者可以通过缓存来完成。 目前能想到就这些,还望大家一起丰富解决办法。马上就要从夏季进入秋季了,在这个收获的季节,希望各位老铁,每天都能收获属于自己的那份技术带给你的快乐!

优秀的个人博客,低调大师

巡检分析智能体解决方案

--基于L4级全自治运维体系深度重构 本方案以企业核心大模型为底座,融合OpenClaw多智能体自治框架与Hermes深度推理引擎,面向云原生、分布式、微服务架构下的巡检痛点,构建具备全域感知、深度推理、自主决策、闭环自愈、持续进化的L4级全自治巡检分析智能体体系,实现运维巡检从“人工抽样、被动响应”向“全域覆盖、主动预防、无人自治”的代际升级。 一、现状与痛点:传统巡检已成为稳定性瓶颈 在云原生与微服务规模化落地背景下,传统人工/半自动化巡检模式面临效率、覆盖、深度、闭环四大不可逾越瓶颈: 1. 人力成本高、覆盖不全、隐患漏检 海量异构资源(IaaS/PaaS/SaaS)依赖人工巡检,只能抽样、低频、浅层核查,隐性隐患(内存泄漏、配置漂移、连接缓慢增长、指标渐变劣化) 无法被发现,最终演变为线上故障。 2. 数据孤岛严重,无法全局诊断 监控、日志、CMDB、链路追踪、业务指标分散割裂,无统一语义与关联分析,人工跨平台核对效率低、易误判,无法形成系统健康度全局画像。 3. 分析深度不足,只“发现”不“诊断” 传统巡检停留在阈值越界判断,缺乏根因推理、关联传导、趋势推演能力,异常定位依赖专家经验,难以应对复杂链路与渐进式风险。 4. 无闭环机制,巡检与处置脱节 巡检报告人工流转、人工处置、人工验证,发现—分析—派单—执行—复盘链条断裂,隐患整改滞后、重复问题频发。 5. 知识无法沉淀,依赖个人经验 专家经验无法产品化、规则化、模型化,人员变动导致能力断层,巡检标准不统一、质量不可控。 二、总体设计理念与架构定位 核心定位 打造企业级自治巡检中枢,以“标准统一、全域感知、深度分析、预测预警、自动闭环、持续进化”为目标,构建L4级全自治能力: L1:辅助提示 L2:半自动执行 L3:可信自治(人在回路) L4:全流程无人闭环、自主进化 设计理念 模型驱动:以大模型+推理引擎实现深度诊断与决策 智能体协同:OpenClaw实现多智能体分工、调度、联动、自愈 数据统一:MCP协议打通全域数据,构建统一运维数据视图 闭环自治:巡检→分析→预警→派单→处置→验证→复盘全自动化 持续进化:知识沉淀→规则迭代→模型优化→能力自生长 总体技术架构 1. 数据接入层:MCP协议对接监控、日志、CMDB、APM、配置平台等 2. 智能体层:巡检执行智能体、指标解析智能体、关联分析智能体、预测推理智能体、处置调度智能体、复盘进化智能体 3. 引擎层:Hermes深度推理引擎、时序预测引擎、反事实推理引擎、知识图谱引擎 4. 协同框架:OpenClaw多智能体调度、任务编排、权限控制、操作审计 5. 应用层:标准化巡检、健康度评估、隐患预警、自动处置、报告输出、知识管理 三、核心能力体系(六大核心能力) 1. 全域标准化巡检能力:统一指标、统一口径、统一模板 构建三层全栈指标模板: 基础设施层:CPU/内存/磁盘/网络/进程/端口/硬件状态 平台中间件层:数据库/Redis/Kafka/Nginx/注册配置中心 业务应用层:交易量、响应时延、错误率、成功率、容量水位 支持可视化模板配置,一键纳管新系统,快速适配多业务场景 通过MCP实现自动采集、自动结构化、自动对齐,消除数据孤岛 2. 多维度深度聚合分析能力:从“看指标”到“读系统” 时间维度:同比/环比/周期拟合/波动识别 空间维度:基于CMDB拓扑实现跨域关联、链路传导、依赖分析 异常检测:静态阈值+动态基线+孤立森林+聚类算法 Hermes深度推理:长思维链分析、隐性关联挖掘、根因推断、置信度评分 输出:系统健康度评分、异常清单、风险等级、影响范围、疑似根因 3. 趋势预测与前瞻性预警能力:从“被动救火”到“主动防御” 基于Prophet/LSTM/Transformer时序模型,实现容量/负载/水位/流量预测 反事实推理:模拟高负载、流量突增、资源耗尽等场景,提前识别瓶颈 梯度预警:提示→预警→告警→紧急,分级推送、分级响应 预警直达:机器人、短信、企业微信、工单系统自动触达 4. 智能报告自动生成能力:合规、标准、可追溯 自动输出标准化巡检报告:概览、健康评分、异常列表、根因分析、处置建议、整改时限 - 支持多格式:PDF/Excel/Markdown/企业OA格式 全链路可审计:采集时间、分析逻辑、推理过程、报告版本 5. 多智能体协同闭环处置能力:L4级无人自治 OpenClaw框架调度:巡检智能体→分析智能体→处置智能体→验证智能体 分级自愈策略: L2:低风险自动修复(日志清理、配置校对、服务重启) L3:中风险推荐方案+人工确认执行 L4:高风险可信闭环(审批流+审计+可回滚) 自动派单、自动执行、自动验证、自动关闭工单,形成发现-分析-处置-验证闭环 6. 知识沉淀与自主进化能力:构建企业运维大脑 将专家经验、故障案例、处置SOP转化为知识图谱+规则库+模型样本 强化学习持续优化:异常识别准确率、预测精度、处置成功率 支持新场景零代码/低代码快速扩展,能力随运行持续增强 四、关键技术支撑 1. OpenClaw多智能体自治框架 智能体注册、发现、调度、协作、熔断、限流,保障高可用与安全可控。 2. Hermes深度推理引擎 长文本理解、思维链推理、反事实推演、可解释决策,支撑复杂根因定位。 3. MCP模型上下文协议 统一数据接入标准,无感对接各类运维系统,降低集成成本。 4. 时序预测与异常检测算法栈 动态基线、周期拟合、突变检测、趋势预判,提升预警准确率。 5. 低代码智能体编排平台 可视化配置巡检模板、流程、告警、处置策略,降低落地门槛。 6. 安全可信闭环机制 分级授权、操作留痕、执行审计、风险回滚、人在回路中断。 五、分阶段实施路径(平稳落地、价值递进) 阶段一:基础构建期(1–3个月)——标准化+自动化 完成底座部署:大模型、OpenClaw、MCP协议对接 梳理核心系统,落地全栈标准化巡检指标模板 实现数据自动采集、巡检自动执行、报告自动生成 目标:替代80%人工报表与日常巡检,释放基础人力 阶段二:能力深化期(3–6个月)——深度分析+预测预警 接入Hermes引擎,开启关联分析、根因推理、健康度评分 上线容量预测、负载预测、风险预警能力 建立人机协同校验机制,优化推理与预测精度 目标:隐患提前发现率提升60%,MTTR降低50% 阶段三:全自治升级期(6个月以上)——L4无人闭环 开放分级自愈权限,实现自动处置、自动验证、自动闭环 构建运维知识图谱,实现经验沉淀与智能体自进化 全面覆盖核心业务,达成L4级全自治巡检 目标:无人值守率≥90%,同类故障重复发生率下降70% 六、预期价值与量化成效 1. 效率价值- 人工巡检工作量减少90%+ 巡检周期从天/周级降至小时/分钟级 报告生成从小时级降至秒级 2. 稳定性价值- 隐性隐患识别覆盖率提升至99% 故障预警提前小时–天级 MTTR降低50%–80% 生产事故发生率下降60%+ 3. 成本与人力价值- 年节省巡检人力1000+人天(规模化场景) 资源利用率提升15%–30% 运维人员从重复性工作转向架构优化与创新 4. 管理与合规价值- 巡检标准化、可解释、可追溯、可审计 健康度量化、风险可视化、决策数据化 满足内控、审计、等保、监管全流程要求 5. 知识资产价值- 个人经验转化为企业级数字知识资产 智能体能力持续迭代,形成自治运维生态 快速复制、跨场景复用,降低技术债务 七、方案亮点与创新 1. 架构创新:L4全自治架构,真正实现“巡检无人化” 2. 机制创新:OpenClaw多智能体协同,突破单点智能局限 3. 技术创新:Hermes深度推理+时序预测,实现可解释、可预判 4. 模式创新:从“工具”升级为“自治中枢”,驱动运维范式变革 5. 落地创新:低代码编排、分级开放、平稳过渡,风险可控、见效快 八、总结与展望 巡检分析智能体是企业数智化运维的核心中枢,本方案通过大模型+多智能体+深度推理+闭环自治,彻底解决传统巡检的效率低、覆盖窄、分析浅、无闭环等痛点,最终建成自感知、自分析、自决策、自执行、自修复、自进化的智慧运维体系。 未来将持续向多模态感知、全域自治、跨域协同、研运一体化演进,深度融入变更、应急、容量、复盘等场景,构建企业级智慧运维大脑,为业务高质量发展提供全天候、高可靠、高效率的技术底座支撑。

优秀的个人博客,低调大师

拥抱Spring全新OAuth解决方案

以下全文 Spring Authorization Server 简称为: SAS 背景 Spring 团队正式宣布 Spring Security OAuth 停止维护,该项目将不会再进行任何的迭代 目前 Spring 生态中的 OAuth2 授权服务器是 Spring Authorization Server 已经可以正式生产使用 作为 SpringBoot 3.0 的过渡版本 SpringBoot 2.7.0 过期了大量关于 SpringSecurity 的配置类,如沿用旧版本过期配置无法向上升级。 迁移过程 本文以PIG 微服务开发平台为演示,适用于 Spring Security OAuth 2.3 <-> 2.5 的认证中心迁移 ① Java 1.8 支持 目前最新的 SAS 0.3 基于 Java 11 构建,低版本 Java 无法使用 经过和 Spring Security 官方团队的沟通 0.3.1 将继续兼容 Java 1.8 我们联合 springboot 中文社区编译了适配 java 1.8 的版本坐标如下 <dependency> <groupId>io.springboot.security</groupId> <artifactId>spring-security-oauth2-authorization-server</artifactId> <version>0.3.0</version> </dependency> ② 授权模式扩展 扩展支持密码模式,SAS 基于 oauth 2.1 协议不支持密码模式 扩展支持短信登录 ③ Redis 令牌存储 官方目前没有提供基于 Redis 令牌持久化方案 PIG 扩展 PigRedisOAuth2AuthorizationService 支持 ④ Token 输出格式化 使用自省令牌的情况下 默认实现为 ku4R4n7YD1f584KXj4k_3GP9o-HbdY-PDIIh-twPVJTmvHa5mLIoifaNhbBvFNBbse6_wAMcRoOWuVs9qeBWpxQ5zIFrF1A4g1Q7LhVAfH1vo9Uc7WL3SP3u82j0XU5x 为方便结合 redis 高效检索 token ,结合 RDM 分组也可以更方便的图形化观察 统一前缀::令牌类型::客户端ID::用户名::uuid @Bean public OAuth2TokenGenerator oAuth2TokenGenerator() { CustomeOAuth2AccessTokenGenerator accessTokenGenerator = new CustomeOAuth2AccessTokenGenerator(); // 注入Token 增加关联用户信息 accessTokenGenerator.setAccessTokenCustomizer(new CustomeOAuth2TokenCustomizer()); return new DelegatingOAuth2TokenGenerator(accessTokenGenerator, new OAuth2RefreshTokenGenerator()); } ⑤ Token 输出增强 使用自省令牌,默认情况下输出的 Token 格式 { "access_token": "xx", "refresh_token": "xx", "scope": "server", "token_type": "Bearer", "expires_in": 43199 } Token 增强输出关联用户信息 { "sub": "admin", "clientId": "test", "access_token": "xx", "refresh_token": "xx", "license": "https://pig4cloud.com", "user_info": { "username": "admin", "accountNonExpired": true, "accountNonLocked": true, "credentialsNonExpired": true, "enabled": true, "id": 1, "deptId": 1, "phone": "17034642999", "name": "admin", "attributes": {} } } ⑥ 授权码模式个性化 ⑦ 资源服务器 自省方案扩展支持资源资源服务器本地查询 扩展资源服务器本地自省 - 优势: 1. 用户状态实时更新 2. 减少网络调用提升性能 源码: https://github.com/pig-mesh/pig

资源下载

更多资源
腾讯云软件源

腾讯云软件源

为解决软件依赖安装时官方源访问速度慢的问题,腾讯云为一些软件搭建了缓存服务。您可以通过使用腾讯云软件源站来提升依赖包的安装速度。为了方便用户自由搭建服务架构,目前腾讯云软件源站支持公网访问和内网访问。

Nacos

Nacos

Nacos /nɑ:kəʊs/ 是 Dynamic Naming and Configuration Service 的首字母简称,一个易于构建 AI Agent 应用的动态服务发现、配置管理和AI智能体管理平台。Nacos 致力于帮助您发现、配置和管理微服务及AI智能体应用。Nacos 提供了一组简单易用的特性集,帮助您快速实现动态服务发现、服务配置、服务元数据、流量管理。Nacos 帮助您更敏捷和容易地构建、交付和管理微服务平台。

Spring

Spring

Spring框架(Spring Framework)是由Rod Johnson于2002年提出的开源Java企业级应用框架,旨在通过使用JavaBean替代传统EJB实现方式降低企业级编程开发的复杂性。该框架基于简单性、可测试性和松耦合性设计理念,提供核心容器、应用上下文、数据访问集成等模块,支持整合Hibernate、Struts等第三方框架,其适用范围不仅限于服务器端开发,绝大多数Java应用均可从中受益。

WebStorm

WebStorm

WebStorm 是jetbrains公司旗下一款JavaScript 开发工具。目前已经被广大中国JS开发者誉为“Web前端开发神器”、“最强大的HTML5编辑器”、“最智能的JavaScript IDE”等。与IntelliJ IDEA同源,继承了IntelliJ IDEA强大的JS部分的功能。

用户登录
用户注册