COLA架构
概述 最近接触到一个新的架构:COLA (基于扩展点+元数据+CQRS+DDD的应用架构) COLA 是 Clean Object-Oriented and Layered Architecture的缩写,代表“整洁面向对象分层架构”。 开源地址:https://github.com/alibaba/COLA 博主 张建飞(alibaba) 博客地…
使用 MyBatis 的 BATCH 方式执行批量修改
前言 最近在优化公司的一个数据导入功能,里面涉及到比较复杂的逻辑,特别是最后一个列表更新,涉及到比较多的数据,在这里卡顿处主要为两处: 1.使用大量的查询条件去做修改删除操作 2.在一个for循环里面调用数据库做修改操作; 当数据量大的时候,服务非常的卡顿,在这里记录一下优化过程 现状 代码一: sql中有大量查询条件 Service 类 // 前…
MySQL 的 EXPLAIN 分析
简介 MySQL 提供了一个 EXPLAIN 命令, 它可以对 SELECT 语句进行分析, 并输出 SELECT 执行的详细信息, 以供开发人员针对性优化. EXPLAIN 命令用法十分简单, 在 SELECT 语句前加上 EXPLAIN 就可以了, 例如: EXPLAIN SELECT * from user_info WHERE id <…
几款内网穿透工具
nps-npc 简介 nps是一款轻量级、高性能、功能强大的内网穿透代理服务器。目前支持tcp、udp流量转发,可支持任何tcp、udp上层协议(访问内网网站、本地支付接口调试、ssh访问、远程桌面,内网dns解析等等……),此外还支持内网http代理、内网socks5代理、p2p等,并带有功能强大的web管理端。 一台有公网IP的服务器(VPS)…
在 Linux 中立即创建大文件
我们一般用 touch 命令创建一个空文件,但是如果有时候需要的话,如何创建特定大小的新文件呢 dd 命令 dd 命令用于复制和转换文件。它最常见的用途是创建实时 Linux USB。 dd if=/dev/zero of=test.img bs=2G count=1 上面创建了一个大小为 2 GB 的文件,其中有一个大小为 (bs, block …
理解 OAuth 2.0 – 阮一峰的网络日志
OAuth 2.0 是一个流行的授权机制,用来授权第三方应用,获取用户数据。 第三方登录 用户想要登录 A 网站,A 网站让用户提供第三方网站的数据,证明自己的身份。获取第三方网站的身份数据,就需要 OAuth 授权。举例来说,A 网站允许 GitHub 登录为以下流程: A 网站让用户跳转到 GitHub。 GitHub 要求用户登录,然后询问&…
查看 MySQL 数据库、表容量大小
如何在 MySQL 数据库管理中,查询数据库、表、索引的容量大小?我们可以在 MySQL 自带的 information_schema 库中的 Table 表里,找到所需信息。 在每个 MySQL 实例中,都有一个独立的 information_schema 库,它是自带的默认库,记录着这个 MySQL 实例中所有数据库的元数据、统计信息、以及有关…
thumbnail
网站添加免费的 https 证书
简述 这里使用 Let’s Encrypt 的免费证书 certbot 官网 在页面上选择一下你用的 Web 服务器和操作系统。比如,我选的 Nginx 和 Centos 7 根据页面提示操作,以下为详细步骤。 详细步骤 进入官网后下方会出现选择服务器和系统版本界面,选完后会自动生成操作步骤 在安装 certbot 之前需要先安装 snapd , …