呆贝斯的地盘

呆笨死,唯有勤学!

网站安全学习笔记

......

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

RabbitMQ学习笔记

......

MQ的概念 MQ全称 Message Queue(消息队列),是在消息的传输过程中保存消息的容器,用于分布式系统之间的通讯。 AMQP,即Advanced Message Queuing Protocol(高级消息队列协议),是一个网络协议,是应用层协议的开放标准, 为面向消息的中间件设计。基于此协议的客户端,消息中间件可传递消息,并不受客户端、中间件不同产品, 不同开发语言的限制,200...

Nginx学习笔记

......

Nginx基本概念 Nginx(发音为“engine-x”)是用于 HTTP、HTTPS、SMTP、POP3 和 IMAP 协议的开源反向代理服务器,以及负载均衡器、 HTTP 缓存和 Web 服务器(源服务器)。nginx 项目一开始就非常关注高并发、高性能和低内存使用,性能是其最重要的考量, 实现上非常注重效率,能经受高负载的经验,有报告表明能支持高达50000个并发连接数。 一个...

Redis学习笔记

......

Redis数据库介绍 Redis是一个开源(BSD许可),内存存储的数据结构服务器,可用作数据库,高速缓存和消息队列代理。 它支持字符串、哈希表、列表、集合、有序集合,位图,hyperloglogs等数据类型。 内置复制、Lua脚本、LRU收回、事务以及不同级别磁盘持久化功能,同时通过Redis Sentinel提供高可用, 通过Redis Cluster提供自动分区。官方给出的数据显示能够...

QWeb学习笔记

......

介绍 数据输出 条件式 循环 属性 设置变量 调用子模板 高级输出 弃用指令 esc raw Python专属指令 独家指令 调试 渲染缓存 帮助 介绍 QWeb 是 Odoo 2使用的主要模板引擎。它是一个...

Docker部署Odoo16项目

...

准备工作 创建一个如下目录文件夹。 odoo16_addons ├── bin ├── local-addons // 个人开发的插件 ├── Dockerfile ├── docker-compose.yml ├── odoo.cfg // odoo项目配置文件 ├── requirements.txt ...

登陆方案学习笔记

...

主流Web应用是基于HTTP协议的,而HTTP协议是无状态的,就是服务器不知道谁发送这个HTTP请求,无法识别用户身份。 登录态就是服务器用来区分用户身份的,同时对用户进行记录的技术方案。怎么实现用户的登录态呢?常见的实现流程如下: 客户端用户输入登录凭据(如账户和密码),发送登录请求。 服务端校验用户是否合法(如认证和鉴权),合法后返回登录态,不合法返回第1步。 合法后携...

文件存储系统学习笔记

...

简介 go-fastdfs是基于HTTP协议的分布式文件系统,大道至简,运维和扩展更简单,高性能、高可靠、无中心、免维护。 最佳实践 海量存储不开启文件token认证功能。 尽量标准上传,上传后业务保存Path,在业务使用时再拼接域名。 断点续传,上传后要用文件id置换成Path。 尽量使用物理服务器部署,主要压力或性能在IO。 避免小文件合并,后期无法删除小文件。 ...

Django REST Framework 学习笔记

...

介绍 DRF是一个强大灵活的Django工具包,用于在Web后台构建Restful接口。 你可以在一个Web页面上浏览自己提供了哪些API,并且可以通过这个页面测试这些API 你不用自己写一套接口鉴权代码了,提供了各种开箱即用的API认证授权工具,如OAuth2 你不用自己写大量的CRUD接口了,简单配置即可 你不用自己写大量的条件查询接口了,简单配置即可 你不用自己写...

Python的进程、线程和协程学习笔记

...

并发与并行 在操作系统中,某一时间段,几个程序在同一个CPU上运行,但在任意一个时间点上,只有一个程序在CPU上运行。 并发 如果系统只有一个CPU,当有多个线程时,那么CPU不可能真正同时进行多个线程,CPU的运行时间会被划分成若干个时间段, 每个时间段分配给各个线程去执行,一个时间段里某个线程运行时,其他线程处于挂起状态,这就是并发。 并发解决了程序排队等待的问题,如果一个程序发生阻塞...

base64学习笔记

...

概述 base64是一种用64个字符来表示任意二进制数据的方法,用记事本打开exe、jpg、pdf这些文件时,我们都会看到一大堆代码, 因为二进制文件包含很多无法显示和打印的字符,所以,想要记事本这样的文本处理软件能处理二进制文件, 就需要一个二进制到字符串的转换方法,base64就是一个最常见的二进制编码方法。 编码过程 base64的原理很简单,选出64个字符——小写字母a-z, 大写...

HTTPS学习笔记

...

前言 了解https之前需要了解对称加密和非对称加密、http的弊端。 http的弊端 由上图可见,http在传输数据过程中,所有数据都是明文传输,自然没有安全性可言。 https使用了混合加密算法(对称加密和非对称加密),可以用密钥加密或还原数据,只要确保密钥不被第三方获取,就能确保数据传输的安全。 对称加密 vs 非对称加密 对称加密 优点:算法公开、计...

设计模式学习笔记*

......

创建型模式 抽象工厂(Abstract Factory):多套方案 抽象工厂模式是对创建不同的产品类型的抽象。对应到工作中,我们的确应该具备提供多套方案的能力,这也是我们常说的, 要提供选择题。当你有这样的前瞻意识,一般也会被打上思考较多的标签,但是内在来说,的确想问题更加全面了。 生成器(Builder):善于分解 生成器模式是对一个个体的创建过程进行细分,拆解为不同的创建部分。这个对...