主页

MySQL 8.0 和 MongoDB 在 NoSQL 方面的差异对比

MySQL 8.0 开始也支持 NoSQL 了,那么和 MongoDB 相比较,体验是否一样呢?让我们来看一看! MySQL 8.0 (使用 MySQL Shell 和 X DevAPI)1. 创建 Schemamysqlsh --uri user@host:33060 --mysqlx // 创建一个新的 schemavar demo = session.createSchema('d

怎么发布 jsr 包?有哪些注意点?

JavaScript Registry (JSR) 是 JavaScript 和 TypeScript 的现代化软件包仓库。JSR 适用于许多运行时(Node.js、Deno、浏览器等),并且向后兼容 npm。 那么,怎么发布 jsr 包?1. 访问官网并使用 Github 授权登录官网:https://jsr.io/ 2. 通过官网新发布一个包,填写 Scope 和 Package name 3

实现一个最简单的单点登录(SSO)系统

一个最简单的单点登录(SSO)系统,包括认证中心(auth-server)、登录页(login-page)、资源服务端(resource-erver)和客户端(sso-client)四个部分,以下是详细的实现步骤。 1. 认证中心(Auth Server)认证中心负责用户认证,并在成功认证后生成一个 JWT token。 安装依赖mkdir auth-servercd auth-servernpm

Ansible 命令及其使用指南

Ansible 是一个强大的自动化工具,用于配置管理、应用部署和任务自动化。以下是一些常见的 Ansible 命令及其使用指南,帮助你更好地管理和自动化你的基础设施。 1. 安装 Ansible在大多数 Linux 发行版中,你可以使用包管理器来安装 Ansible。例如,在 Ubuntu 上: sudo apt updatesudo apt install ansible 在 CentOS 上:

Typescript 中 Type 和 Interface 的区别

在 TypeScript 中,interface 和 type 都可以用来定义类型,但它们有一些关键的区别。了解这些区别有助于你在不同的场景中选择合适的方式。 1. 基本语法Interfaceinterface Person { name: string; age: number;} Typetype Person = { name: string; age:

Typescript 泛型的定义和使用范围

在 TypeScript 中,你可以在定义类型时使用泛型。泛型允许你创建可重用的类型定义,这些类型定义可以根据传入的类型参数进行调整。这使得类型定义更加灵活和强大。 泛型类型定义1. 基本语法你可以使用 <T>(或其他任何标识符)来定义泛型类型参数。例如: type Box<T> = { value: T;};const boxNumber: Box&

让我们的 npm 包同时支持 CommonJS 和 ES modules

随着 JavaScript 生态系统的不断发展,ES Modules (ESM) 已经逐渐成为现代 JavaScript 项目的标准模块系统。然而,许多现有的项目仍然依赖于 CommonJS (CJS) 模块系统。为了确保我们的 npm 包能够兼容这两种模块系统,我们需要进行一些配置和代码调整。 本文将详细介绍如何让你的 npm 包同时支持 CommonJS 和 ES Modules。 1. 项目

Async 函数哪些地方优于 Promise?

async 函数是 JavaScript 中处理异步操作的一种高级语法糖,它基于 Promise,但提供了更简洁和易读的语法。以下是我在工作过程中总结的 async 函数相对于 Promise 的一些优势: 1. 串联地执行多个异步操作async function getArticleList() { const articles = [] let i = 0 while (i++

Hexo 常用命令备忘

Hexo 是一个快速、简单且功能强大的博客框架,使用 Node.js 编写。以下是一些常用的 Hexo 命令,帮助你管理和发布你的博客。 1. 初始化新博客hexo init foldercd foldernpm install 在指定的文件夹中初始化一个新的 Hexo 博客,并进入初始化的文件夹,安装 Hexo 及其依赖。 2. 生成静态文件hexo generate 生成静态文件到 publi

如何实现 kubernetes 从私有镜像仓库拉取镜像

如果我们的镜像位于私有镜像仓库,比如阿里、Coding.net 等,直接拉取注定会失败,因为这时 kubernetes 还没有这些私有镜像仓库的认证信息,也不会尝试登录。 所以,在部署前我们要预先吧私有镜像仓库的认证信息告诉 kubernetes,而告诉 kubernetes 的方式就是配置一个类型为 dockerconfigjson 的 Secret 首次创建 Secret假设 Secret 取