- 博客(64)
- 问答 (2)
- 收藏
- 关注
原创 【文件系统】硬盘分区-挂载-内核参数调优-VFS
lost+found ext家族文件系统初始化都会有的一个文件夹,它是当文件系统异常的时候,提供一些片段数据来恢复。文件系统异常这下面才会有数据MBR(Master Boot Record)主引导记录0柱面0磁头1扇区为主引导扇区有三个部分:主引导程序grub446byte,硬盘分区表DPT64byte,分区结束标记2byte有主引导程序grub2 – /boot里的文件系统的驱动 – 内核文件vmlinuz,initranmfs --systemd进程和kthread进程。
2023-10-16 16:25:23
388
原创 【自学开发之旅】Flask-前后端联调-异常标准化返回(六)
服务端验证:拿到token之后,按照里面的header+payload+服务端保存的secretkey一起进行相同算法加密。得到新的签名,再和客户端传递的签名比较,一致就验证通过。为了得到签名部分,你必须有编码过的header、编码过的payload、一个秘钥,签名算法是header中指定的那个,然对它们签名即可。得到token,复制粘贴,然后GET访问127.0.0.1:9000/v1/product,HEADERS中代token字段访问。两种验证:api验证,token验证。登录:token验证。
2023-09-17 16:35:48
720
原创 【自学开发之旅】Flask-会话保持-API授权-注册登录
使用这种方法,你可以在不修改源代码的情况下添加或改变功能。使用Mixin:Mixin是一种设计模式,它允许你在不修改类的情况下,将额外的功能添加到类中。你可以创建一个Mixin类,其中包含你想要添加的额外方法,然后让这个类继承自原始类。:装饰器可以在不改变函数或方法代码的情况下,添加额外的功能。例如,你可以使用装饰器来记录函数执行的时间,或者验证函数的输入。使用继承:如果你想要在不改变类的方法的情况下添加额外功能,你可以创建一个新的类,继承自原始类,并在新的类中添加额外的方法。
2023-09-17 11:00:47
999
原创 【自学开发之旅】Flask-restful-Jinjia页面编写template-回顾(五)
简单的说,ORM是通过使用描述对象和数据库之间映射的元数据,将程序中的对象自动持久化到关系数据库中。一种接口规范也是一种接口设计风格,一般来说api的设计都会遵循,他是表现层状态转移,它将每一类数据看做成资源,每一类资源又为其设计一种url,这种资源的增删改查通过http的动作(get post put delete)等方法来实现。对象关系映射,它不需要和复杂的sql语句打交道,直接操控对象就是操控数据库,把表映射为类,把字段映射为属性,每一行记录映射为对象,提高我们开发的速度,方便开发。
2023-09-14 22:12:28
650
原创 【自学开发之旅】Flask-数据查询-数据序列化-数据库关系(四)
这个错误是因为你的SQL查询中有一个在GROUP BY子句中未被聚合的列,这是MySQL的’only_full_group_by’模式所不允许的。对于ProKind类的对象可以通过pro_info属性查询到关联的ProductInfo,同时它为ProductInfo对象建立了kind属性,ProductInfo对象可以通过kind属性查询响应的ProKind信息。类.query.filter.(类.属性==“”).offset(3)limit(3).all().having(条件) #分组之后过滤条件。
2023-09-10 20:44:49
631
1
原创 【自学开发之旅】Flask-标准化返回-连接数据库-分表-orm-migrate-增删改查(三)
业务逻辑不能用http状态码判断,应该有自己的逻辑判断。想要前端需要判断(好多if…else),所以需要标准化,标准化返回。json标准化返回:最外面:data,message,code三个字段。data:返回的数据code:应用状态码:先设计好,成功-0,失败–登录失败1,注册失败2msg:返回的说明我们写的接口也要按照这个格式来添加libs/response.py然后修改返回:login.py连接数据库(为了避免频繁的打开关闭消耗过多资源)为了只连一次,绑到app上。
2023-09-09 16:09:28
812
原创 【自学开发之旅】Flask-回顾--对象拆分-蓝图(二)
接口:一般来说,是两个程序使用的,互相通信,A程序暴露一个接口,B程序调用即可。后端flask写好了接口,前端一般不涉及数据库,不能判断能否登陆成功(nodejs也可以虽做后端,只是不普遍),所以前程调用后端的接口(login接口),把账号密码参数传递过来,然后后端再去数据库里判断是否正确,再去做一步操作,并返回给前端登录是否成功。记住传过来的东西都在我们flask的request对象,这个对象不需要我们管,flask框架已经给我们搞好了,需要什么,就用request的属性拿就好了。2.url携带参数:?
2023-09-06 14:05:21
438
原创 【机器视觉】HALCON目标图像检测实践(零基础版非常有用!)
灰度阈值处理+特征提取ps:思考:如何通过阈值处理后,后续缩小检测目标范围?二值化、梯度阈值、自适应阈值等方法来增强图像的对比度,从而突出目标特征,进一步缩小检测目标范围。
2023-08-31 19:23:16
3914
原创 【自学开发之旅】基于Flask的web开发(一)
回答:1.首先flask的路由管理由两张表管理,一张url_map表,一张view_functions表,其中url_map中保存url和endpoint的映射关系,view_functions中保存endpoint和视图函数的映射关系。2.接收到请求之后,先解析http头部,拿到请求的url路径在url_map表里找,如果没有没有找到,直接返回"404 NOT FOUND",如果找到对应的endpoint,则在view_functions表里找到对应的function,然后交给它处理返回。
2023-08-30 22:26:25
1354
1
原创 【DevOps】Python+Golang(一)
在Go中,当我们声明一个变量时,编译器会分配一段内存区域来保存该变量的值,并使用其标识符来引用该内存区域。即:创建一个新的字符串对象时,先检查其是否已经存在池里,若存在,则返回现有对象的引用,所以相同字符串字面值的内存地址是相同的。在定义常量 b 的时候,我们没有显式地给它赋值,而是让它等于上一行的值,即常量 a 的值,这种方式称为“隐式赋值”。为避免,解释器不会对列表进行驻留优化,而是在需要时,根据需要创建新的列表对象,确保其独立状态。标识符(变量):是对象的引用,是指向对象的内存地址的指针。
2023-06-12 10:57:14
1536
1
原创 【Prometheus】mysqld_exporter采集+Grafana出图+AlertManager预警
mysql_exporter是用来收集MysQL或者Mariadb数据库相关指标的,mysql_exporter需要连接到数据库并有相关权限。既可以用二进制安装部署,也可以通过容器形式部署,但为了数据收集的准确性,推荐二进制安装。
2023-06-10 11:54:06
4732
原创 【Linux学习】性能监控所遇到的一些知识点
另外,在进程间切换时,操作系统需要将当前进程的所有状态信息保存到内存中,并加载新进程的状态信息,这也需要较大的时间和资源消耗。另外,在线程间切换时,只需要保存当前线程的部分状态信息(如程序计数器、寄存器等),并加载新线程的状态信息,相比起进程切换来说,消耗的资源和时间要少得多。通过使用交换分区,操作系统可以将不常用的数据和程序暂时存储在硬盘上,以便腾出更多的内存空间,使得正在执行的程序能够继续工作,并保证系统的稳定性。在Prometheus中,可以通过修改配置文件添加相应的监测规则。
2023-05-07 22:44:10
555
2
原创 【图数据库实践教程】Ubuntu22.04-Neo4j中文版安装及导入owl文件(通用教程)
【图数据库实践教程】Neo4j中文版安装及导入owl文件(通用教程)
2023-04-25 14:22:14
1886
1
原创 【Web 服务】攻坚克难nginx负载均衡的一天
假设有3台后端服务器A、B、C,当有一个请求到达负载均衡器时,第1个请求会被转发至服务器A,第2个请求会被转发至服务器B,第3个请求会被转发至服务器C,以此类推。例如,如果服务器A的权重是2,服务器B的权重是1,那么在分配请求时,服务器A将获得2次请求,服务器B将获得1次请求。这里,“www”是您要负载均衡的主机名,“VIP_Address”是虚拟IP地址,“RealServer1_IP”、“RealServer2_IP”和“RealServer3_IP”是要用于实际负载均衡的真实服务器的IP地址。
2023-04-23 18:20:03
416
原创 【Web服务】HTTP和DNS重要知识
在HTTPS通信中,服务器会将自己的公钥发送给客户端,客户端使用该公钥对服务器发送的数字证书进行验证,以确认服务器的身份和提供证书的机构的合法性。数字证书中包含了服务器的公钥、相关证书信息,并由证书颁发机构进行数字签名,这样就可以保证通信内容只能由合法的服务器所提供,并避免了中间人攻击等风险。其中,源服务器存储着原始内容,缓存服务器存储着已经复制的数据,并将其提供给用户请求的终端设备。CDN可以将用户请求的数据从源服务器复制到离用户更近的缓存服务器中,以降低用户请求的响应时间和减轻源服务器的负载。
2023-04-21 11:06:40
2050
原创 【Web服务】攻坚克难nginx的一天(一)
端口号是TCP/IP协议中预留的端口号,通常用于HTTPS(安全的HTTP)通信。HTTPS是在HTTP基础上加入了SSL/TLS协议进行加密的一种网络传输协议,它使用443端口来建立加密连接并保证数据传输的安全性。因此,许多网站的安全性都依赖于443端口的运行。
2023-04-17 19:41:28
413
原创 Python运维开发学习(一)
因此,集合中的元素必须是不可变的基本类型(如整数、浮点数、字符串等),或者是元组并且元组中的元素也必须是可哈希的。需要注意的是,如果一个元组或者列表包含了可变对象,那么虽然该元组或者列表本身是不可变的,但是其中的可变对象仍然可以被修改。相比之下,列表和元组并没有这样的限制,它们可以包含任何类型的对象,包括其他列表、元组和集合等可变对象。通过使用 .dockerignore 文件,我们可以避免不必要的文件和目录被包含在 Docker 镜像中,从而减小镜像的大小,提高镜像构建和传输的效率。
2023-04-15 11:44:47
778
原创 杂记2023-4-10
异地多活是一种分布式系统的架构设计,指将同一个系统部署在不同的地理位置的多个数据中心中,每个数据中心都可以独立地提供服务,同时也可以相互协同,使得整个系统具有更高的可用性和容错性。nginx的七层负载均衡是基于应用层的负载均衡,可以对HTTP、HTTPS、SMTP等应用层协议进行深度解析,根据协议的特性进行负载均衡。如果该文件已经存在,则会将公钥添加到文件的末尾,不会覆盖原有的内容。存储容量不同:Cookie的存储容量有限制,一般为4KB左右,而Session的存储容量相对较大,可以存储更多的数据。
2023-04-10 22:26:08
291
原创 [杂记]2023-4-9 flask......nginx......
FLASK写个接口对各种包的版本要求高啊,有点无奈诶,动不动就降低版本.(我想接触最新的东西!!!
2023-04-09 22:37:55
536
4
原创 【Kafka】日志收集分析平台搭建--问题总结(二)
例如,企业可以使用Kafka将所有的订单请求发送到Kafka中,然后使用Kafka消费者进行消费,将请求分配到不同的服务器上进行处理。因此,建议在设计Kafka集群时,考虑到实际需求和使用情况,选择合适的broker数量和副本数,以提供足够的容错性和可用性。总之,Kafka是一种支持高吞吐量、低延迟和高可靠性的数据处理平台,它可以处理大规模数据和实时数据,同时拥有良好的可扩展性和可靠性。消息传输和存储:Kafka具有良好的消息传输和存储能力,可以将消息传输和存储分离开来,从而提高系统的稳定性和可靠性。
2023-04-09 20:34:07
510
原创 【Kafka】日志收集分析平台搭建--问题总结(一)
负载均衡(Load Balancing)是将网络流量分配到多个服务器上,以便合理地利用服务器资源、最大限度地减少响应时间、避免单点故障,提高系统的可靠性、可用性和扩展性。负载均衡可以根据服务器的负载情况,动态地分配请求,从而达到均衡负载的目的。高可用(High Availability,简称HA)是指系统或应用在面对各种意外情况或故障时,仍然能够保持不间断运行的能力。高可用的目标是确保系统或应用能够在任何时候都可用,从而提高系统的稳定性、可靠性和可用性。
2023-04-09 20:20:50
762
原创 【Kafka】kafka日志收集平台搭建(二)
继上一篇博文初步搭建好kafka+zookeeper+filebeat的集群平台后,这次我们继续给此集群添加功能并完善.
2023-04-09 20:04:38
865
原创 【Kafka】日志收集分析平台搭建(一)
遇到的困难及解决方案:1、当时在配置文件(filebeat.yml)的输出导致我的服务启动不了,查看了日志,和官网,知道原来filebeat只能有一个输出,把另外一个输出(output)去掉,服务才正常启动。2、在yaml文件内容编写时,因为yml格式,缩进问题(或者少了“-”),导致我的配置一直没有生效。收获:1、学习,掌握了这部分知识2、之前对服务这个概念不是很清楚,现在更清楚了一些3、了解了这个网络,数据的走向。4、在项目的实施过程中,对信息,对文件备份的要求都提高了。
2023-04-08 12:04:20
819
原创 【MySQL每日七问】MySQL总结(四)
Keepalived是一种用于系统高可用性的软件,它使用VRRP协议来实现集群节点之间的状态同步和故障切换。VRRP协议:VRRP(Virtual Router Redundancy Protocol)是一种用于路由器冗余的协议,它可以将多个路由器组成一个虚拟路由器,使得网络中的主机可以通过这个虚拟路由器进行通信。VRRP协议使用了一个虚拟IP地址来代表整个虚拟路由器,同时还使用一个虚拟MAC地址来代表虚拟路由器的物理地址。
2023-04-08 12:00:36
639
原创 【MySQL每日七问】MySQL总结(三)
在传统的异步复制方式中,主服务器将数据更新操作写入二进制日志后就立即响应客户端的完成操作,而从服务器则根据自身的复制进程进行异步复制,这可能导致从服务器的数据落后于主服务器,从而导致数据不一致的情况。总的来说,master.info和relay-log.info文件都是MySQL数据库主从复制中的重要配置文件,它们记录了主服务器和从服务器的相关信息,使得从服务器能够正确地连接到主服务器,从而实现数据的复制。从服务器开启一个I/O线程,不断地从主服务器上读取二进制日志文件,并写入自己的中继日志中。
2023-04-08 11:57:37
425
原创 【MySQL每日七问】MySQL总结(二)
数据库二进制日志是数据库管理系统中的一种日志文件,用于记录数据库的所有更改操作。二进制日志记录了数据库中的所有更改操作,包括插入、更新、删除等操作。二进制日志可以用于数据恢复、主从复制等功能。
2023-04-08 11:49:53
934
原创 【MySQL每日七问】MySQL总结(一)
撞库是一种黑客攻击手段,指的是通过暴力破解的方式获取目标数据库中的账号和密码信息。一般来说,黑客会利用已经泄露的账号密码信息来尝试登录目标数据库,如果目标数据库中存在相同的账号密码,则黑客就可以成功登录,并获取目标数据库中的敏感信息。撞库攻击通常会使用字典文件或者暴力破解工具来进行,它们会尝试使用各种可能的组合来猜测账号密码。为了防止撞库攻击,我们需要采取一些安全措施,例如加强账号密码的复杂度和安全性、禁止使用弱密码、定期更换密码、启用多重身份验证等。
2023-04-04 22:34:43
868
原创 【MySQL】性能(压力)测试工具sysbench和tpcc的安装和使用
因为在国内,可能****(下不了),我是用了香港的服务器下,很快。然后直接用Xtfp传输过来。
2023-04-03 10:16:56
1379
原创 【MySQL】基于GTID的半同步主从复制(实践)
什么是GTID?全局事务标识符GTID的全称为Global Transaction Identifier,是在整个复制环境中对一个事务的唯一标识。它是MySQL 5.6加入的一个强大特性,目的在于能够实现主从自动定位和切换,而不像以前需要指定文件和位置。1、全局唯一,一个事务对应一个GTID2、替代传统的binlog+pos复制;使用master_auto_position=1自动匹配GTID断点进行复制3、MySQL5.6开始支持。
2023-04-03 09:35:18
1533
原创 【MySQL】主从复制过程(实践)
slave是一直连接到master的,传输层使用tcp,因为建立了连接。使用的账号和密码都是jiangda ,进行复制二进制日志使用。2个都是yes说明IO线程和SQL线程都启动了。
2023-04-03 08:58:56
176
原创 【MySQL】rsync+sersync文件实时同步
1、sersync是基于inotify开发的,类似于inotify-tools的工具,Sersync可以记录下被监听目录中发生变化的(包括增加、删除、修改)具体某一个文件或者某一个目录的名字,然后使用rsync同步的时候,只同步发生变化的文件或者目录,因此效率更高。2、rsync在同步的时候,只同步发生变化的这个文件或者这个目录(每次发生变化的数据相对整个同步目录数据来说是很小的,rsync在遍历查找比对文件时,速度很快),因此,效率很高。2、主要应用场景为数据体积大,并且文件很多。
2023-04-01 23:00:31
671
原创 【深入学习MySQL】零基础快速安装MySQL(5.7.40)及入门必需会的操作
已经编写好了一个脚本,直接执行脚本,就可以将MySQL装好,你也可以照着脚本,自己一条条执行(操作略微不同,意思一样,不要盲目复制粘贴!用另一台ip为192.168.1.150的linux的机器,和本机Windows机器去访问数据库,其中windows用Navicat。这时候,你需要去明白脚本里的代码,去仔细看看和理解,比如你的密码是‘Jiangda123#’在linux里看被哪些机器连接可以用‘w’命令,在MySQL里可以用。*.* 第一个*代表所有的库,第2个*代表库里的所有的表。
2023-03-28 17:57:19
808
原创 【ZABBIX】zabbix实践中的总结(二)
CDN(Content Delivery Network)即内容分发网络,是一种分布式的网络架构,旨在提高互联网内容传输的效率和速度。CDN通过将数据存储在离用户最近的节点上,使用户能够更快地访问到内容,从而提高用户体验和响应速度。通常情况下,用户请求访问某个网站或应用程序时,数据需要从远程服务器上传输到用户的本地设备上。这个过程可能会受到许多因素的影响,如网络延迟、带宽限制等等,从而导致用户体验不佳。
2023-03-28 13:15:24
500
原创 【ZABBIX】zabbix实践中的总结(一)
好的,我来介绍一下 Zabbix 的架构和原理。首先,Zabbix 是一款开源的企业级网络监控系统,它可以监控各种网络设备、服务器和应用程序的状态,并且支持自定义监控项和报警规则。下面是 Zabbix 的架构:Zabbix Server:Zabbix 的核心组件,主要负责接收和处理监控数据、存储数据、提供 Web 界面和 API 等功能。Zabbix Agent:运行在被监控设备上的代理程序,负责采集被监控设备的状态数据,并将数据发送给 Zabbix Server。
2023-03-28 13:08:10
1065
原创 【ZABBIX】zabbix监控软件5.0版本的安装和使用
zabbix服务器需关闭SELinux、开通防火墙相应端口或关闭防火墙。客户端需开通防火墙相应端口。服务器端口10051 客户端agent端口10050。此处实验环境server agent 系统为CentOS 7.9。ip地址为server:192.168.1.140 agent:192.168.1.141主要用来监控服务器操作系统层面的负载情况硬件层面 如(CPU温度、风扇转速电源功率等)
2023-03-28 12:49:59
539
原创 【Kubernetes】K8S学习阶段知识总结(三)
PV 和 PVC 是 Kubernetes 中实现持久化存储的两个核心概念,PV 是存储资源,PVC 是对 PV 的需求,它们之间存在一一对应的关系。PV 可以是集群中的物理存储资源或云存储资源,PVC 可以在应用程序中声明,Kubernetes 会根据 PVC 的需求自动查找或创建合适的 PV,并将其绑定到 PVC 上。VPA 的作用对象是 Pod 的资源需求(如 CPU、内存等),它通过监控 Pod 的资源使用情况,根据实际的资源需求自动调整 Pod 的资源限制和请求。
2023-03-24 22:18:58
775
原创 【Kubernetes】K8S学习阶段知识总结(二)
Kubernetes 中的卷是可插拔的,指的是 Kubernetes 中的卷是一个抽象的概念,允许使用不同的卷插件来实现存储,这些卷插件可以是本地存储、云存储,也可以是第三方存储。另外,使用云存储作为卷,可以使用 Kubernetes 中的 persistentVolumeClaim 类型的卷,通过创建一个 PersistentVolumeClaim 对象来声明需要的存储资源,Kubernetes 会自动找到一个可用的 PersistentVolume 来满足该需求,并将其挂载到 Pod 中。
2023-03-24 21:44:01
307
cmd执行yarn的命令一直就是显示个版本,也不继续往下运行了,一直不动了!!
2022-12-13
TA创建的收藏夹 TA关注的收藏夹
TA关注的人