Coderyeah🍉
Redis的基本操作和运用
一. 什么是NOSQL?NoSQL(NoSQL = Not Only SQL ),意即“不仅仅是SQL”,它泛指非关系型的数据库。随着互联网2003年之后web2.0网站的兴起,传统的关系数据库在应付web2.0网站,特别是超大规模和高并发的交友类型的web2.0纯动态网站已经显得力不从心,暴露了很多难以克服的问题,而非关系型的数据库则由于其本身的特点得到了非常迅速的发展。 关系型数据库:有行有列,能组成二维表的数据库. 二. Redis1. 什么是RedisRedis 是一个高性能的 开源的、C语言写的Nosql(非关系型数据库),数据保存可以存储在内存中或者磁盘中。Redis 是以key-value形式存储,和传统的关系型数据库不一样。不一定遵循传统数据库的一些基本要求,比如说,不遵循sql标准,事务,表结构等等,redis严格上不是一种数据库,应该是一种数据结构化存储方法的集合。 2. Redis的特点 数据保存在内存,存取速度快,并发能力强。 它支持存储的value类型相对更多,包括string(字符串)、list(链表)、set(集合)、 zset(sorted set —有 ...
Redis安装说明
Redis安装说明大多数企业都是基于Linux服务器来部署项目,而且Redis官方也没有提供Windows版本的安装包。因此课程中我们会基于Linux系统来安装Redis. 此处选择的Linux版本为CentOS 7. Redis的官方网站地址:https://redis.io/ 1.单机安装Redis1.1.安装Redis依赖Redis是基于C语言编写的,因此首先需要安装Redis所需要的gcc依赖: 1yum install -y gcc tcl 1.2.上传安装包并解压然后将课前资料提供的Redis安装包上传到虚拟机的任意目录: 例如,我放到了/usr/local/src 目录: 解压缩: 1tar -xzf redis-6.2.6.tar.gz 解压后: 进入redis目录: 1cd redis-6.2.6 运行编译命令: 1make && make install 如果没有出错,应该就安装成功了。 默认的安装路径是在 /usr/local/bin目录下: 该目录以及默认配置到环境变量,因此可以在任意目录下运行这些命令。其中: redis-cli:是r ...
无题
RabbitMQ1.初识MQ1.1.同步和异步通讯微服务间通讯有同步和异步两种方式: 同步通讯:就像打电话,需要实时响应。 异步通讯:就像发邮件,不需要马上回复。 两种方式各有优劣,打电话可以立即得到响应,但是你却不能跟多个人同时通话。发送邮件可以同时与多个人收发邮件,但是往往响应会有延迟。 1.1.1.同步通讯我们之前学习的Feign调用就属于同步方式,虽然调用可以实时得到结果,但存在下面的问题: 总结: 同步调用的优点: 时效性较强,可以立即得到结果 同步调用的问题: 耦合度高 性能和吞吐能力下降 有额外的资源消耗 有级联失败问题 1.1.2.异步通讯异步调用则可以避免上述问题: 我们以购买商品为例,用户支付后需要调用订单服务完成订单状态修改,调用物流服务,从仓库分配响应的库存并准备发货。 在事件模式中,支付服务是事件发布者(publisher),在支付完成后只需要发布一个支付成功的事件(event),事件中带上订单id。 订单服务和物流服务是事件订阅者(Consumer),订阅支付成功的事件,监听到事件后完成自己业务即可。 为了解除事件发布者与订阅者之间的耦合,两者并 ...
PostgreSQL学习笔记-postgres(用户名)
一.PostgreSQL 创建数据库 CREATE DATABASE 创建数据库 1CREATE DATABASE dbname; createdb 命令创建数据库( createdb 是一个 SQL 命令 CREATE DATABASE 的封装。)12createdb [option...] [dbname [description]]createdb -h localhost -p 5432 -U postgres runoobdb dbname:要创建的数据库名。 description:关于新创建的数据库相关的说明。 options:参数可选项(-h:主机名、-p:端口、-U:连接数据库的用户名) pgAdmin 工具创建数据库 二.PostgreSQL 选择数据库 使用 \l 用于查看已经存在的数据库:1postgres=# \l 使用 \c + 数据库名 来进入数据库:123postgres=# \c testYou are now connected to database "test" as user "postgres&qu ...
无题
title:PLM解决方案概述-西门子一.数字化企业 西门子数字化企业软件套件 Design Program Simulate Build IOT(Internet of Things) 物联网,Cloud-Services Execute Automate Service Analyze
OpenFeign的使用--Hystrix的使用--Zuul网关的使用
一. 什么是FeignFeign是一个声明式的http客户端,使用Feign可以实现声明式REST调用,它的目的就是让Web Service调用更加简单。Feign整合了Ribbon和SpringMvc注解,这让Feign的客户端接口看起来就像一个Controller。Feign提供了HTTP请求的模板,通过编写简单的接口和插入注解,就可以定义好HTTP请求的参数、格式、地址等信息。而Feign则会完全代理HTTP请求,我们只需要像调用方法一样调用它就可以完成服务请求及相关处理。同时Feign整合了Hystrix,可以很容易的实现服务熔断和降级。 二.实例 创建一个springboot模块,并导入依赖 123456789101112131415161718192021 <dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web< ...
Nacos安装指南
Nacos安装指南1.Windows安装开发阶段采用单机安装即可。 1.1.下载安装包在Nacos的GitHub页面,提供有下载链接,可以下载编译好的Nacos服务端或者源代码: GitHub主页:https://github.com/alibaba/nacos GitHub的Release下载页:https://github.com/alibaba/nacos/releases 如图: 本课程采用1.4.1.版本的Nacos,课前资料已经准备了安装包: windows版本使用nacos-server-1.4.1.zip包即可。 1.2.解压将这个包解压到任意非中文目录下,如图: 目录说明: bin:启动脚本 conf:配置文件 1.3.端口配置Nacos的默认端口是8848,如果你电脑上的其它进程占用了8848端口,请先尝试关闭该进程。 如果无法关闭占用8848端口的进程,也可以进入nacos的conf目录,修改配置文件中的端口: 修改其中的内容: 1.4.启动启动非常简单,进入bin目录,结构如下: 然后执行命令即可: windows命令: 1startup.cm ...
MySQL中的锁和Redis的分布式锁的详细介绍
一. 为什么需要锁当多个事务[并发]操作同一批数据的时候,如果不加锁,就无法保证事务的隔离性,最后导致数据错乱。加锁是为了保证并发操作下数据的正确性。 二. MySQL中有哪些锁 按加锁机制可分为:乐观锁、悲观锁 基于锁的属性分类:共享锁(读锁)又称S锁、排他锁(写锁)又称X锁 基于锁的粒度分类(范围大小):行级锁((innodb )、表级锁( innodb、myisam)、页级锁( innodb引擎)、记录锁、间隙锁、临键锁 基于锁的状态分类:意向共享锁、意向排它锁(一般不用) 三. 什么是共享锁和排他锁 什么是共享锁(share Lock):允许事务读一行数据,具有锁兼容性质,允许多个事务同时获得该锁。共享锁(share lock):共享锁又称读锁,简称S锁;**当一个事务为数据加上读锁之后,其他事务只能对该数据加读锁,而不能对数据加写锁,直到所有的读锁释放之后其他事务才能对其进行加持写锁**。共享锁的特性主要是为了支持[并发]的读取数据,读取数据的时候不支持修改,避免出现重复读的问题。在select语句末尾加上lock in share mode关键字。 123# 共享锁se ...
mybatis的介绍和使用
一. mybatis是什么? MyBatis是一个ORM的数据库持久化框架; Mybatis底层还是原生的JDBC代码,对JDBC代码的封装。 二. 什么是ORM ORM:对象关系映射(Object Relational Mapping,简称ORM):是一种为了解决面向对象与关系数据库存在的互不匹配的现象的技术; ORM原理: 以一定的映射方式,把实体模型和数据库关系进行映射; ORM框架启动时加载这些映射和数据库配置文件连接数据库; ORM通过对最原生jdbc的封装,并提供更加便利的操作API; Dao通过ORM提供的便捷API以对象的方式操作数据库关系。 三. 实现步骤 使用文档:文档使用地址; mybatis需要的jar包——》https://gitee.com/coderyeah/layui-module/tree/master/lib(地址); 先说一个核心对象:SqlSessionFactory,接下来,咱们就是要想方设法拿到这个核心对象; 要获取SqlSessionFactory,我们需要准备一个核心的Mybatis-config.xml文件,然后通过 ...
maven的介绍环境安装
一. 什么是maven? maven: 是专门用于构建和管理Java相关项目的工具; 构建:指自动构建,项目从开发到上线的一系列步骤; 管理:指管理项目包架构。 二. maven的安装 Maven 是一个基于 Java 的工具,所以要使用Maven首先保证电脑的Java环境可用; 从网上下载 Maven:http://maven.apache.org/download.html; 绿色安装指解压即可用; 系统环境变量配置:找到自己的解压安装目录 配置Path:%MAVEN_HOME\bin% 检查是否配置成功 mvn -v 三. 配置镜像和本地仓库 在maven的settings.xml文件里的mirrors节点,添加如下子节点,代表使用阿里的镜像仓库: 123456<mirror> <id>aliyunmaven</id> <mirrorOf>*</mirrorOf> <name>阿里云公共仓库</name> <url>http ...
无题
title:Linux部署java项目 如何将前端 + 后端项目,使用 Shell 脚本,部署到 dev 开发环境下的一台 Linux 服务器上。如下图所示: 一、 安装 MySQL① 执行如下命令,进行 MySQL 的安装。 123456789## ① 安装 MySQL 5.7 版本的软件源 https://dev.mysql.com/downloads/repo/yum/rpm -Uvh https://dev.mysql.com/get/mysql57-community-release-el7-11.noarch.rpm## ② 安装 MySQL Server 5.7 版本yum install mysql-server --nogpgcheck## ③ 查看 MySQL 的安装版本。结果是 mysqld Ver 5.7.37 for Linux on x86_64 (MySQL Community Server (GPL))mysqld --version ② 修改 /etc/my.cnf 文件,在文末加上 lower_case_table_names=1 和 vali ...
JVM常见面试题
一.jvm内存区域划分PS:类加载子系统,本地方法库,执行引擎,运行时数据区。 类加载器子系统 :字节码加载 运行时数据区 : 线程运行涉及到的区域 执行引擎 :程序执行的引擎 本地方法库 :接入其他语言lib库 程序计数器程序计数器(Program Counter Register)是一块较小的内存空间,它可以看作是当前线程所执行的字节码的行号指示器。 1由于Java虚拟机的多线程是通过线程轮流切换、分配处理器执行时间的方式来实现的,在任何一个确定的时刻,一个处理器(对于多核处理器来说是一个内核)都只会执行一条线程中的指令。因此,为了线程切换后能恢复到正确的执行位置,每条线程都需要有一个独立的程序计数器,各条线程之间计数器互不影响,独立存储,我们称这类内存区域为“线程私有”的内存。 虚拟机栈与程序计数器一样,Java虚拟机栈(Java Virtual Machine Stack)也是线程私有的,它的生命周期与线程相同。 每个方法被执行的时候,Java虚拟机都会同步创建一个栈帧(Stack Frame)用于存储局部变量表、操作数栈、动态连接、方法出口等信息。每一个方法被调用直 ...
avatar
🐟认真摸鱼中
Coderyeah🍉
Future is now 🍭🍭🍭
前往小窝
公告栏
小站资讯
文章数目 :
93
本站总字数 :
28.3w
本站访客数 :
本站总访问量 :
最后更新时间 :
空降评论复制本文地址
随便逛逛昼夜切换阅读模式关于博客美化设置切换全屏打印页面