Clay 的技术空间

用进废退 | 艺不压身

持久化

什么是持久化

持久化(Persistence),即把数据(如内存中的对象)保存到可永久保存的存储设备中(如磁盘)。

持久化的实现方式

  • 快照方式持久化:在某时刻把所有数据进行完整备份,例如:MySQL 的 Dump 方式、Redis 的 RDB 方式
  • 写日志方式持久化:把用户执行的所有写指令(增删改)备份到文件中,还原数据时只需要把备份的所有指令重新执行一遍即可,例如:MySQL 的 Binlog、Redis 的 AOF、Hbase 的 HLog
阅读全文 »

安装环境介绍

环境名称版本
linuxCentOS Linux release 7.7.1908 (Core)
docker-ce19.03.8
docker-compose1.24.0-rc1
docker imagevimagick/privoxy:latest

初始目录结构

  • 目录结构
1
2
3
4
5
~/fig/privoxy/
├── docker-compose.yml
└── privoxy/
├── user.action
└── user.filter
阅读全文 »

前言

实现流程

创建钉钉群机器人后,得到 Webhook 与 Secret。Java 代码 实现 Admin 的 Notifier 接口,当监听到 Admin 服务状态变更后,直接调用 Webhook 发送消息给钉钉群机器人,群成员就可以收到报警消息通知,这个过程与 Github 的 Webhook 实现流程一致。

钉钉官方文档

值得一提的是,本文使用的是钉钉提供的 自定义机器人 接口,而不是 开发企业内部机器人 接口,同时 Webhook 里包含的 access_token 不存在有效期(永久有效),即不需要定时刷新 access_token

阅读全文 »

前言

You-Get 是一个基于 Python3 的下载工具,可以很轻松地下载到网络上的视频、图片及音乐资源,默认支持 YouTube、哔哩哔哩、优酷、爱奇艺、腾讯视频等视频网站的下载。下面将介绍在 Linux 系统下如何使用 You-Get,此教程适用于 Centos/Debian/Ubuntu 等 Linux 发行版。

依赖说明

以下是必要的依赖,需要提前单独安装,除非是在 Windows 系统下使用预安装包:

通过 PIP 安装

You-Get 的官方版本通过 PyPI 分发,可从 PyPI 镜像中通过 pip 包管理器安装,务必使用 Python3 的 pip

1
$ pip3 install you-get
阅读全文 »

1、Admin 简介

Spring Boot Admin 是一个开源社区项目,用于管理和监控 Spring Boot 应用程序。 应用程序作为 Spring Boot Admin Client 向为 Spring Boot Admin Server 注册(通过 HTTP 协议)或使用 Spring Cloud 注册中心(例如 Eureka、Consul)的服务发现。UI 是的 AngularJs 应用程序,用于展示 Spring Boot Admin Client 的 Actuator 端点上的一些监控数据。Spring Boot Admin 默认提供了如下功能(包括但不限于):

  • 显示健康状态及详细信息,如 JVM 和内存指标、数据源指标、缓存指标
  • 显示构建信息编号
  • 跟踪并下载日志文件
  • 查看 JVM 系统和环境属性
  • 查看 Spring Boot 配置属性
  • 轻松的日志级别管理
  • 与 JMX-Beans 交互
  • 查看线程转储
  • 查看 Http 跟踪
  • 查看 auditevents
  • 查看 http-endpoints
  • 查看计划任务
  • 查看和删除活动会话(基于 Spring-Session)
  • 查看 Flyway/Liquibase 数据库迁移
  • 下载 heapdump 文件
  • 状态变更通知(支持电子邮件、Slack、Hipchat …)
  • 状态更改的事件日志(非持久性)
阅读全文 »

大纲

命令格式

Linux 命令的格式:command [-options] [parameter1] ...

  • command:命令名称,相应功能的英文单词或单词的缩写
  • [-options]:选项,可用来对命令进行控制,也可以省略,[] 代表可选
  • parameter1 ...:命令的参数,可以是零个、一个或者多个
阅读全文 »

MinGW 介绍

MinGW 的简介

