ZooKeeper

工作11年,从阿里P8出来,头发也没了,人也虚了,就剩下这份笔记了!

好久不见. 提交于 2020-12-06 09:41:17
工作了11年,工作压力大,节奏快,但是从技术上确实得到了成长,尤其是当你维护与大促相关的系统的时候,熬到P8也费了不少心思,小编也是个爱学习的人,把这几年的工作经验整理成了一份完整的笔记。此笔记已助朋友拿到腾讯,阿里,美团等9个offer。 由于细节内容实在太多啦,所以只把部分知识点截图出来粗略的介绍,每个小节点里面都有更细化的内容! 大致内容包括了: Java 集合、JVM、多线程、并发编程、设计模式、Spring全家桶、Java、MyBatis、ZooKeeper、Dubbo、Elasticsearch、Memcached、MongoDB、Redis、MySQL、RabbitMQ、Kafka、Linux、Netty、Tomcat等大厂面试题等、等技术栈! 笔记目录展示: 需要获取得话麻烦一键三连之后,加小助理VX:wjj2632646免费领取!!! 需要获取得话麻烦一键三连之后,加小助理VX:wjj2632646免费领取!!! 部分内容截图: 需要获取得话麻烦一键三连之后,加小助理VX:wjj2632646免费领取!!! 来源: oschina 链接: https://my.oschina.net/u/4297704/blog/4776560

Spark集群-Standalone 模式

蓝咒 提交于 2020-12-06 06:09:28
Spark 集群相关 <style> table td{ width: 15% } </style> <font face="微软雅黑"> 来源于官方, 可以理解为是官方译文, 外加一点自己的理解. 版本是2.4.4 本篇文章涉及到: 集群概述 master, worker, driver, executor的理解 打包提交,发布 Spark application standalone模式 SparkCluster 启动 及相关配置 资源, executor分配 开放网络端口 高可用(Zookeeper) 名词解释 Term(术语) Meaning(含义) Application 用户构建在 Spark 上的程序。由集群上的一个 driver 程序和多个 executor 组成。 Driver program 该进程运行应用的 main() 方法并且创建了 SparkContext。 Cluster manager 一个外部的用于获取集群上资源的服务。(例如,Standlone Manager,Mesos,YARN) Worker node 任何在集群中可以运行应用代码的节点。 Executor 一个为了在 worker 节点上的应用而启动的进程,它运行 task 并且将数据保持在内存中或者硬盘存储。每个应用有它自己的 Executor。 Task 一个将要被发送到

美团工作7年,精华全在这份学习笔记里了,已成功帮助多位朋友拿到5个大厂Offer

那年仲夏 提交于 2020-12-05 14:58:27
在美团工作了7年,工作压力大,节奏快,但是从技术上确实得到了成长,尤其是当你维护与大促相关的系统的时候,笔者也是个爱学习的人,把这几年的工作经验整理成了一份完整的笔记。此笔记已助朋友拿到腾讯,阿里,美团等5个offer。 由于细节内容实在太多啦,所以只把部分知识点截图出来粗略的介绍,每个小节点里面都有更细化的内容! 大致内容包括了: Java 集合、JVM、多线程、并发编程、设计模式、Spring全家桶、Java、MyBatis、ZooKeeper、Dubbo、Elasticsearch、Memcached、MongoDB、Redis、MySQL、RabbitMQ、Kafka、Linux、Netty、Tomcat等大厂面试题等、等技术栈! 有想获取的读者朋友,见下: 笔记目录展示: 获取完整笔记,见下: 部分内容截图: 获取完整笔记,见下: 来源: oschina 链接: https://my.oschina.net/u/4406332/blog/4775960

阿里中间件研发面经

ぃ、小莉子 提交于 2020-12-05 02:00:18
阿里中间件研发面经 研发工程师(Java) 我参与了阿里巴巴中间件部门的提前批面试,一共经历了四次面试,拿到了口头offer。这是我的 面经,在这里分享给大家。 一面: 1 自我介绍 2 项目中做了什么,难点呢。 3 Java的线程池说一下,各个参数的作用,如何进行的。 4 Redis讲一下 5 分布式系统的全局id如何实现。用zookeeper如何实现的呢,机器号+时间戳即可。 6 分布式锁的方案,redis和zookeeper那个好,如果是集群部署,高并发情况下哪个性能更好。 7 kafka了解么,了解哪些消息队列。 8 想做业务还是研究。 9 然后出了一道题,linux的访问权限是rwx格式的。使用一个类支持访问权限的增删改查,并且注意使用的数据格式以及方法效率,规范。给了一个多小时写题。 耗时将近30分钟。 二面: 1 介绍你做的项目和其中的难点。 2 上次面试官问的问题,反射的作用是什么。 3 数据仓库,多线程和并发工具等。 4 私有云,docker和k8s等。 5 了解哪些中间件,dubbo,rocketmq,mycat等。 6 dubbo中的rpc如何实现。 7 自己实现rpc应该怎么做 9 dubbo的服务注册与发现。 10 听说我是非科班,于是问了些排序算法 耗时将近30分钟。 三面: 三面不是面试,而是笔试,耗时三个小时,考的是Java核心的基础

