gehinax-github-io.pages.dev
Open in
urlscan Pro
2606:4700:310c::ac42:2f54
Public Scan
URL:
https://gehinax-github-io.pages.dev/
Submission: On October 23 via automatic, source certstream-suspicious — Scanned from CA
Submission: On October 23 via automatic, source certstream-suspicious — Scanned from CA
Form analysis
0 forms found in the DOMText Content
文章 14 标签 13 分类 0 -------------------------------------------------------------------------------- 首页 时间轴 标签 网盘 Code 分类 Gehina's Blog 搜索 首页 时间轴 标签 网盘 Code 分类 GEHINA'S BLOG Access | Redis主从复制原理及配置 发表于2024-10-19|Redis Redis主从复制介绍Redis的持久化功能在一定程度上保证了数据的安全性,即便是服务器宕机的情况下,也可以保证数据的丢失非常少。通常,为了避免服务的单点故障,会把数据复制到多个副本放在不同的服务器上,且这些拥有数据副本的服务器可以用于处理客户端的读请求,扩展整体的性能。 主从复制的好处: 数据冗余,实现数据的热备份 故障恢复,避免单点故障带来的服务不可用 读写分离,负载均衡。主节点负载读写,从节点负责读,提高服务器并发量 高可用基础,是哨兵机制和集群实现的基础 主从复制,master以写为主,slave以读为主,当master数据变化的时候,自动将新的数据异步同步到其他的slave数据库 主从复制配置准备三台虚拟机,构成一主二仆的结构 修改配置文件redis6379.conf为例,步骤如下: 开启daemonize yes12# 设置为后台运行daemonize yes 注释掉bind 127.0.0.1 protected-mode no 指定端口 指定当前工作目录,dir pid文件名字,pidfile log文件名字,logfile requiredpass,密码 dum ... Redis持久化:AOF介绍及优劣 发表于2024-10-18|Redis AOF介绍AOF持久化会把被执行的写命令写到AOF文件的末尾,记录数据的变化。默认情况下,Redis是没有开启AOF持久化的,开启后,每执行一条更改Redis数据的命令,都会把该命令追加到AOF文件中,这是会降低Redis的性能,但大部分情况下这个影响是能够接受的,另外使用较快的硬盘可以提高AOF的性能 默认情况下,redis是没有开启AOF的。开启AOF功能需要设置配置:appendonly yes AOF持久化工作流程 Client作为命令的来源,会有多个源头以及源源不断的请求命令。 在这些命令到达Redis Server 以后并不是直接写入AOF文件,会将其这些命令先放入AOF缓存中进行保存。这里的AOF缓冲区实际上是内存中的一片区域,存在的目的是当这些命令达到一定量以后再写入磁盘,避免频繁的磁盘IO操作。 AOF缓冲会根据AOF缓冲区同步文件的三种写回策略将命令写入磁盘上的AOF文件。 随着写入AOF内容的增加为避免文件膨胀,会根据规则进行命令的合并(又称AOF重写),从而起到AOF文件压缩的目的。 当Redis Server服务器重启的时候会队AOF文件载入数据。 ... Redis持久化:RDB介绍及优劣 发表于2024-10-17|Redis Redis数据持久化Redis作为一个内存数据库,数据是以内存为载体存储的,那么一旦Redis服务器进程退出,服务器中的数据也会消失。为了解决这个问题,Redis提供了持久化机制,也就是把内存中的数据保存到磁盘当中,避免数据意外丢失Redis提供了两种持久化方案:RDB持久化和AOF持久化,一个是快照的方式,一个是类似日志追加的方式 RDB(Redis Database) ,将某一时刻的所有数据保存到一个 RDB 文件中。 AOF(append-only-file) ,当Redis服务器执行写命令的时候,将执行的写命令保存到 AOF 文件中。 RDB(Redis DataBase)快照持久化在指定的时间间隔,执行数据集的时间点快照 实现类似照片记录效果的方式,就是把某一时刻的数据和状态以文件的形式写到磁盘上,也就是快照。这样一来即使故障宕机,快照文件也不会丢失,数据的可靠性也就得到了保证。 这个快照文件就称为RDB文件(dump.rdb)其中,RDB就是Redis DataBase的缩写,该文件是一个压缩过的二进制文件,可以通过该文件还原快照时的数据库状态。RDB文件默认为当前工作 ... Mysql事务概念笔记 发表于2024-10-13|Mysql 前言在 MySQL 中,事务(Transaction)是一组可以作为单一工作单元执行的 SQL 操作。事务提供了确保数据一致性的重要机制,可以保证多个 SQL 语句要么全部成功执行,要么在出错时不执行任何操作(即 “全部执行或全部回滚” 的原则)。事务通常用于执行需要高一致性的数据操作场景,例如银行转账等涉及多表更新的操作。 事务的四大特性(ACID原则) 原子性(Atomicity): 事务中的所有操作必须全部完成或完全不执行。即使系统发生故障,事务也必须保证要么完全执行,要么完全回滚,不会出现部分执行的情况。 一致性(Consistency): 事务执行前后,数据库必须保持一致的状态。如果事务成功执行,它必须将数据库从一个一致状态转换为另一个一致状态。如果出现错误,事务应回滚到最初的状态,保持数据库一致性。 隔离性: 多个事务可以并发执行,但每个事务的操作和数据的变更应该对其他事务是隔离的,即一个事务在执行过程中不可见其他事务的中间状态。事务隔离有不同的级别(例如:READ UNCOMMITTED,READ COMMITTED,REPEATABLE READ, ... LeetCode每日一题 发表于2024-10-09|LeetCode 134. 加油站date: 2024-10-21 tag:贪心算法 题解:定义了两个变量:totalgas和totalcost,表示总获得的油量和消耗的油量,初始为0如果totalgas小于totalcost则表示不能跑一圈,返回-1; 用currentgas表示当前的油量,startindex表示开始的加油站下标。 遍历两个数组,记录获得油量和消耗的油量,currentgas+=gas[i]-cost[i]表示当前的油量如果currentgas<0说明从 startindex 到当前加油站无法到达下一个加油站,因此将 startindex 更新为当前加油站的下一个索引,并重置 currentgas 为 0。 返回结果,如果满足totalgas<totalcost,则返回startindex的值,否则返回-1; 代码12345678910111213141516171819class Solution {public: int canCompleteCircuit(vector<int>& gas, vector<int>&a ... Curl用法指南 发表于2024-10-08|Curl 简介curl 是常用的命令行工具,用来请求 Web 服务器。它的名字就是客户端(client)的 URL 工具的意思。 它的功能非常强大,命令行参数多达几十种。 curl的基本用法发送 GET 请求最简单的用法是向指定的 URL 发送 GET 请求,并在控制台输出返回的内容。 1curl https://www.example.com 运行上述命令后,curl 会输出 https://www.example.com 的 HTML 页面内容。默认情况下,curl 发送一个 HTTP GET 请求,并输出服务器的响应结果到终端。 123456789101112<!doctype html><html><head> <title>Example Domain</title></head><body> <div> <h1>Example Domain</h1> <p>This domain is for use in ill ... 常用 Git 命令清单 发表于2024-09-29|Git 一般来说,日常使用只要记住下图6个命令,就可以了。但是熟练使用,恐怕要记住60~100个命令。 新建代码库12345678# 在当前目录新建一个Git代码库$ git init# 新建一个目录,将其初始化为Git代码库$ git init [project-name]# 下载一个项目和它的整个代码历史$ git clone [url] 配置Git的设置文件为.gitconfig,它可以在用户主目录下(全局配置),也可以在项目目录下(项目配置)。 123456789# 显示当前的Git配置$ git config --list# 编辑Git配置文件$ git config -e [--global]# 设置提交代码时的用户信息$ git config [--global] user.name "[name]"$ git config [--global] user.email "[email address]" 增加/删除文件123456789101112131415161718192021# 添加指定文件到暂存区$ git add [f ... Hexo博客与主题配置文件备份与恢复 发表于2024-09-28|Hexo•Butterfly 前言hexo d上传部署到github的其实是hexo编译后的文件,是用来生成网页的,不包含源文件,也不包含主题配置文件。也就是上传的是在本地目录里自动生成的.deploy_git里面。 其他文件 ,包括我们写在source 里面的文章,和配置文件,主题文件,都没有上传到github。本篇文章就是为解决hexo备份无法包含主题配置文件的问题 备份博客创建新的仓库重新创建一个仓库来专门存放所有的配置文件创建一个仓库,勾选README 获取.git文件夹原始的博客文件夹只有.deploy_git,是没有.git文件夹的,于是我们先去桌面或者哪里随便一个地方,把刚刚的hexo分支给clone下来。然后剪切出里面的.git文件夹,复制到现在的博客文件夹中。 1git clone https://github.com/dida303/hexo-backup.git 需要把主题文件中的.git文件删掉,因为git不能嵌套上传。 备份到远程仓库通过如下命令将本地文件备份到远程仓库 123git add .git commit -m "backup"git push 经常备份12 ... Cloudflare 15年SSL证书及宝塔面板配置SSL证书 发表于2024-09-27|Cloudflare•宝塔•SSL 前言搭建网站的SSL证书一般都是使用Let's Encrypt的免费证书,需要每3个月续期,比较麻烦。如果网站使用了Cloudflare的代理(即开启小云朵)则推荐使用Cloudflare的15年证书。 申请15年SSL证书CF后台->SSL->源服务器->创建证书 保存好私钥的数据,此页面后无法再次查看! 宝塔面板配置证书宝塔后台——找到对应的网站——点击设置——SSL地方选择“其他证书”,复制对应的密钥进来就可以了。 按照下图的格式放,Private Key和BEGIN CERTIFICATE分别放对应位置。 Cloudflare SSL配置CF的默认配置为灵活,需要配置为完全或完全(严格),如果不重新配置,你将会得到一个重定向次数过多的打不开网站。 总结优点是15年,不需要自己为证书牵挂,缺点就是要依赖小云朵的CDN。 Cloudflare R2图床搭建 发表于2024-09-23|Cloudflare•图床 准备Cloudflare账户一个域名启用R2需要绑定一个支付方式,VISA和万事达卡,也可以绑定Paypal国区账户(可以绑定银联卡)。 Cloudflare配置存储桶 创建存储桶名称随便写,位置选亚太地区APAC 绑定域名Cloudflare配置了.dev子域,但是在国内环境下访问不畅,所以需要添加我们的自定义域名在刚才创建的test下链接在Cloudflare解析好的域名设置公开访问,如果不设置,上传图片后,是不能直接在公网访问!现在就能在存储桶中上传图片了 使用 PicGo 上传图片到 R2创建R2 API令牌名称随意,权限选对象读和写,其他默认记录以下数据,访问ID和访问密钥,只出现一次 PicGo配置自动上传图床Picgo地址安装S3插件配置应用密钥 ID填之前创建 API 令牌时获得的访问密钥 ID应用密钥填之前创建 API 令牌时获得的机密访问密钥桶填之前的存储桶的名称文件路径按照个人喜好填写,这里我填的是{fileName}.{extName}地区填apac自定义节点填https://<帐户 ID>.r2.cloudflarestorag ... 12 Gehina 文章 14 标签 13 分类 0 公告 欢迎来到我的博客,希望我日常学习收集的资料对你有所帮助:) Vercel托管地址:blog.ac2g.com Cloudflare托管地址:gehina.com 最新文章 Redis主从复制原理及配置2024-10-19 Redis持久化:AOF介绍及优劣2024-10-18 Redis持久化:RDB介绍及优劣2024-10-17 Mysql事务概念笔记2024-10-13 LeetCode每日一题2024-10-09 标签 宝塔 Hexo Mysql LeetCode SSL 图床 Cloudflare Butterfly VSCode Curl Markdown Redis Git 归档 * 十月 20246 * 九月 20248 网站资讯 文章数目 : 14 已运行时间 : 36 天 本站总字数 : 16.6k 最后更新时间 : 28 分钟前 ©2020 - 2024 By Gehina 框架 Hexo|主题 Butterfly 簡 1. 1 It's Going Down Now アトラスサウンドチーム 2. 2 Deep Breath Deep Breath -Reincarnation Reload- ATLUS GAME MUSIC / Lotus Juice / 高橋あず美 / アトラスサウンドチーム 3. 3 Heartful Cry (P3R ver.) アトラスサウンドチーム 4. 4 Don't 高橋あず美 / Lotus Juice / アトラスサウンドチーム 5. 5 遺サレタ場所/遮光 岡部啓一 6. 6 Calling Metro Boomin / Swae Lee / Nav / A Boogie Wit da Hoodie 7. 7 春日影 (MyGO!!!!! ver.) MyGO!!!!! 8. 8 Die For You VALORANT / Grabbitz 9. 9 Self Love Metro Boomin / Coi Leray 10. 10 キミの記憶 -Reload- アトラスサウンドチーム 11. 11 Full Moon Full Life 高橋あず美 / Lotus Juice 12. 12 Changing Seasons -Reload- アトラスサウンドチーム / 喜多條敦志 13. 13 Disconnected 高橋あず美 / Lotus Juice / アトラスサウンドチーム 14. 14 Brand New Days -Reload- 高橋あず美 / アトラスサウンドチーム It's Going Down Now - アトラスサウンドチーム 00:00 / 00:00 作词 : Lotus Juice 作曲 : 喜多條敦志 编曲 : 喜多條敦志 It's those unintelligent monsters, ain't it? (这就是那些愚蠢的怪物,对吧?) What are they thinking? Please explain it (它们在想什么?请解释一下) Don’t really need this crap, can't waste time (不要废话连篇,不能浪费时间) What I possess, can’t copy and paste (我所拥有的,独一无二) I'm doing it better (我会脱颖而出) Never settling for another regular (永远不甘平庸) Letter to my enemies, hey, I'm telling ya (向我的敌人投下战书,嘿,我告诉你) Breaking ya down to the level of molecular ( 我会把你碾成粉末) Better be wise when you're choosing battles, mostly babbles (选择战斗时最好明智些,大多都是胡言乱语) You know one of those big time shady foe foes ain’t worth fighting for (你明白并不值得为它们中的任何一个动手) Drop these bars in my sleep and a few more tricks up my sleeve (我在梦中展示绝技 我在袖中藏尽把戏) It's way too late for you to leave now (Get Ready!) (现在逃走已为时已晚(做好准备!)) Disturbing the peace (扰乱宁静) Look into my eyes (注视我的眼睛) Now tell me the things you blabbing about behind my back (把你背着我所说的闲言碎语如实招来) The tenacity (坚如磐石) I hold it's hard to break down (你无法攻破我的防御) It's too late for apologies (如今道歉已无济于事) It's going down now (你会被我击倒) You're thirsty for blood, actually craving for love (你渴望鲜血,实际上只是渴求爱) What you only want is dub, greed makes you go numb (名利是你唯一所求,贪婪使你麻木不仁) Purposefully blocking good thoughts (故意将好想法封锁于心) Hey please, doctor, doctor, he’s about to be that patient (拜托,医生,医生,他马上就是病人了) 'cause I’m about to knock him out cold (Bring him back, please!) (因为我会把他打倒在地(带他回来,快!)) Whole 'lotta moves I make on you like dance floor and (我所做的行动都能使你如同身处舞池之中) During this beat down you probably wish that you could fast-forward (Oh!) (在这场挨打中你或许希望时间能够快进(噢!)) Don’t you worry bout it, I'll save some room for your last words (别担心,我会给你留出说遗言的时间) After I do this, do that, and the third (在我完成一次又一次的攻击之后——) Disturbing the peace (扰乱宁静) Look into my eyes (凝视我的眼睛) Now tell me the things you blabbing about behind my back (把你背着我所说的闲言碎语如实招来) The tenacity (固若金汤) I hold it's hard to break down (你无法突破我的防线) It's too late for apologies (如今道歉已无济于事) It's going... (你将被我......) Some things may break me (有些事情可能会击垮我) But always get back up (但我总会重新站起来) New perspective gained from all of the pain and stress (从所有的痛苦和压力中获得新的思考) And when I do come back (当我回归之时) I’m stronger than ever before (我会比以往更加强大) So, kneel down (所以,给我跪下!) Disturbing the peace (扰乱宁静) Look into my eyes (直视我的眼睛) Now tell me the things you blabbing about behind my back (把你背着我所说的闲言碎语如实招来) The tenacity (坚不可摧) I hold it's hard to break down (你无法动摇我的意志) It's too late for apologies (如今道歉已无济于事) It's going down (你的败局已定!) 搜索 数据库加载中 --------------------------------------------------------------------------------