Redis

DOCKER学习_018:Docker-Compose文件简介

╄→гoц情女王★ 提交于 2020-11-25 07:09:22
通过之前的示例,其实我们可以看到,所有服务的管理,都是依靠docker-compose.yml文件来实现的。那么我们接下来就详细说一说docker-compose.yml文件中的常用指令。 compose文件使用yml格式,docker规定了一些指令,使用它们可以去设置对应的东西,主要分为了四个区域: version:用于指定当前docker-compose.yml语法遵循哪个版本 services:服务,在它下面可以定义应用需要的一些服务,每个服务都有自己的名字、使用的镜像、挂载的数据卷、所属的网络、依赖哪些其他服务等等。 networks:应用的网络,在它下面可以定义应用的名字、使用的网络类型等。 volumes:数据卷,在它下面可以定义数据卷,然后挂载到不同的服务下去使用。 官方网站: https://docs.docker.com/compose/ 1 version 用于指定当前compose文件语法遵循哪个版本,下面这张表是不同的Compose文件版本兼容的Docker版本: [root@docker-server3 docker-compose]# docker-compose version docker-compose version 1.25 . 0 , build 0a186604 docker -py version: 4.1 . 0 CPython

3 年经验的 Java 后端妹子,横扫阿里、滴滴、美团,看完面经我觉得敖丙是垃圾!

