未进化的程序猿
人生最苦痛的是梦醒了无路可走。做梦的人是幸福的;倘没有看出可走的路,最要紧的是不要去惊醒他。鲁迅
摘要: jQuery 实现table隔行变色 <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>Insert title here</title> </head> <script 阅读全文
posted @ 2020-12-28 22:27 甘茂旺 阅读(159) 评论(0) 推荐(0) 编辑
摘要: 通过CDN引入jQuery的几种方式 1)、百度 CDN <head> <script src="https://apps.bdimg.com/libs/jquery/2.1.4/jquery.min.js"></script> </head> 2)、新浪 CDN <head> <script sr 阅读全文
posted @ 2020-12-28 22:24 甘茂旺 阅读(1076) 评论(0) 推荐(0) 编辑
摘要: 1. 操作场景 MacOS 上虽然有 Docker Desktop 管理用起来挺方便的,但是如果想要更多直观的信息,就不如 web 端管理的方式舒服,但是在创建完成后,启动 portainer 的时候却出现报错信息: Failure Cannot connect to the Docker daem 阅读全文
posted @ 2020-12-28 21:51 甘茂旺 阅读(1293) 评论(0) 推荐(0) 编辑
摘要: 6. 使用SSH协议传输数据 6.1 Git支持的传输协议 由于Git的远程仓库并不在我们本地,当我们在使用远程仓库的时候(例如克隆、拉取、推送)就会涉及到数据的网络传输,Git支持多种数据传输协议 本地协议(Local) HTTPS 协议 SSH(Secure Shell)协议 Git 协议 我们 阅读全文
posted @ 2020-12-28 01:11 甘茂旺 阅读(550) 评论(0) 推荐(0) 编辑
摘要: 5、在IDEA中使用Git 5.1 在IDEA中配置Git 安装好IntelliJ IDEA后,如果Git安装在默认路径下,那么idea会自动找到git的位置,如果更改了Git的安装位置则需要手动配置下Git的路径。 选择File→Settings打开设置窗口,找到Version Control下的 阅读全文
posted @ 2020-12-28 01:03 甘茂旺 阅读(161) 评论(0) 推荐(0) 编辑
摘要: 4、使用TortoiseGit管理文件版本 4.1 TortoiseGit下载与安装 TortoiseGit是一款开源的Git图形界面工具,使用TortoiseGit可以简化Git相关的操作(本质上还是执行的Git相关命令)。 TortoiseGit下载地址: https://tortoisegit 阅读全文
posted @ 2020-12-28 00:48 甘茂旺 阅读(107) 评论(0) 推荐(0) 编辑
摘要: 3. Git常用命令 Git提供了很多命令来完成相应的操作,为了方便学习,我们将这些命令进行了分类。在学习命令的过程中会讲解一些Git相关的概念。 在本章节我们会学习到如下一些命令和概念: 环境配置 获取Git仓库 工作目录、暂存区以及版本库概念 Git工作目录下文件的两种状态 本地仓库操作 远程仓 阅读全文
posted @ 2020-12-27 23:57 甘茂旺 阅读(102) 评论(0) 推荐(0) 编辑
摘要: 2、Git代码托管服务 2.1 常用的Git代码托管服务 前面我们已经知道了Git中存在两种类型的仓库,即本地仓库和远程仓库。那么我们如何搭建Git远程仓库呢?我们可以借助互联网上提供的一些代码托管服务来实现,其中比较常用的有GitHub、码云、GitLab等。 gitHub( 地址:https:/ 阅读全文
posted @ 2020-12-27 23:01 甘茂旺 阅读(101) 评论(0) 推荐(0) 编辑
摘要: 1. Git概述 1.1 Git历史 Git 诞生于一个极富纷争大举创新的年代。Linux 内核开源项目有着为数众多的参与者。 绝大多数的 Linux 内核维护工作都花在了提交补丁和保存归档的繁琐事务上(1991-2002年间)。 到 2002 年,整个项目组开始启用一个专有的分布式版本控制系统 B 阅读全文
posted @ 2020-12-27 22:44 甘茂旺 阅读(83) 评论(0) 推荐(0) 编辑
摘要: 1.1 安装JDK 第一步:先将软件通过xftp5 上传到/opt 下 第二步:解压缩到/opt目录下 第三步:配置环境变量的配置文件vim /etc/profile JAVA_HOME=/opt/jdk1.7.0_79 PATH=$JAVA_HOME/bin:$PATH CLASSPATH=$JA 阅读全文
posted @ 2020-12-18 23:58 甘茂旺 阅读(72) 评论(0) 推荐(0) 编辑
摘要: 1、之前在CentOS安装完MySQL修改默认密码时出现了如下错误: ERROR 1819 (HY000): Your password does not satisfy the current policy requirements 2、原因是因为密码设置的过于简单会报错,MySQL有密码设置的规 阅读全文
posted @ 2020-12-18 23:46 甘茂旺 阅读(82) 评论(0) 推荐(0) 编辑
摘要: 1、准备 1.1、安装之前,先检查自己的服务器上是否安装了mysql服务,如果出现了下图所示,说明本服务器是没有安装mysql的,如果安装过需要卸载的话用rpm -e 软件包名 来卸载 // 查看自己的服务是否装了mysql rpm -qa|grep mysql 或 rpm -qa|grep -i 阅读全文
posted @ 2020-12-18 23:31 甘茂旺 阅读(277) 评论(0) 推荐(0) 编辑
摘要: 1、检查系统是否已经安装如果安装就卸载 检查:svnserve --version 卸载:yum remove subversion 2、安装 yum install subversion 3、建立SVN库(文件位置可自由) 创建仓库文件夹:mkdir -p /opt/svn/repository 阅读全文
posted @ 2020-12-17 12:13 甘茂旺 阅读(81) 评论(0) 推荐(0) 编辑
摘要: 表模型 商品有品牌丶分类丶属性丶图片丶规格等属性。 品牌丶分类丶属性可以重复使用,独立建立表进行存储。 商品可能有一张或多张图片,跟商品之间是一对多的关系。 商品有一至多个规格,商品和规格是一对多的关系。 SQL 1)、商品表 CREATE TABLE `cy_goods` ( `id` int(1 阅读全文
posted @ 2020-12-16 00:05 甘茂旺 阅读(806) 评论(0) 推荐(1) 编辑
摘要: 哨兵简介 1、哨兵 哨兵(sentinel) 是一个分布式系统,用于对主从结构中的每台服务器进行监控,当出现故障时通过投票机制选择新的 master并将所有slave连接到新的master。 2、哨兵的作用 配置哨兵 配置哨兵 哨兵工作原理 主从切换 阶段一:监控阶段 阶段二:通知阶段 阶段三:故障 阅读全文
posted @ 2020-12-15 16:49 甘茂旺 阅读(63) 评论(0) 推荐(0) 编辑
摘要: 阅读全文
posted @ 2020-12-15 12:10 甘茂旺 阅读(86) 评论(0) 推荐(0) 编辑
该文被密码保护。 阅读全文
posted @ 2020-12-15 12:05 甘茂旺 阅读(0) 评论(0) 推荐(0) 编辑
该文被密码保护。 阅读全文
posted @ 2020-12-15 11:46 甘茂旺 阅读(0) 评论(0) 推荐(0) 编辑
摘要: 阶段一:建立连接阶段 建立slave到master的连接,使master能够识别slave,并保存slave端口号 阶段二:数据同步阶段工作流程 在slave初次连接master后,复制master中的所有数据到slave 将slave的数据库状态更新成master当前的数据库状态 阶段三:命令传播 阅读全文
posted @ 2020-12-15 11:28 甘茂旺 阅读(97) 评论(0) 推荐(0) 编辑
摘要: 主从复制的好处? 做数据的热备,作为后备数据库,主数据库服务器故障后,可切换到从数据库继续工作,避免数据丢失。架构的扩展。业务量越来越大,I/O访问频率过高,单机无法满足,此时做多库的存储,降低磁盘I/O访问的评率,提高单个机器的I/O性能。读写分离,使数据库能支持更大的并发。在报表中尤其重要。由于 阅读全文
posted @ 2020-12-15 10:13 甘茂旺 阅读(84) 评论(0) 推荐(0) 编辑
摘要: 一、Bitmaps 数据类型 Redis提供的Bitmaps可以实现对位的操作。Bitmaps本身不是一种数据结构,实际上就是字符串,但是它可以对字符串的位进行操作。可以把Bitmaps想象成一个以位为单位数组,数组中的每个单元只能存0或者1,数组的下标在bitmaps中叫做偏移量。单个bitmap 阅读全文
posted @ 2020-12-14 20:56 甘茂旺 阅读(257) 评论(0) 推荐(0) 编辑
摘要: 1、服务器基础配置 1)、服务器端设定 2)、 日志配置 注意:日志级别开发期设置为verbose即可,生产环境中配置为notice,简化日志输出量,降低写日志IO的频度 3)、客户端配置 4)、多服务器快捷配置 阅读全文
posted @ 2020-12-14 19:03 甘茂旺 阅读(104) 评论(0) 推荐(0) 编辑
摘要: 1、过期数据 2、 数据删除策略 1)、定时删除 2)、惰性删除 3)、定期删除 时效性数据的存储结构 数据删除策略的目标 在内存占用与CPU占用之间寻找一种平衡,顾此失彼都会造成整体redis性能的下降,甚至引发服务器宕机或 内存泄露 3、定时删除 设置键的过期时间,创建定时器,一旦过期时间来临, 阅读全文
posted @ 2020-12-14 18:28 甘茂旺 阅读(358) 评论(0) 推荐(0) 编辑
摘要: 1、事务简介 2、什么是事务 Redis执行指令过程中,多条连续执行的指令被干扰,打断,插队 1)、redis事务就是一个命令执行的队列,将一系列预定义命令包装成一个整体(一个队列)。当执行时,一次性 按照添加顺序依次执行,中间不会被打断或者干扰。 2)、一个队列中,一次性、顺序性、排他性的执行一系 阅读全文
posted @ 2020-12-14 16:48 甘茂旺 阅读(68) 评论(0) 推荐(0) 编辑
摘要: 1、RDB VS AOF 2、RDB与AOF的选择之惑 1)、对数据非常敏感,建议使用默认的AOF持久化方案 AOF持久化策略使用everysecond,每秒钟fsync一次。该策略redis仍可以保持很好的处理性能,当出 现问题时,最多丢失0-1秒内的数据。 注意:由于AOF文件存储体积较大,且恢 阅读全文
posted @ 2020-12-14 15:13 甘茂旺 阅读(407) 评论(0) 推荐(0) 编辑
摘要: 1、RDB存储的弊端 1)、存储数据量较大,效率较低 基于快照思想,每次读写都是全部数据,当数据量巨大时,效率非常低 2)、大数据量下的IO性能较低 3)、基于fork创建子进程,内存产生额外消耗 4)、宕机带来的数据丢失风险 解决思路 1)、不写全数据,仅记录部分数据 2)、降低区分数据是否改变的 阅读全文
posted @ 2020-12-14 15:06 甘茂旺 阅读(539) 评论(0) 推荐(0) 编辑
摘要: 1、持久化简介 意外的断电 “自动备份” 什么是持久化 利用永久性存储介质将数据进行保存,在特定的时间将保存的数据进行恢复的工作机制称为持久化。 为什么要进行持久化 防止数据的意外丢失,确保数据安全性 持久化过程保存什么 1)、将当前数据状态进行保存,快照形式,存储数据结果,存储格式简单,关注点在数 阅读全文
posted @ 2020-12-14 09:45 甘茂旺 阅读(118) 评论(0) 推荐(0) 编辑
摘要: 1、linux安装redis(解决make报错) 安装步骤: 1)、下载redis wget http://download.redis.io/releases/redis-4.0.8.tar.gz 2)、解压 tar -zxvf redis-4.0.8.tar.gz 3)、安装 cd redis- 阅读全文
posted @ 2020-12-14 03:46 甘茂旺 阅读(862) 评论(0) 推荐(0) 编辑
摘要: 1、基于Center OS7安装Redis 1)、下载安装包 wget http://download.redis.io/releases/redis-4.0.0.tar.gz 2)、解压 tar –xvf 文件名.tar.gz 3)、编译 make 4)、安装 make install [dest 阅读全文
posted @ 2020-12-14 03:35 甘茂旺 阅读(54) 评论(0) 推荐(0) 编辑
摘要: 1、基于连接池获取连接 1)、JedisPool:Jedis提供的连接池技术 2)、poolConfig:连接池配置对象 3)、host:redis服务地址 4)、port:redis服务端口号 public JedisPool(GenericObjectPoolConfig poolConfig, 阅读全文
posted @ 2020-12-14 01:57 甘茂旺 阅读(93) 评论(0) 推荐(0) 编辑
摘要: 1、编程语言与redis Java语言连接redis服务 1)、Java语言连接redis服务 Jedis SpringData Redis Lettuce 2)、C 、C++ 、C# 、Erlang、Lua 、Objective-C 、Perl 、PHP 、Python 、Ruby 、Scala 阅读全文
posted @ 2020-12-14 01:49 甘茂旺 阅读(189) 评论(0) 推荐(0) 编辑
摘要: 1、数据库 key 的重复问题 1)、key是由程序员定义的 2)、redis在使用过程中,伴随着操作数据量的增加,会出现大量的数据以及对应的key 3)、数据不区分种类、类别混杂在一起,极易出现重复或冲突 解决方案 1)、redis为每个服务提供有16个数据库,编号从0到15 2)、每个数据库之间 阅读全文
posted @ 2020-12-13 23:06 甘茂旺 阅读(53) 评论(0) 推荐(0) 编辑
摘要: 1、key通用操作 key 特征 key是一个字符串,通过key获取redis中保存的数据 key应该设计哪些操作? 对于key自身状态的相关操作,例如:删除,判定存在,获取类型等 对于key有效性控制相关操作,例如:有效期设定,判定是否有效,有效状态的切换等 对于key快速查询操作,例如:按指定策 阅读全文
posted @ 2020-12-13 21:53 甘茂旺 阅读(59) 评论(0) 推荐(0) 编辑
摘要: Tips 1:redis用于控制数据库表主键id,为数据库表主键提供生成策略,保障数据库表的主键唯一性 Tips 2:redis 控制数据的生命周期,通过数据是否失效控制业务行为,适用于所有具有时效性限定控制的操作 Tips 3:redis应用于各种结构型和非结构型高热度数据访问加速 Tips 4: 阅读全文
posted @ 2020-12-13 19:29 甘茂旺 阅读(127) 评论(0) 推荐(0) 编辑
摘要: 1、业务场景 人工智能领域的语义识别与自动对话将是未来服务业机器人应答呼叫体系中的重要技术,百度自研用户评价 语义识别服务,免费开放给企业试用,同时训练百度自己的模型。现对试用用户的使用行为进行限速,限制 每个用户每分钟最多发起10次调用 解决方案 1)、设计计数器,记录调用次数,用于控制业务执行次 阅读全文
posted @ 2020-12-13 19:20 甘茂旺 阅读(99) 评论(0) 推荐(0) 编辑
摘要: 1、业务场景 票选广东十大杰出青年,各类综艺选秀海选投票 各类资源网站TOP10(电影,歌曲,文档,电商,游戏等) 聊天室活跃度统计 游戏好友亲密度 业务分析 为所有参与排名的资源建立排序依据 解决方案 1)、获取数据对应的索引(排名) zrank key member zrevrank key m 阅读全文
posted @ 2020-12-13 18:29 甘茂旺 阅读(94) 评论(0) 推荐(0) 编辑
摘要: 1、sorted_set 类型 1)、新的存储需求:数据排序有利于数据的有效展示,需要提供一种可以根据自身特征进行排序的方式 2)、需要的存储结构:新的存储模型,可以保存可排序的数据 3)、sorted_set类型:在set的存储结构基础上添加可排序字段 2、sorted_set 类型数据的基本操作 阅读全文
posted @ 2020-12-13 17:43 甘茂旺 阅读(101) 评论(0) 推荐(0) 编辑
摘要: 1、业务场景 每位用户首次使用今日头条时会设置3项爱好的内容,但是后期为了增加用户的活跃度、兴趣点,必须让用户 对其他信息类别逐渐产生兴趣,增加客户留存度,如何实现? 业务分析 1)、系统分析出各个分类的最新或最热点信息条目并组织成set集合 2)、随机挑选其中部分信息 3)、配合用户关注信息分类中 阅读全文
posted @ 2020-12-13 15:37 甘茂旺 阅读(171) 评论(0) 推荐(0) 编辑
摘要: 1、set 类型 新的存储需求:存储大量的数据,在查询方面提供更高的效率 需要的存储结构:能够保存大量的数据,高效的内部存储机制,便于查询 set类型:与hash存储结构完全相同,仅存储键,不存储值(nil),并且值是不允许重复的 2、set 类型数据的基本操作 1)、添加数据 sadd key m 阅读全文
posted @ 2020-12-13 14:34 甘茂旺 阅读(546) 评论(0) 推荐(0) 编辑
摘要: 1、list类型数据扩展操作 1)、规定时间内获取并移除数据 blpop key1 [key2] timeout brpop key1 [key2] timeout brpoplpush source destination timeout 2、业务场景 微信朋友圈点赞,要求按照点赞顺序显示点赞好友 阅读全文
posted @ 2020-12-11 20:38 甘茂旺 阅读(162) 评论(0) 推荐(0) 编辑