- 博客(25)
- 收藏
- 关注
原创 Hadoop-HDFS API+工作机制简述
这是一种分布式的文件系统,用于管理在不同机器上的文件存储,通过目录树的方式来定义文件存储位置。适合一次写入,多次读出的情况。一个文件的修改只能在末尾追加,而不能在中间修改。
2023-06-01 15:33:35
363
原创 Redis集群 解析+配置
在连接入一个集群内的master写入时,需要加上 -c参数,表示路由到对应的服务器范围,不需要手动转移到对应槽位的服务器;key到服务器的落下规则:对key进行哈希计算,得到哈希值后就可以确定在哈希环上的位置,之后每次从此顺时针(服务器哈希-key哈希为正)寻找服务器,寻找到第一台服务器(服务器哈希-key哈希最小)就是要访问的服务器。简单来说,如果集群中的master写入的数据没有来得及同步给它的slave就宕机了,那么slave会顶替master的位置,但是就没有这条未同步的数据,这样就写丢失了。
2023-04-25 21:01:18
405
原创 Redis主从复制 + Redis哨兵
哨兵的默认端口是26379,如果从节点存在密码,需要在哨兵配置文件中配置sentinel auth-pass 使得哨兵可以从这些节点中选取新的主节点;指的是,一个slave也可以作为其他slave的master,使得Redis之间的连接形成链条传递,这样可以减少主master的压力;如果少数的哨兵宕机不影响其他哨兵进行故障转移,并且哨兵必须部署中不同机器上,而且哨兵不进行高并发等性能要求高的工作,不易宕机;主机出现问题后,从机不会变成主机,从机中的数据仍然可以访问,等待主机再次上线;配置从库而不配置主库;
2023-04-18 10:23:48
216
原创 GAMES101现代计算机图形学入门——着色Shading(笔记+部分概念解析)
着色就是对于图像引入不同的明暗和颜色差异,在图形学上理解为对不同的物体应用不同的材质的过程。
2023-04-17 19:35:34
643
原创 Redis事务、管道、发布订阅
Pipeline可以一次发送多条命令到服务端,服务端依次处理后,只通过一条响应携带多个结果返回即可,这样可以减少客户端和Redis的通信次数。而管道的原理就是队列,保证先进先出。Redis是一种客户端到服务端的模型,等到Socket监听到命令,通常情况下是阻塞等待的,每条命令消耗一个RTT(Round Trip Time)往返时间。Redis客户端可以订阅任意数量的频道,当有新的消息发布时,所有订阅了频道的客户端都会接收到这个消息;管道的执行方式是在终端执行的,不具备原子性,而原生批处理是原子操作。
2023-04-15 18:04:25
265
原创 git概念简述和操作命令
主流的互联网项目中都会涉及项目的资源管理,如代码资源、文档资源等。所以,就需要使用SCM(Software Configuration Management)软件配置管理来进行版本控制、变更控制的规程,对软件开发项目工作成功的保护。在实际开发中包含了许多的SCM软件,如VSS、CVS、SVN等软件,但这些软件需要中央服务器来对项目进行存储和管理,数据安全性较差;而Git是一种分布式的版本控制,适合全方位工程大小的管理,数据安全性也较高。
2023-04-13 16:46:14
84
原创 Redis持久化技术
持久化的原理就是将内存中的数据写入硬盘进行保存,持久化的原因就是需要保证出现意外情况下,不出现缓存全部消失导致数据库负载过高崩溃的情况。
2023-04-13 09:55:48
91
原创 Redis7 10种数据类型和相关常用命令总结
一个key对应一个value;String是二进制安全的,Redis的String可以包含任何类型的数据Redis中value字符串最多是512M。
2023-04-09 09:59:45
389
原创 Redis介绍和安装流程
单线程模型:优点:可维护性高,没有并发操作带来的问题(执行顺序不确定,线程切换开销,加锁/解锁问题)缺点:性能较低,不能利用多核多线程模型:优点:结合了单线程和多线程的优点缺点:在主线程处理任务队列时仍是单线程,不能算作完全的多线程模型。
2023-04-09 09:54:20
100
原创 VueRouter + Vuex + mock.js
动态路由是指,把路由地址中的某些可变部分定义为参数项,从而提高路由的复用性,可以使用冒号来定义一个参数项,这个参数项指的是路由路径中的一部分,并且可以通过route.params.名称 在跳转的组件中获取。如果需要更新数据,应该在mutations中定义一个专属的方法,并且在对应组件的method方法中触发这个方法即可,使用this.$store.commit(方法名称)即可。另一种获取参数的方式是,在目标组件中定义一个参数,在路由映射时设置props = true,就会把参数传递。
2023-04-07 10:04:34
195
原创 Vue+Axios发送网络请求,跨域问题和配置方法
对于简单请求,CORS的策略是在请求时在请求头中加一个Origin字段;网络请求一般在页面加载的时候发送,在访问正确服务器端口号时,通过解析json字符串来获取数据(所以后端控制器返回值需要直接返回List或者对象而不是其他格式的字符串),axios发送的数据也是json字符串。预检请求将真实请求的信息,包括请求方法、自定义头字段、源信息等加到HTTP头信息字段,询问服务器的许可。为了保证浏览器的安全,一般不允许不同源的客户端脚本在无授权的情况下读写对方的资源,称为同源策略,这是浏览器安全的基石。
2023-03-31 20:23:52
2772
原创 Vue组件使用入门
安装完成后所有第三方资源会放在node_modules目录,也会被记录在package.json中,如果项目中不存在node_modules目录,则可以安装后再运行。//自定义一个标签,使得Movie被其他vue引入时,标签中有title属性。自定义一个标签,使得Movie被其他vue引入时,标签中有title属性。文档 https://element.eleme.cn/#/zh-CN。在template在对应位置使用组件名称的标签来引用组件。
2023-03-31 20:19:17
86
原创 Vue基础开发快速入门
vue是一套用于构建用户界面的渐进式框架提供了MVVM数据绑定和一个可组合的组件系统提供尽可能简单的API实现响应式惧绑定和可组合的视图组件。
2023-03-29 17:37:46
218
原创 SpringBoot + Mybatis Plus 入门
提供了生产级的服务监控方案;调用selectPage方法,需要传入一个Page对象,Page中需要设置起始位置索引和每次索引的条数,以及可以传入一个queryWrapper来设置查询条件,Ipage是一个表述分页查询结果的类,其中提供了一些方法和查询得到的内容。对象关系映射,解决面向对象与关系型数据库存在的不匹配,帮助程序员完成对象和数据库的数据之间的映射,本质上是减少了编程中操作数据库的编码。拦截器是Web系统中常见的操作,可以拦截一些请求做出统一处理,主要是多个业务需要的功能,都可以使用拦截器完成。
2023-03-29 11:50:56
242
原创 SpringMVC学习笔记
MVC是一种软件架构思想,将软件按照 Model-View-Controller 来构建用户通过视图层发送请求到服务器,被服务器端的Controller接收,Controller调用相应的Model层处理请求,处理完毕将结果返回到Controller,Controller根据请求处理结果找到对应的View试图,返回给浏览器三层框架:表述层、业务层、持久层SpringMVC是Spring为表述层开发的解决方案,封装了Servlet特点
2023-03-27 18:45:09
196
原创 Spring学习笔记(完整版)
Spring是一种受欢迎的企业级Java应用程序开发框架,性能好、易于测试、可重用、轻量级https://spring.io/projectsSpring家族的基础,几乎所有其他服务都给予此IOC:Inversion of Control,反转控制;不再自己创建对象,而是接收Spring提供的对象,不需要再关心全部的实现细节DI:Dependency Injection,依赖注入;DI是IOC的另一种表述方式和实现方式,即如果内部需要一些依赖,只需要提前进行依赖配置即可自动生成需要的依赖对象,不需要手动创建
2023-02-24 20:46:57
320
原创 MyBatis学习笔记
MyBatis下载地址:https://github.com/mybatis/mybatis-3/releasesMysql
2023-02-20 16:35:16
341
原创 Maven学习笔记 (快速入门版)
项目构建:提供标准、跨平台的自动构建依赖管理:管理项目依赖的资源(jar包),避免版本冲突统一开发结构:提供标准的、统一的项目结构
2023-02-17 14:48:37
187
原创 简单图像滤镜功能的Java实现
RGB图片: 对于图片中的像素, 使用Red, Green, Blue 三种颜色共同得到一个最终的显示颜色, 其数值均在0 - 255 之间在Java中对于图像的处理可以在使用IO流得到的BufferedImage类的实例操作, 也可以读入矩阵进行操作BufferedImage类实例中会提供一个Graphics实例, 可以直接对BufferedImage实例进行操作操作前的原图。
2022-11-25 16:17:31
882
原创 LeetCode 基础题目2
思路是从下往上,二维数组的每行表示的是从该位置起,之后的字母在串中可以被最早找到的位置,得到这样的数组需要从下往上(从后往前)更新,每次更新本字母所在的行的该字母位置为串中的位置,其余为上一层数组的值。如果找到了一个字符的位置不为字符串末尾,则到达该字符的下一行开始寻找这个字符之后是否能找到其他字符。这也是白给的题目,1分钟秒了,通过前序遍历可以访问从根到叶子节点的路径,也可以说是分治,到达叶子节点后将值计入答案即可,每到达一个节点都需要将之前节点的值乘10再加上节点的值得到当前路径的和,并传入子节点。
2022-11-03 17:48:12
66
原创 Java基础复习(2)
编译器允许一个对象获得子类的类型,但是实际只应该允许兼容的向下转型或重新获得自己的类型,否则可能访问到不存在于自己内的方法等方法导致bug。对于一个对象,其可以拥有的类型包括自己的类型以及所有父类的类型(Java不存在多继承问题,可以多层继承),也可以拥有自己的子类的类型。执行后,A独有的方法失效,重写的方法保留,此外仅可使用父类的方法(多层继承时,可以使用路径上的父类的方法)几乎所有父类的内容,包括成员方法和属性,除private修饰的内容。向上转型(安全,自动转型)先向上转型,再向下转型。
2022-10-30 20:03:04
66
原创 Java基础复习(1)
当同名方法所传入的参数类型、数量、顺序不同时,该方法可以被重载并可以做出不同的行为,与其返回值类型无关。自定义的构造方法,会使得默认构造失效,如需无参构造需要显式表示。进程中该类只能有一个实例,并且必须由自己创建并提供给其他对象。可以直接使用类名来调用,如果用实例调用变量和常量则相同。创建型模式的一种,在工厂模式中,实例化时直接返回新实例。类是抽象的,描述一类具有相同属性和行为的对象。隐式构造,无参构造,在无显式构造时可用。限制代码的使用范围,对项目结构进行管理。
2022-10-28 17:50:07
428
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人