- 博客(571)
- 资源 (82)
- 问答 (1)
- 收藏
- 关注
原创 【DevOps工具篇】使用Ansible部署Keycloak oauth2proxy 和 单点登录(SSO)设置
Ansible 是一种基础设施即代码定义语言,Keycloak 是一种 OpenID-Connect 提供者、认证代理和可以处理用户联合的工具。在本文中,我将描述如何通过 Ansible 完全基于模型创建可扩展的 Keycloak 单点登录(SSO)设置。要跟进,您需要对 Docker(compose)、Ansible、代理、Linux 和 OpenID-Connect 有基本了解。
2024-04-04 21:47:24 684
原创 【DevOps工具篇】Keycloak中设置与OpenLDAP认证集成
Keycloak 允许用户与 AD/LDAP 联合。本教程将引导您完成使用 OpenLDAP 服务的用户联合。了解更多信息, 请参考。Keycloak 支持多种 LDAP 服务,包括 Microsoft AD 和 OpenLDAP。本教程将在同一个 VPC 中运行一个 OpenLDAP 服务,并在此演示中使用 Keycloak 服务。
2024-04-04 20:08:46 711
原创 【DevOps工具篇】Keycloak中设置LDAP认证
启用Keycloak中的LDAP身份验证后,您可以使用存储在LDAP中的用户信息实现SSO。这样,您可以轻松将原本在登录时需要引用LDAP服务器的应用程序添加到Keycloak作为SSO协作对象中。除了身份验证外,我们还尝试将存储在LDAP中的用户信息批量导入到Keycloak,或者从Keycloak向LDAP中导入用户信息。我们总结要做的三件事如下。
2024-04-04 20:02:19 1601
原创 【DevOps工具篇】Keycloak安装配置及脚本化
当我们执行[myrealm-keycloak-configuration.sh]脚本以启动一个全新的Keycloak实例时,它将运行并以完全自动化的方式进行设置。在所有即将发布的教程中,将应用相同的配置Keycloak的过程。与大多数关于Keycloak的其他博客/教程/文章的一个重大区别是,我们通过使用Keycloak的。虽然存在其他用于脚本化配置的替代方法,但是管理CLI在所有运行时环境中都可用,并且可以直接使用。realm,并请求一个经过身份验证的会话,该会话将用于所有进一步的调用。
2024-04-04 11:14:16 401
原创 【DevOps工具篇】身份验证管理及SSO登录:Keycloak
在数字时代,并确保是至关重要的。在新项目中担任的第一个任务中,我被实现。当我深入研究这篇旨在强调重要性并阐明的文章时,我意识到它在确保安全和个性化用户体验方面扮演的。在这一领域起着至关重要的作用,作为防止和其他危害的,同时促进。
2024-04-04 10:23:45 349
原创 【DevOps工具篇】安装 LDAP 管理 GUI PhpLdapAdmin
中有配置文件的示例。复制并创建 config.php 文件,并进行配置,这样就可以用 phpLDAPadmin 管理 LDAP 服务器了。对于 PHP5.5 以上版本,需要应用补丁。从以下网址获取补丁文件(phpldapadmin-1.2.3-php5.5.patch)。要能够远程管理 LDAP 服务器,需要进行以下设置。准备如下 LDIF 文件。需要设置使得从 Web 服务器可以访问到 phpLDAPadmin。可以从以下网址下载 phpLDAPadmin。使用 LDAP 实用工具进行配置更改。
2024-04-02 03:00:00 179
原创 【DevOps工具篇】LDAP GUI管理工具
OpenLDAP附带的LDAP管理命令非常灵活和方便。但是,为了进行注册或更改,您需要创建一个特殊格式(LDIF文件)的文件,这非常繁琐。因此,推荐使用适用于不同用途的GUI管理工具。在这里,我们将介绍通用的LDAP管理工具“phpLDAPadmin”以及其他LDAP管理工具。
2024-04-02 02:00:00 393
原创 【GenAI】使用GenAI堆栈构建视频分析和转录字幕聊天机器人
视频中充满了有价值的信息,但通常需要工具来帮助查找。从寻求分析讲座和教程的教育机构到希望了解视频评论中客户情绪的企业,转录字幕和理解视频内容对于明智的决策和创新至关重要。最近,人工智能/机器学习技术的进步使这项任务比以往任何时候都更加易于实现。借助Docker开发GenAI技术为从视频内容中解锁见解打开了无限的可能性。通过利用转录字幕、嵌入以及大型语言模型(LLMs),组织可以深入了解并利用视频等多样和原始数据做出明智的决策。在本文中,我们将深入探讨。
2024-04-01 20:24:43 1521
原创 【DevOps工具篇】 OpenLDAP服务器安装和配置方法
在诸如RedHat Enterprise Linux、CentOS、Debian、Ubuntu等Linux发行版中,OpenLDAP作为软件包提供。然而,最近的OpenLDAP比各个发行版采用的版本更加高级,并且后端数据库也更换为更快速的版本。以下是源代码安装方法的说明。
2024-04-01 18:44:44 451
原创 【DevOps工具篇】LDAP服务器(slapd)的冗余和扩展功能
LDAP服务器(slapd)是一种可以在各种用途中使用的LDAP服务器。它可以在不允许停机的环境或者非常频繁访问的环境中使用。因此,在搭建LDAP服务器时,始终建议采用冗余配置。此外,LDAP服务器(slapd)提供了扩展API,可以灵活地扩展功能。本文将介绍LDAP服务器(slapd)的系统配置和扩展API。
2024-04-01 18:35:51 464
原创 【DevOps工具篇】 OpenLDAP的LDAP服务器(slapd)是什么?
这是LDAP Version 3中定义的身份验证方法,在OpenLDAP附带的实用工具命令中,此方法是默认的。然而,使用此DN进行所有操作是危险的。LDAP服务器(slapd)支持在常规的ldap端口(TCP 389)上连接后,通过STARTTLS切换到TLS模式,以及在LDAP over TLS(TCP 636)上一开始就使用TLS的两种方法。要将LDAP服务器(slapd)配置为支持SSL/TLS,可以使用下面示例的LDIF文件注册LDAP服务器的服务器证书、服务器密钥、CA证书等。
2024-04-01 18:18:53 593
原创 【DevOps基础篇】Proxy的工作原理
代理服务器充当客户端请求资源和提供资源的服务器之间的中介。它可以用于各种目的,如缓存资源以加快访问速度,匿名化请求,执行安全策略以及在多个服务器之间进行负载均衡。基本上,它接收来自客户端的请求,将其转发到相关服务器,然后将服务器的响应返回给客户端。
2024-03-29 02:45:00 95
原创 【AI】在本地 Docker 环境中搭建使用 Hugging Face 托管的 Llama 模型
在本地使用Docker部署LLM GGML模型是一种方便有效的使用自然语言处理的方式。将模型docker化使其易于在不同环境之间移动,并确保其能够一致运行。在浏览器中测试模型提供了用户友好的界面,让您可以快速评估其性能。这样的设置使您对基础架构和数据有更多控制,并更容易部署先进的语言模型,适用于各种应用。这是在部署大型语言模型方面迈出的一大步。
2024-03-28 12:23:18 2292
原创 【算法】在JS中实现Heap堆及堆操作
Heap是一种满足堆属性的专用基于树的数据结构。在一个堆中,对于任何给定节点(除了根节点),该节点的值始终根据其父节点排序。**最大堆:**在最大堆中,对于除根节点外的每个节点,节点的值最多等于其父节点的值。这意味着最大的元素位于根节点,随着向下遍历树,元素变得更小。简单来说,所有子节点都必须小于其父节点。**最小堆:**在最小堆中,对于除根节点外的每个节点,节点的值至少等于其父节点的值。这意味着最小的元素位于根节点,随着向下遍历树,元素变得更大。
2024-03-28 11:11:17 506
原创 【OpenStack】创建并部署自己的Web服务器和应用
这是整个系列中我们一直在等待的:创建一个可以部署在OpenStack上并利用OpenStack服务的应用程序。作为这些练习的一部分,我希望我们能够体验到以下内容:1. 部署一个“支持(support)”服务器(我们已经在我们的PostgreSQL数据库中完成了这一步)。2. 编写一个连接到另一个服务器(数据库)的应用程序。3. 集成OpenStack SDK与OpenStack服务一起工作(我们将使用[Swift对象存储服务](https://www.openstack.org/software/
2024-03-27 07:00:00 219
原创 【OpenStack】在本地OpenStack中创建一个应用及其网络
现在我们对平台的外观和运作有了更清晰的认识,我们可以开始在其基础上构建一些东西。但我们要建造什么?对我来说,为了构建和演示OpenStack的一些特性,最容易的方法是构建一个简单的Web应用程序。
2024-03-27 06:00:00 88
原创 【OpenStack】创建系统(VM)实例镜像及实例创建方法
在最后的中,我们回顾了项目的设计,并设置了项目环境。在这篇文章中,我们将开始设置项目的工作组件并开始测试。考虑到 OpenStack 是一个组织技术(类似于 Kubernetes,但用于虚拟机),您可以开始理解 [Nova(计算组件)作为一个像 QEMU、VirtualBox 或 Xen 这样的虚拟机控制器。这意味着您可以像在本地机器上启动 VM 一样在 OpenStack 上运行 VM。让我们看看其中的一些方式。
2024-03-27 05:45:00 196
原创 【AI】使用Azure OpenAI创建自己的AI应用!
在使用模型之前,我们先来了解一下Azure提供了哪些OpenAI模型。Azure提供的模型从功能上可以分为三大类:补全(completion)、对话(chat)、嵌入(embeddings)。补全模型可以根据输入的文本,补全剩余的文本。这类模型顾名思义,就是根据前文续写后续的部分。他可以用来续写文章,补全程序。不仅如此,你其实也可以通过固定的文字格式来实现对话的效果。对话模型相信用过ChatGPT的同学应该很熟悉。对话模型可以根据输入的文本方面,生成对话的回复。
2024-03-26 20:29:36 1188
原创 【OpenStack】本地启动部署OpenStack环境及在其中创建一个VM
DevStack是一组脚本,可以“快速”(15-20分钟 vs 2小时)和轻松地在您的环境中部署一个新的OpenStack云。提供的默认设置允许您创建默认组件,以便快速入门,但是可以添加配置选项来定制设置,以满足您的需求。默认情况下,该环境不包含OpenStack提供的所有组件。Keystone(身份服务)Glance(镜像服务)Nova(计算服务)Placement(放置/HTTP API服务)Cinder(块存储)Neutron(网络)Horizon(仪表板服务)
2024-03-26 11:07:16 405
原创 AI大模型学习的伦理与社会影响
由于AI大模型学习通常需要大规模的数据集进行训练,而这些数据集通常由一些大型科技公司掌握,因此可能导致数据的垄断和信息的不对称。为了确保AI技术的良性发展,我们需要在伦理和社会影响方面采取适当的措施,保障用户的数据隐私、减少歧视性和提高透明度,推动社会公平与发展。另外,AI大模型学习的透明度也是一个重要的议题。从伦理角度来看,AI大模型学习所涉及的数据隐私、歧视性和透明度等问题引发了人们的担忧。由于AI模型的训练数据通常是由人类标注的,如果标注过程中存在歧视性,将会导致AI模型在决策过程中产生歧视性。
2024-03-25 20:38:44 628
原创 从政府工作报告探计算机行业发展
企业和从业者应当密切关注政府工作报告中对计算机行业的相关内容,把握行业发展的机遇,不断提升自身的技术和创新能力,实现行业的可持续发展。政府和企业应该加强合作,共同推动计算机行业的发展,为我国经济社会的发展贡献更大的力量。政府工作报告作为政府工作的全面总结和未来规划,不仅反映了国家整体的发展态势,也为各行各业提供了发展的指引和参考。因此,从政府工作报告中探寻计算机行业的发展趋势、政策导向和未来机遇,对于行业内的企业和从业者来说具有重要的指导意义。政府工作报告中的政策导向对计算机行业的发展有着重要的引导作用。
2024-03-25 20:33:45 225
原创 程序员35岁会失业吗?
此外,我也始终保持学习的态度,不断提升自己的技术水平,不断探索和尝试新的技术,这也是我能够在竞争激烈的行业中立于不败的原因之一。无论是年轻程序员还是资深程序员,只要保持学习的态度,不断提升自己的技术能力,都有机会在竞争激烈的行业中脱颖而出。无论是年轻程序员还是资深程序员,只要保持学习的态度,积极适应工作环境的变化,不断提升自己的技术能力,都有机会在职业生涯中取得成功。在我的职业生涯中,我也曾遇到过挫折和困难,但我始终坚信,只要保持学习的态度,勇敢面对挑战,不断努力拼搏,就一定能够实现自己的职业目标。
2024-03-25 20:29:01 257
原创 【OpenStack】OpenStack实战之开篇
如果您编写一个应用程序并将其部署到一个平台上,那么代码必须针对您正在开发的平台进行定制。如果你被告知需要将代码迁移到另一个平台(这比你意识到的要频繁),你就得重新设计所有的代码。XaaS(一切即服务):我可能会用这个观点挑起一些争议,但请听我说。作为一个应用程序开发人员,我希望部署多个相互交互的节点。如果我在一个具有DBaaS或STaaS(用于存储/数据的服务)、PaaS(用于计算节点/服务器的服务)、FaaS(用于处理物联网/事件驱动流程的服务)的平台上,这些服务都是从它们自己的集群部署的,这意味着它们
2024-03-25 20:19:26 150
原创 【微服务设计】常见的DDD设计中的经验教训!
领域驱动设计是关于建模复杂的业务流程和规则的。DDD中常见的错误是将中心概念——比如金融业务中的“账户”、电子商务中的“客户”和保险业中的“保单”——错误地建模为边界上下文或API。这种错误在使用领域驱动设计时非常昂贵。避免这种陷阱的关键是将设计与被建模的业务流程联系起来。这些中心概念确实在领域驱动设计中起着关键作用。但是它们的作用是作为Bounded Context的维护者和控制者(也就是:聚合),而不是Bounded Context本身。
2024-03-25 16:39:27 155
原创 【微服务】详解弹性设计中各个模式的应用场景
这种架构的目的是:使过程独立且以独特的方式管理,没有相互依赖,因此责任被划分和分权,这在分布式计算模式中非常常见。问题是孤立发生的,而且问题会被解决。在技术领域,没有完美的解决方案,关于可用性的问题将始终是相关的。微服务架构是否具有容错性?在这种情况下,答案是否定的。迁移不同架构不会完全解决所有容错问题。分布式计算架构只有在具有弹性及其模式作为构建本质时才可以被称为容错性。我们需要注意到分布式组件可能会发生故障,但在这种情况下,我们将预测故障并对其进行管理。
2024-03-25 05:00:00 323
原创 【DevOps云实践】Azure Function中使用发布/订阅模式
发布/订阅消息使应用程序和生产者能够异步向订阅者发送事件,而这些生产者无需与发送者耦合。发送者(发布者)使用输入信道将事件打包成消息,然后发送消息。然后将这些消息发送到每个对消息感兴趣的消费者(订阅者)的输出消息信道。每个订阅者将从他们的输出信道中获得消息的副本。代表具有发布者-订阅模型的消息系统的流程图。从左侧开始,一个标记为’发布者’的矩形发送一条消息到一个标记为’输入信道’的矩形。然后,该信道将消息转发到一个标记为’消息代理’的中央矩形。
2024-03-25 05:00:00 92
原创 【微服务】以模块化单体架构开发微服务应用
在我们的场景中,这种方法意味着一个类依赖于另一个类的存在,这并不理想。此外,在开发过程中,需求和业务逻辑经常发生变化,因此,业务环境的边界可能也会发生变化。在这种架构中,最初的目标是识别独立的业务环境、隔离它们,并建立明确的通信模式。例如,一个最初看起来是单一的实体可能需要分割为单独的部分,每个部分驻留在不同的业务环境中。从开发的角度来看,这代表了一个实质性的好处,并提供了灵活性。模块化单体的概念建议将应用的开发作为一个单一的代码库和部署单元开始,但在业务环境之间建立明确和清晰的边界。
2024-03-24 22:07:32 1387 1
原创 【微服务】设计弹性微服务架构模式
在这种情况下,依赖的消费者服务如何做出反应是非常重要的?理想情况下,期望是这些依赖服务具有强健的特性,能够优雅地处理此类问题。但如果它们不具有弹性,那么您将影响这些服务负责的功能的可用性。这就是我们在这篇博客中要讨论的内容 — 构建具有弹性的微服务的模式!!!
2024-03-24 20:31:24 238
原创 SQL的事务及其ACID属性
想象一个使用SQL作为数据库的银行系统。用户A想要把一些钱存入用户B的账户。如果他们发送了这笔钱,我们从他们的账户余额中取出这笔钱,然后想要把这笔钱存入用户B的账户,但突然我们的数据库崩溃了。这意味着我们从用户A的余额中取出的钱消失了吗?不,因为SQL数据库使用SQL事务来处理这些情况。
2024-03-24 14:21:40 907
原创 系统设计之缓存(Caches)和内容分发网络(CDNs)设计
在某些情况下,特别复杂的系统可能需要定制设计的淘汰策略。这些策略专门针对系统的独特需求进行调整,可以考虑各种因素,比如每个项目的大小、类型和检索成本。总之,缓存和 CDN 在提升网站性能、减少延迟以及确保互联网上内容传递的可扩展性和有效性方面至关重要。它们在任何高流量、性能关键型的 Web 应用程序的架构中都是基础。
2024-03-24 11:19:43 1082
原创 【DevOps构筑篇】负载均衡器及其不同技术策略
负载均衡器将传入的网络流量分发到多个服务器上,以确保没有单个服务器承载太大负载。通过有效地分散请求,它们提高了应用程序的容量和可靠性。
2024-03-23 19:18:33 169
原创 【系统设计】系统设计相关课题的速成“葵花宝典”!
推荐超级课程:这是一门关于系统设计面试概念的完全速成讲解,这些概念是您在实战或者面试系统设计师工作前需要了解的。系统设计面试与编码无关,人们不想看到您编写实际代码,而是想看到您如何将整个系统组合在一起,这正是我们将在本教程中涵盖的内容,我们将讨论所有您设计大规模分布式系统之前需要了解的概念。要了解个人计算机的高级架构,在计算机上不同部件如何共同执行我们的代码,计算机通过分层系统运行,每一层针对不同任务进行优化。计算机只能理解二进制的0和1,这些被表示为比特,一位比特是计算中最小的数据单位,可以是0
2024-03-23 18:46:18 933
原创 【系统设计】API 设计:从基础知识到最佳实践
在本次我们将介绍 API 设计,从基础知识开始,逐步实现定义特殊 API 的最佳实践。作为开发人员,您可能熟悉其中许多概念,但我将提供详细的解释以加深您的理解。
2024-03-23 13:46:28 1087
原创 【微服务】StackOverflow的架构学习
StackOverflow 逆着微服务趋势而行,使用极其高效的整体架构和最少的基础设施,平均延迟为 18 毫秒,在其 200 个站点中每月处理 13 亿次页面浏览量。我们作为架构师,在进行各种微服务架构的实践的同时,也需要学习借鉴各个成熟实践的精华。因此本文,我们将了解学习一下作为世界级流量最大之一的网站StackOverflow网站的架构设计。组件是整体式的意味着它们无法扩展,因此服务器必须使用给定的资源来管理所有负载”。每台服务器每秒处理 450 个峰值请求,CPU 使用率仅为 12%。
2024-03-23 12:04:49 514 1
原创 【微服务】微服务架构的最佳实践总结!
构建和管理微服务是一项艰巨的任务。这是因为微服务就像多个并行的整体应用程序,它们都必须处于同步通信和并发运行时间。因此,在设计和构建它们时考虑并应用最佳实践非常重要。
2024-03-23 05:00:00 330
原创 【DevOps】探索微服务架构背景下的 API 延迟问题
微服务架构严重依赖于服务之间的通信,这会影响系统的整体性能,并且通常需要工具来。大多数微服务都设计为通过 API 相互通信。延迟是数据从一点传输到另一点所需的时间。在 API 上下文中,它是 API 请求从客户端传输到服务器并返回响应所花费的时间。在微服务内处理 API 请求时,许多参数都会影响响应的整体延迟。其中包括网络延迟、处理时间、数据库访问时间以及作为满足 API 请求的一部分而执行的任何其他同步 API 调用。因此,减少 API 延迟至关重要,因为它直接影响微服务的响应能力和可扩展性。
2024-03-23 04:15:00 63
原创 【DevOps云实践】使用Azure Pipeline部署Function App
有时需要创建像Azure Function App这样的特殊应用程序,以执行一些后台工作或作为无服务器架构的一部分。此应用程序需要部署(托管)在Azure App Service上 - 但作为Function App(因为Azure上的所有应用程序都作为App Service)。还有Azure DevOps服务,提供完整功能来开发应用程序,并通过CI/CD流程管理工作。Azure Repos用于Git存储库。Azure Pipelines用于构建和部署。Azure云托管应用程序。
2024-03-23 02:30:00 109
原创 【系统设计】面试问题:设计 Spotify
这是一道系统设计面试题,就是设计Spotify。在真正的面试中,通常,您会关注应用程序的一两个主要功能,但在本文中,我想对如何设计这样的系统进行高级概述,然后您可以更深入地研究如果需要的话,可以将其分为每个单独的部分。
2024-03-22 23:31:07 1196
原创 【DevOps云实践】使用Azure Pipeline部署.NET应用到Azure App Service
在开发过程中,包含许多步骤,其中之一是交付部分 - 应用程序需要放置在某个地方,以供最终用户使用并运行并提供实际功能。这是DevOps文化和一般SDLC周期的一部分。这部分通常被称为构建和部署,或者更现代化的方式是CI(持续集成)和CD(持续交付)。主要思想是尽可能自动化这个过程,每当我们推送新代码时,构建和发布过程可以自动运行,以将更改交付到源位置。
2024-03-22 21:55:41 429
原创 【ReactJS】使用GoJS实现自己的图表App
GoJS是一个功能丰富的JavaScript库,用于在现代浏览器和平台上实现交互式图表。 GoJS通过可定制的模板和布局使构建复杂节点、链接和组的图表变得简单。GoJS提供许多高级功能,用于用户交互,如拖放、复制粘贴、事务状态和撤销管理、色板、概览、数据绑定模型、事件处理程序, 以及用于自定义操作的可扩展工具系统。
2024-03-22 21:27:05 1091
AndroidKeboardWatcher
2016-04-06
AGImagePickerController
2015-03-23
iOS7_隐藏的特性和解决之道
2013-12-17
FlashPlayer
2012-08-18
MacOS:Xerces
2012-07-26
TMX地图编辑器:Tiled
2012-05-31
Android:一周计划应用
2012-04-09
Unity3D导出xcode没有头文件
2015-05-06
TA创建的收藏夹 TA关注的收藏夹
TA关注的人