呆贝斯的地盘

呆笨死,唯有勤学!

网站安全学习笔记

......

什么是网站安全? 互联网是一个危险的地方!我们经常听到有关网站因拒绝服务攻击或在其主页上显示修改(通常是有害的)信息而变得不可用的消息。 在一些出名的案例中,上百万的密码、邮件地址和信用卡信息被泄露给了公众,导致网站用户面临个人尴尬和财务威胁。 网站安全的目的是防止这些(或者说所有)类型的攻击。更正式点说,站点安全就是为保护站点不受未授权的访问、使用、修改和破坏而采取的行为或实践。 有...

Python学习笔记

......

Python 知识图谱 Python 入门 编译型语言和解释型语言 编程都是用的高级语言,计算机不能直接理解高级语言,只能理解和运行机器语言, 所以必须要把高级语言转成机器语言,计算机才能运行高级语言别写的程序。 编译型 解释型 Python程序文件的扩展名通常为.py。执行Python程序时,首先Python解释器将.py文件中的源代码翻译成中间码.pyc文件...

Docker搭建PostgreSQL一主二从架构

前提条件 3台服务器并安装Docker 配置PostgreSQL主节点 远程连接PostgreSQL主节点,依次运行以下命令,安装PostgreSQL。 输入mkdir postgresql命令,创建postgresql文件夹。 输入cd postgresql命令,进入postgresql文件夹。 输入vim doc...

记一次解决iframe嵌入网页无法免登录

问题场景 开发一个配合外部系统的一个子系统过程中,外部系统需要实现“一网通管”且通过单点登录方式实现免登录。目前通过外部系统传来sso_token信息,子系统返回一个重定向的response,外部系统在新标签打开是可以访问子系统的数据看板页面。在外部系统通过iframe方式将子系统嵌入其中时,无法查看数据看板页面,子系统跳转到的是登陆页面且输入密码后仍无法进入子系统。需要实现外部系统在if...

记一次给大表加索引

问题场景 业务表随数据增加已达亿级,需要加索引进行优化查询。 思考 直接添加索引会消耗很长时间,添加索引阶段会不会影响业务 解决方案 分批次添加索引 对于大表,可以考虑将添加索引的过程分为多个步骤,每次处理一部分数据。这可以减少单个操作的负载,以减小对生产环境的影响。 创建部分索引 创建部分索引,该索引仅包括部分数据,而不是整个表。这可以通过在索引创建语句中使...

记一次多磁盘挂载同一目录

问题场景 公司线上过期业务数据需要删除,删除前需要备份到本地一份。 思考 如何让传输速度够快? 分块多进程或多线程传输。 如何保证传输中断后,任务可以重新执行? 任务需要设置保活,传输失败能重新执行任务。 如何防止传输中断后,不至于全部重传,而是从中断处重新传送? 工具需要支持源目录和目标目录比较,传输增量部分。 远程文件同步到本地有哪些方式,优缺点? ...

记一次多磁盘挂载同一目录

问题场景 Ubuntu Server系统上将新添加三块容量分别为2T、2T、8T的磁盘挂载到/home/titi/workspace/fdfs/目录,文件系统为ext4。 思考 同一目录无法重复挂载,后挂载的会覆盖之前挂载的磁盘,需要将三块硬盘合并到一个逻辑卷后挂载。 基本概念: PE(Physical Extent) 物理块 PV(Physical Volume) ...

记一次文件存储系统升级和迁移

问题场景 公司文件存储目前使用自己搭建的FDFS文件存储系统。FDFS搭建在阿里云服务器上,单机部署,没有做集群高可用。 公司多个业务系统使用该FDFS,各个业务的数据也没有办法区分开,公司还要承担高昂的续费和扩容费用。 原文件存储系统缺点: 不具备高可用 存储的数据复杂,不容易区分 冗余数据很多,年份太久的数据不方便删除 续费和扩容价格高昂 思考 针对原文件存...

前端学习笔记

HTML/CSS/JS 请谈谈你对HTML5和CSS3新特性的理解。你在实际项目中如何运用这些新特性? HTML5新出了许多语义化标签(nav,header,main等)和API(canvas,webGL),语义化标签优点在于提高代码可读性和可维护性, 有利于搜索引擎更容易读懂(seo),有些特殊的屏幕阅读器可以通过分析语义化标签进行展示(比如盲人阅读器)。 CSS3新出了...

IO 多路复用 – SELECT VS POLL VS EPOLL

select select最早于1983年出现在4.2BSD中,它通过一个select()系统调用来监视多个文件描述符的数组,当select()返回后, 该数组中就绪的文件描述符便会被内核修改标志位,使得进程可以获得这些文件描述符从而进行后续的读写操作。 select目前几乎是所有平台支持,其良好跨平台支持也是它的一个优点,事实上从现在看来,这也是它所剩不多的优点之一。 select的...

RPC学习笔记

介绍 RPC(Remote Procedure Call)远程过程调用,简单的理解是一个节点请求另一个节点提供的服务。 本地过程调用 def add(a, b): total = a +b return total total = add(1, 2) print(total) 函数调用过程: 将1和2压入add函数的栈 进入add函数,从栈中取...

go和goland安装配置

安装 到 go官网下载找到对应安装包链接下载。 一路next安装,打开终端输入go version,如看到下图则代表安装成功。 打开GO111MODULE,更改go代理。 go env -w GO111MODULE=on go env -w GOPROXY=https://mirrors.aliyun.com/goproxy/,direct ...