Prometheus监控报警系统

☆樱花仙子☆ 提交于 2020-12-04 13:56:33
Prometheus简介 Prometheus受启发于Google的Brogmon监控系统(相似的Kubernetes是从Google的Brog系统演变而来),从2012年开始由前Google工程师在Soundcloud以开源软件的形式进行研发,并且于2015年早期对外发布早期版本。2016年5月继Kubernetes之后成为第二个正式加入CNCF基金会的项目,同年6月正式发布1.0版本。2017年底发布了基于全新存储层的2.0版本,能更好地与容器平台、云平台配合。 Prometheus简史 Prometheus作为新一代的云原生监控系统,目前已经有超过650+位贡献者参与到Prometheus的研发工作上,并且超过120+项的第三方集成。 监控的目标 在《SRE: Google运维解密》一书中指出,监控系统需要能够有效的支持白盒监控和黑盒监控。通过白盒能够了解其内部的实际运行状态,通过对监控指标的观察能够预判可能出现的问题,从而对潜在的不确定因素进行优化。而黑盒监控,常见的如HTTP探针,TCP探针等,可以在系统或者服务在发生故障时能够快速通知相关的人员进行处理。通过建立完善的监控体系,从而达到以下目的: ***长期趋势分析:***通过对监控样本数据的持续收集和统计,对监控指标进行长期趋势分析。例如,通过对磁盘空间增长率的判断

B站疯传、GitHub标星80k!阿里限量“Java架构技术提升笔记”,堪称惊艳!

本秂侑毒 提交于 2020-12-04 11:29:47
前言 “马云”,中国首富之一,提起马云和淘宝大家肯定首先想到的就是“阿里巴巴”,Alibaba旗下有蚂蚁金服、支付宝、阿里云、阿里软件等等知名子公司,形成了一个庞大的商业帝国。这么庞大的商业帝国除了优秀的管理,技术的重要性肯定少不了的,毕竟Alibaba可以说是突显中国程序员最高水平的典范。 就在前段时间,阿里资深架构师抛出的“Java架构技术提升笔记”,以多维度、全新展示及其超高专业度的突出特点,迅速在B站疯传,且GitHub已标星80k。 知道你们懒得整理,我已经为大家整理好了,如果你想要提升自己的技术,需要完整版的朋友 点击这里 即可快速跳转完全免费领取下载通道! Java架构技术提升笔记(附成长路线图) 一、分布式与微服务架构思维 1.大型互联网架构演进过程( 如何把应用从单机扩展到分布式+大型分布式架构演进过程 ) 2.架构师应具备的分布式知识( SOA架构和微服务架构+分布式架构下的高可用设计+分布式架构下的可伸缩设计+分布式架构下的高性能设计 ) 3.主流分布式架构设计详解( 分布式储存方案.+分布式动静分离方案+分布式搜索引擎方案+分布式应用发布与监控方案+容灾及机房规划方案+系统动态扩容 ) 4.微服务架构( 手把手设计微服务架构+微服务MicroService与SOA+微服务的划分原则+微服务与spring+微服务与springcloudAlibaba ) 二、

Zookeeper 概述(1)

你。 提交于 2020-12-04 04:31:35
Zookeeper 概述(1) 前言 关系数据库的 ACID Atomicity原子性: 一个事务中所有操作都必须全部完成,要么全部不完成; Consistency一致性: 在事务开始或结束时,数据库应该在一致状态; Isolation隔离层: 事务间不影响; Durability持久性: 事务一旦完成必须持久化,不能返回。 SOA 面向服务的体系结构,将应用程序的不同功能单元(服务)分布在网络计算机上,并通过定义好的接口(协议)进行网络通讯。 CPA理论 C onsistency 一致性: 分布式数据视图必须一致 (强一致性) A vailability 可用性: 必须一直处于可用的状态, 有限时间内必返回明确响应, 能够明确反映请求的处理结果 P artition tolerance 分区容错性: 分布式系统在遇到任何网络分区故障仍能保证对外提供满足一致性和可用性的服务,除非整个网络环境都发生故障。 CA 放弃分区容错性,加强一致性和可用性,其实就是传统的单机数据库的选择 AP 放弃强一致性,追求分区容错性和可用性,这是很多分布式系统设计时的选择,例如很多NoSQL系统就是如此 CP 放弃可用性,追求一致性和分区容错性 定理:任何 分布式 系统只可同时满足二点,没法三者兼顾。 BASE理论 B asically A vailable 基本可用: 当异常时,保证主要功能不挂

