随笔分类 - 数据库相关
关系型数据库、NoSQL 数据库、数据仓库、数据检索和分析等
摘要:Next.js 是一个用于构建 Web 应用程序的框架。Next.js 是一个用于生产环境的 React 框架,是一个 React 服务端渲染应用框架。 NextJS: https://nextjs.org/ Prisma 是一个基于 promise 的 Node.js 和 TypeScript 的
阅读全文
摘要:本文在 “Docker基础知识 (12) - 使用 Docker 部署 Nginx + Php/Laravel + MariaDB 项目” 基础上,修改 Nginx 的配置文件和 docker-compose.yml,配置 phpMyAdmin 目录密码保护。 注:本文省略了 Laravel 项目的
阅读全文
摘要:在 “Springboot 系列 (19) - Springboot+ElasticSearch 实现全文搜索(一)” 和 “Springboot 系列 (20) - Springboot+ElasticSearch 实现全文搜索(二)” 里我们演示了安装配置 ElasticSearch (包括 K
阅读全文
摘要:在 “Springboot 系列 (19) - Springboot+ElasticSearch 实现全文搜索(一)” 里我们演示了安装配置 ElasticSearch (包括 Kibana 和 Logstash),本文将演示使用 curl 调用 ElasticSearch API。 Elastic
阅读全文
摘要:全文检索(Full-text Search)是指计算机索引程序通过扫描文章中的每一个词,对每一个词建立一个索引,指明该词在文章中出现的次数和位置,当用户查询时,检索程序就根据事先建立的索引进行查找,并将查找的结果反馈给用户的检索方式。在全文搜索的世界中,存在着几个主流工具,主要有: (1) Apac
阅读全文
摘要:Redis 是一个开源的使用 ANSI C 语言编写、支持网络、可基于内存亦可持久化的日志型、Key-Value 的 NoSQL 数据库,并提供多种语言的 API。大型网站为了提高站点响应速度,使用缓存工具将热点数据保存在内存中,避免直接从后端数据库读取查询,降低后端压力,其中常见的 Cache 工
阅读全文
摘要:MHA(Master High Availability),也称主库高可用(或高可用),即在 MySQL Replication (主从复制) 的基础上,对其进行优化。目前在 MySQL 高可用方面是一个相对成熟的解决方案,它由日本 DeNA 公司 youshimaton(现就职于Facebook公
阅读全文
摘要:读写分离适用的场景:读操作的频率远高于写操作的频率,写操作的耗时长于读操作的耗时,即长耗时低频率的写操作降低了整个数据库的高并发读写能力,同时读操作对数据实时性要求不高,允许一定时间的延时。MySQL 读写分离基本原理是让 master 数据库处理写操作,slave 数据库处理读操作,master
阅读全文
摘要:MariaDB 数据库是 MySQL 的一个分支,主要由开源社区维护,采用 GPL 授权许可 MariaDB 的目的是完全兼容 MySQL,包括 API 和命令行,使之能轻松成为 MySQL 的代替品。在存储引擎方面,使用 XtraDB 来代替 MySQL 的 InnoDB。MySQL 数据库集群的
阅读全文
摘要:Laravel 是一套简洁、优雅的 PHP Web 开发框架 (PHP Web Framework)。Laravel: https://laravel.com/Laravel GitHub: https://github.com/laravel 1. 部署环境 IP 地址(本地测试环境):192.1
阅读全文
摘要:1. 部署 PHP 1) 部署环境 IP 地址(本地测试环境):192.168.0.10 操作系统:Linux CentOS 7.9 Docker 版本: 20.10.7 2) 拉取 php 镜像 $ docker pull php:7.4-fpm # 这里拉取 7.4 版本 $ docker im
阅读全文
摘要:本文在 “ Docker基础知识 (7) - 使用 Docker 部署 SpringBoot 项目 ” 里的 SpringbootWebDocker 项目的基础上,添加 JDBC、MariaDB 和 MyBatis 相关依赖包和数据库操作代码,并使用 Docker 部署 MariaDB(MySQL)
阅读全文
摘要:在开发中,单元测试(Unit Testing)又称为模块测试, 是针对程序模块(软件设计的最小单位)来进行正确性检验的测试工作。程序单元是应用的最小可测试部件。简单来说,就是测试数据的稳定性是否达到程序的预期。JUnit 是一个 Java 语言的单元测试框架。 Junit 测试是程序员测试,即所谓白
阅读全文
摘要:Spring Boot 从 2.0 版本开始,spring-boot-starter-data-redis 将 Redis 的默认 Jedis 客户端替换成了 Lettuce 客户端。Lettuce 是一个可扩展的线程安全 Redis 客户端,用于同步、异步和反应式使用。如果多个线程避免阻塞和事务性
阅读全文
摘要:Redisson 是架设在 Redis 基础上的一个 Java 驻内存数据网格(In-Memory Data Grid)。它充分的利用了 Redis 键值数据库提供的一系列优势,基于 Java 实用工具包中常用接口,为使用者提供了一系列具有分布式特性的常用工具类。Redisson 采用了基于 NIO
阅读全文
摘要:Lettuce 是一个可扩展的线程安全 Redis 客户端,用于同步、异步和反应式使用。如果多个线程避免阻塞和事务性操作(如 BLPOP 和 MULTI/EXEC ),则它们可能共享一个连接。Lettuce 是基于 Netty 框架,支持高级 Redis 功能,如 Sentinel、群集、管道、自动
阅读全文
摘要:Redis 是一个开源(BSD许可)的,内存中的数据结构存储系统,可以用作数据库、缓存和消息中间件。 Redis 支持多种类型的数据结构,如字符串(strings)、散列(hashes)、列表(lists)、集合(sets)、 有序集合(sorted sets)、基数估计算法(HyperLogLog
阅读全文
摘要:在 “ Springboot 系列 (6) - Springboot+OAuth2(一) | 使用 Security 搭建基于内存验证的授权服务器 ” 里的项目 SpringbootExample06 完成了一个基于内存验证的授权服务器。本文将完全复制 SpringbootExample06 的代码
阅读全文
摘要:JPA 是Java Persistence API 的简称,它是 Sun 公司在充分吸收现有ORM框架(Hibernate)的基础上,开发而来的一个Java EE 5.0 平台标准的开源的对象关系映射(ORM)规范。Hibernate 与 JPA 的关系: Hibernate 是一个开放源代码的对象
阅读全文
摘要:Spring Security 是一个功能强大且高度可定制的身份验证和访问控制框架。Spring Boot 给 Spring Security 提供了自动化配置方案 (spring-boot-starter-security),可以零配置使用 Spring Security。Druid 是阿里巴巴推
阅读全文