谁都会走 提交于 2020-11-25 05:27:46
自序 头条 美团 滴滴 京东 others 算法题 HR面 tips 自序 这次面试的公司有一点点多,主要是因为毕业后前两份工作找的都很草率,这次换工作就想着,emm,毕业三年了,该找个工作好好沉淀几年了。 先说下这次面试的结果吧: 到 hr 面的:阿里、美团、滴滴、金山云、每日一淘、火币、宜信、旺店通、黄包车、linkedMe 其他: 小米 (四轮技术面,大概4个小时的样子,大数据部门,不知道是不是四面的负责人嫌弃我木有大数据的经验,不过我确实木有哈) 京东 (电话面试一轮+现场两轮,面试完快中午一点了,说是让我先回家,后面让hr 电话联系我 一周后一面的面试官问我还考虑京东不,如果考虑的话,就进行后续。当时已经有了更好的offer,就说不考虑了,希望以后有机会再合作,所以没有后续了) 头条 (二面完gg,我的算法确实菜哈,然后leetcode又只刷过10道题,去面头条,确实有些作死的节奏,实在是对不起帮我内推的石冲大佬) 爱奇艺 (电话面试一轮+现场两轮,到技术终面了,这个怪我,面试官也一直很忙,然后我俩就互相一直改面试时间,最后定的那个面试时间我还迟到了一个小时,还是时间到了才给hr 打电话说一个小时后才能到 虽然我知道这样做非常不好,但是当时情况比较复杂,自己根本忙不过来,一直在面试,也没有办法中途给hr 打电话说一下。一天面两家,两家离的还比较远的小伙伴吸取一下教训。

java爬虫简介(一)->实现数据抓取->httpClient请求接口数据

守給你的承諾、 提交于 2020-11-25 04:28:45
背景 现如今,数据成为了越来越重要的网络资源,越来越有价值。无论是数据的分析还是前后端页面的数据交互,都离不开真实有效的数据。项目开发中数据甲方不可能实时提供,我们只能找到目标网站的数据进行抓取入库。 数据作用 决策支持 提升效益 数据的直接变现方式 数据资源交易 行业报告 广告平台 数据抓取的难点 1、目标网站有反爬取策略 2、目标网站模板会进行定时或实时变动 3、目标网站URL抓取失败 4、IP被封禁 解决办法: 购买代理IP库,随机获取IP进行数据抓取 部署多个应用分别进行抓取,降低单位节点访问的频率 设置每个页面抓取的时间间隔 5、用户登录限制 数据抓取的原理 实质上就是java程序模拟浏览器进行目标网站的访问,无论是请求目标服务器的接口还是请求目标网页内容,都是要在java程序中对数据进行解析。最简单的抓取方式有httpclient请求目标服务器接口,jsoup请求目标页面内容,把请求的数据进行解析然后入库。另外要做好爬取的实时监控,如果URL请求失败3次,就放弃该URL的抓取。 总体架构的设计 1、数据流向 1、确定数据爬取目标 2、数据采集 1、下载数据 2、解析数据 3、存取接入库(database,HDFS) 3、分析查询服务 2、模块划分 1、数据采集模块 2、数据分析模块 3、报表管理模块 4、系统管理与监控模块 3、模块解读 技术选型 数据采集层 JSoup

缓存与库先写哪个,这十几张图告诉你

不想你离开。 提交于 2020-11-25 03:01:48
作者|莱乌 日常生产场景中,为了避免大量请求同时打在数据库上导致故障,数据库+缓存的方式已经成了日常标配。 对于读取的部分,大家都很熟悉。但是对于写的部分,到底是先写库还是先写缓存,这点可能困扰着很多人。 各位看官请跟随小莱往下看: 旁路缓存策略 提到这个有逼格的名词你可能不是很熟悉,但是说到它的使用方式,你肯定用过。 这是一种最经典的缓存+数据库读写的模式,英文是这样 Cache Aside Pattern,可能你见过。 这种模式对应的使用方式有两种情况,一读一写: 基本读取方式; 先更新数据库,后删除缓存。 1、基本读取方式 这部分相信大家已经轻车熟路:先读缓存,缓存中没有数据的话就去数据库读取,然后再存入缓存中,同时返回响应。 这没什么可说的,平时都这么用。如果还不清楚,看下小莱为大家画的图: 那我们再看写的部分。 2、 先更新数据库,后删除缓存 你可能会问了,为什么不在更新完数据库后,采取更新缓存的方案,而是将其删除。原因有这么几点: 频繁更新浪费资源 你想想,如果修改库中的某个字段,一段时间内频繁进行更新。那么你修改多少次,缓存也跟着更新多少次。但是这个缓存数据在这段时间内也就被偶尔使用了几次。 那么你看,是不是就会导致资源浪费了。 缓存数据计算复杂 还有一种情况,如果这个缓存的数据计算成本比较高。比如为了一个数据,要通过多张表来计算才能得到结果。那么每修改一次

Java学到什么程度才能叫精通?

﹥>﹥吖頭↗ 提交于 2020-11-25 02:17:36
首先Java平台博大精深,一直被誉为互联网霸主;我们都知道互联网技术结构之复杂,所以Java的技术组件,架构也非常之多和复杂;正所谓万丈高楼平地起对吧,想要精通Java,那么首先基础知识必不可少,基础知识我有分为两部分: 1:计算机基础知识 Java也是一门计算机语言,当然暂且不表Java的特点以及和其他语言的对比之类的话。既然是计算机语言那么计算机的基础知识肯定是必备的,操作系统(这个知识最起码在学习Java多线程的时候才能真正的说理解多线程以及多线程调度等等,还有进程管理等等要不很多人动不动就是什么JVM调优,垃圾回收器呀什么什么的,JVM调优并不是简简单单的改动点参数,如果仅仅是改动一点参数就叫JVM调优...对吧其他的这里就不说了); 计算机网络基础知识(最起码的你知道HTTP,TCP/IP,UDP等最基本的这些协议吧,网络通信原理)。 2:程序基础知识 程序的基础知识: 计算机语言的运行原理(例如二进制的计算肯定比十进制的快这些基本的运行原理,还有就是要不你怎么理解JVM对吧等等); 算法(重要,很多互联网大公司很看重这个,算法都不懂,你还说什么代码运行效率;还有就是JDK源码你怎么看都需要算法知识) 数据结构(重要,你去看看Java集合类的源码,哪一个不是数据结构的东西) 下来进入到Java中来说 首先还是那句话,精通一门语言,那么你必须要从它的平台内部开始

docker之构建redis-cluster集群

☆樱花仙子☆ 提交于 2020-11-24 20:06:10
下载和编译redis安装包 参考: https://www.cnblogs.com/cwp-bg/p/8094914.html # 从官方网站下载安装包,注意,当前在哪个目录下执行命令,下载的包将在哪个目录下 $ wget http://download.redis.io/releases/redis-4.0.6.tar.gz # 将下载包解压 $ tar -zxvf redis-4.0.6.tar.gz # 进入解压后的文件夹 $ cd redis-4.0.6 # 对文件进行编译,得到可执行的文件和配置文件 $ sudo make 修改redis.conf # 创建一个目录 mkdir /data # 复制一份redis.conf到data目录 cp redis.conf /data/6380.conf vi /data/6380.conf bind 0.0.0.0 # 绑定ip port 6380 # 修改端口 daemonize no # 前台运行,暴露给docker管理,否则启动容器会失败 dbfilename dump.rdb # 设置持久化文件 # 设置集群参数 cluster-enabled yes cluster-config-file nodes-6379.conf cluster-node-timeout 15000 docker安装redis # 查询

Docker快速构建Redis集群(cluster)

别来无恙 提交于 2020-11-24 19:54:08
Docker快速构建Redis集群(cluster) 以所有 redis 实例运行在同一台宿主机上为例子 搭建步骤 redis 集群目录清单 . ├── Dockerfile ├── make_master_slave.sh ├── run_master_slave.sh ├── compose_master_slave.sh ├── redis-trib.rb ├── master │ ├── 7000 │ │ ├── data │ │ │ ├── appendonly.aof │ │ │ ├── dump.rdb │ │ │ └── nodes.conf │ │ └── redis.conf │ ├── 7001 │ │ ├── data │ │ │ ├── appendonly.aof │ │ │ ├── dump.rdb │ │ │ └── nodes.conf │ │ └── redis.conf │ └── 7002 │ ├── data │ │ ├── appendonly.aof │ │ ├── dump.rdb │ │ └── nodes.conf │ └── redis.conf ├── redis-cluster.tmpl └── slave ├── 7003 │ ├── data │ │ ├── appendonly.aof │ │ ├── dump.rdb

告别下载速度慢!Docker配置阿里云镜像仓库

落爺英雄遲暮 提交于 2020-11-24 19:29:54
点击蓝色“ 程序员的时光 ”关注我 , 标注“ 星标 ”,及时阅读最新技术文章 写在前面: 小伙伴儿们,大家好!上一篇介绍了Docker安装—— 来了来了!Docker安装及运行原理 下一篇就讲Docker使用常用命令等,持续更新,敬请期待! 思维导图: 1,Docker默认远程仓库 Docker默认远程仓库: https://hub.docker.com/ 我们要是从这个默认仓库下载镜像,速度是特别低慢,就几十kb每秒的那种;由于是国外主机,类似Maven仓库,经常延迟,破损; 所以我们一般都是配置国内镜像,比如阿里云镜像,稳定点; 2,配置步骤 2.1,登录阿里云镜像服务中心; 进入阿里云容器镜像服务地址: 阿里云容器镜像服务地址 使用淘宝或者支付宝账号登录,登录之后是这样: 2.2,新建daemon.json文件; 我们直接用FinalShell工具进行创建,在 /etc/docker 目录下新建daemon.json文件,文件内容如下: { "registry-mirrors": ["https://xxxxxxx.mirror.aliyuncs.com"] } 记住,上述中括号里面的链接要填写你上述图片中的加速器地址! 2.3,重启daemon; systemctl daemon-reload 2.4,重启docker服务; systemctl restart

横扫阿里、滴滴、美团后,阿里程序媛整理出这份厚厚的面经

孤者浪人 提交于 2020-11-24 19:28:36
《你的名字》 欢迎点击上方蓝色字体 B ella的技术轮子 关注哦~ 内容目录 自序 头条 美团 滴滴 京东 others 算法题 HR面 tips 自序 这次面试的公司有一点点多,主要是因为毕业后前两份工作找的都很草率,这次换工作就想着,emm,毕业三年了,该找个工作好好沉淀几年了。 先说下这次面试的结果吧: 到hr 面的: 阿里、美团、滴滴、金山云、每日一淘、火币、宜信、旺店通、黄包车、linkedMe 其他: 小米(四轮技术面,大概4个小时的样子,大数据部门,不知道是不是四面的负责人嫌弃我木有大数据的经验,我确实木有哈) 京东(电话面试一轮+现场两轮,面试完快中午一点了,说是让我先回家,后面让hr 电话联系我,一周后一面的面试官问我还考虑京东不,如果考虑的话,就进行后续,对不起,我已经不考虑了,希望以后有机会再合作,所以没有后续了) 头条(二面完gg,我的算法确实菜哈,然后leetcode又只刷过10道题,去面头条,确实有些作死的节奏,实在是对不起帮我内推的石冲大佬) 爱奇艺(电话面试一轮+现场两轮,到技术终面了,这个怪我,面试官也一直很忙,然后我俩就互相一直改面试时间,最后定的那个面试时间我还迟到了一个小时,还是时间到了才给hr 打电话说一个小时后才能到,虽然我知道这样做非常不好,但是当时情况比较复杂,自己根本忙不过来,一直在面试,也没有办法中途给hr 打电话说一下

redis入门

自闭症网瘾萝莉.ら 提交于 2020-11-24 15:47:44
1.安装版本 推荐使用3.0.4 查看版本命令:redis-server --version 2.安装步骤 tar xzvf redis-stable.tar.gz cd redis-stable make make install 默认安装到/usr/local/bin目录下 3.设置配置文件 /etc/redis/6379.conf 修改以下几处地方: daemonize yes port 6379 pidfile /var/run/redis_6379.pid timeout 0 logfile /var/log/redis_6379.log dir /var/lib/redis/6379 #dump.rdb存放路径 # maxmemory <bytes> 4.启动redis 手动创建一下/var/lib/redis/6379目录,使用以下命令启动redis redis-server /etc/redis/6379.conf 5.使用redis redis-cli -p 6379 #keys * 6.停止redis redis-cli SHUTDOWN 7.在运行时查看和修改配置信息 redis>CONFIG GET loglevel redis>CONFIG GET loglevel warning CONFIG GET可以不区分大小写。 8.多数据库