基于grpc协议的微服务架构grpc-nebula

陌路散爱 提交于 2020-12-04 00:26:49
前言 最近开发了一个基于grpc协议的微服务框架grpc-nebula的一个项目,此微服务框架已经开源但是比较小众,今天就简单分享下这个微服务架构。grpc-nebula分为java版本和c++版本,本次就只分享java版本的。虽然大家在工作中用不到这个框架,但是多了解些并且和自己所用框架进行对比,能够加深自己对微服务框架的理解程度以及拓宽知识的宽度。 微服务框架介绍 grpc简介 grpc是一个多语言、高性能、开源的通用远程过程调用(RPC)框架。 来自于Google的开源项目,2016年8月19日发布了成熟的1.0.0版本 基于HTTP/2等技术 grpc支持Java, C,C++, Python等多种常用的编程语言,并且客户端和服务端可以采用不同的编程语言来实现 数据序列化使用Protocol Buffers grpc社区非常活跃,版本迭代也比较快速,2019年4月11日发布了1.20.0版本 官网地址: http://www.grpc.io/ 源码地址: https://github.com/grpc grpc-nebula(Java版本)简介 微服务治理框架(Java版),基于开源项目 grpc-java 进行开发,新增如下特性: 服务自动注册与发现。采用zookeeper为注册中心,服务与注册中心之间保持长链接,具有心跳检测机制,能够周期性的检查服务的状态

被Redis虐的日子,太惨了...

有些话、适合烂在心里 提交于 2020-12-03 14:38:26
互联网面试题更新了!随便呈上几道,看看大家能否答出来: redis为什么是key,value的,为什么不是支持SQL的? redis是多线程还是单线程?(回答单线程的请回吧,为什么请回,请往下看) redis的持久化开启了RDB和AOF下重启服务是如何加载的?(10个人9个回答错误) redis如果做集群该如何规划?AKF/CAP如何实现和设计? 10万用户一年365天的登录情况如何用redis存储,并快速检索任意时间窗内的活跃用户? redis的5种Value类型你用过几种,能举例吗? 100万并发4G数据,10万并发400G数据,如何设计Redis存储方式? 有几道题果真有难度啊... 不要小看一个redis 任何一家公司的招聘信息都包含一段redis的需求。 不要小看一个redis 你能在互联网搜索到的很多文章都讲错了,面试会有很多坑。 不要小看一个redis 搞懂它是你通向分布式、微服务的第一扇大门。 不要小看一个redis 它让你看到这里,是的,马士兵教育准备的一套【直播】课《redis终极训练营》。 很多内容是全网首发,现场与老师互动答疑。 限时福利,本号粉丝免费加入 马士兵教育是由马士兵老师创办 他,99年清华毕业,从程序员干到CTO,一直致力于推动Java、大数据、AI生根中国,其一套java基础广受欢迎,有千万次播放学习。 开营时间:12月2日-12月3日 晚20

Zookeeper使用场景

做~自己de王妃 提交于 2020-12-02 22:36:34
学 Zookeeper 就是为了用它,接下来我就介绍以下常用的使用场景。 1、数据发布/订阅 1.1、介绍 数据发布/订阅,顾名思义就是发布者将数据发布到 Zookeeper 上,然后供订阅者进行数据订阅和监控,进而实现动态改变和获取数据的目的。 1.2、示例 需求: 当我们部署集群时,需要重复修改每个节点的配置信息,节点少的时候还好,如果多了,并且需要修改频繁的时候就会很浪费时间。此时以数据库连接信息为例,连接信息包括:IP地址,端口号,用户名,密码,数据库名称。 解决: 为解决上述需求,我们可以引入 Zookeeper 作为配置中心,将所有的配置信息都发布到 Zookeeper 上,然后供集群所有节点进行数据订阅和监控,当需要修改配置时,只需修改 Zookeeper 上的数据,就可以触发所有节点进行修改。 设计思路如下: 创建一个永久节点(mysql)表示为数据库连接信息。 在 mysql 节点下创建多个子节点,表示IP地址,端口号,用户名,密码,数据库名称。 所有的客户端都获取 mysql 节点下的子节点信息,并注册监控事件。 当数据库连接信息有变化时,所有客户端都能被触发,重新执行步骤3。 2、Master选举 2.1、介绍 Master 选举就是从集群中选出一个所谓的 "老大",这里称之为 Master,Master 往往用来协调集群中其他系统单元