MinGW 是 Minimalist GNU on Windows 的缩写。它是一个可自由使用和自由发布的 Windows 特定头文件和使用 GNU 工具集导入库的集合,允许开发者在 Linux 和 Windows 平台生成本地的 Windows 程序而不需要第三方 C 运行时(C Runtime)库。MinGW 实际上是将经典的开源 C 语言编译器 GCC 移植到了 Windows 平台下,并且包含了 Win32API 和 MSYS,因此可以将源代码编译生成 Windows 下的可执行程序,又能如同在 Linux 平台下时,使用一些 Windows 不具备的开发工具。简单一句话概况,MinGW 就是 GCC 的 Windows 版本 。

MinGW 的优势

  • MinGW 支持最新的 C 语言 标准
  • MinGW 是开源软件,可以免费使用
  • MinGW 由一个活跃的开源社区在持续维护,因此不会过时
  • MinGW 使用 Windows 的 C 语言运行库,因此编译出的程序不需要第三方 DLL ,可以直接在 Windows 下运行
  • 那些著名的开源 IDE 实际只是将 MinGW 封装了起来,使它拥有友好的图形化界面,简化了操作,但内部核心仍然是 MinGW

MinGW 是稳定可靠的、持续更新的 C/C++ 编译器,使用它可以免去很多麻烦,不用担心跟不上时代,也不用担心编译器本身有严重漏洞,可以放心的去编写程序。

阅读全文 »

最新公告

本文适用于 JetBrains CLion v2019.3/3.1/3.2/3.3 永久激活,若你使用的是更新的版本,建议参考这篇博客,使用最新的方式来破解。

前言

本文适用 JetBrains CLion v2019.3/3.1/3.2/3.3 永久激活,附破解补丁和激活码,可以永久激活 Windows、MAC、Linux 下的 CLion!!!网上有激活码的激活方式(更改 hosts),一般都是几个月或者一年,但下面介绍的方法是永久激活,亲测可以激活成功。JetBrains CLion v2019.3.4 以及之后的版本暂时只支持默认的 License Server 激活方式,望周知。

资源下载

  • JetBrains CLion 下载:官网
  • JetBrains CLion 破解补丁下载:本站资源
  • JetBrains CLion 破解补丁下载:百度网盘,提取码:u3pe

提示

JetBrains CLion 是一款专为 C/C++ 开发所设计的跨平台 IDE。

阅读全文 »

大纲

GCC 使用

GCC 编译器简介

GCC(GNU Compiler Collection)编译器是 GNU 开源组织发布的 UNIX/Linux 下功能强大、性能优越的编译器,支持跨平台交叉编译,它还可以将 C、C++ 等多种语言编写的源程序编译、链接成可执行文件。而 GDB 是 GNU 推出的功能强大的程序调试器,可以说 GCC 与 GDB 是在 Linux 环境下进行 C/C++ 程序开发不可缺的工具。GCC 可以编译如 C、C++、Object-C、Java、Fortran、Pascal、Modula-3 和 Ada 等多种编程语言,而且 GCC 又是一个多平台编译器,能够在当前 CPU 平台上为多种不同体系架构的硬件平台开发软件,因此尤其适合在嵌入式软件领域的开发和编译。在使用 GCC 编译程序时,编译过程可以被细分为四个阶段:预处理、编译、汇编、链接。

GCC 使用语法介绍

  • 语法:gcc [options] [filenames]
阅读全文 »

前言

用户认证与授权

  • 用户认证:当用户去访问我们的系统资源的时候,我们的系统需要验证用户的身份(比如账号和密码认证这是一种方式),如果身份合法则认证通过,颁发相应的免死金牌,如果验证没通过,则提示用户请三思而后行,这就是用户认证
  • 用户授权:用户授权一般是与用户认证相辅相成的,在认证的时候,如果认证通过,我们还会将该用户的权限信息给收集起来,并将相应信息作为依据,封装在认证的 HTTP 响应体中。当用户认证成功后,访问我们系统的某一个模块的时候,该模块是需要判断该用户是否有权访问,如果没有访问该资源的访问权限,用户也只有被拒绝访问,这就是用户授权

单点登录(SSO)

单点登录一般常见于分布式应用中,用户只需要登录一次,即认证一次就可访问分布式应用中的所有模块,而不需要每访问一个模块就得去登录认证一次,这样用户嫌麻烦,后端认证逻辑也冗余。

第三方登录(授权码)

比如目前互联网运用中的微信登录、微博登录、支付宝登录等,用户通过授权,第三方应用给予我们系统访问他微信相关信息的权限,我们获取后进行注册,使其称为我们系统的注册人员,实现第三方登录。

阅读全文 »
0%