后端技术杂谈
文章平均质量分 88
本专栏涵盖了大后端的众多技术文章,当你在Java方面有一定基础以后,再多了解一些相关技术总是有好处的。
除了Java后端的文章以外,还会涉及Hadoop生态,云计算技术,甚至包括一些数据挖掘和AI的文章。
总的来说选取了一些不错的基础类文章,能让你对大后端有一个更直观的认识。
Java技术江湖
在下程序员黄小斜,前阿里Java工程师,4年码龄。 专注分享Java技术干货文,偶尔也吹水吐槽聊人生。
展开
-
探秘Hadoop生态2:HDFS常用命令与高可用方案
HDFS常用命令:注:以下执行命令均在spark安装目录的bin目录下。path 为路径 src为文件路径 dist 为文件夹1、-help[cmd] 显示命令的帮助信息./hdfs dfs -help ls12、-ls(r) 显示当前目录下的所有文件 -R层层循出文件夹./hdfs dfs -ls /log/map./hdfs dfs -lsr /log/ (递归...转载 2017-03-08 09:40:46 · 780 阅读 · 0 评论 -
探秘Hadoop生态3:MapReduce简介与WordCount
No.10 MapReduce 编程模型极简篇dantezhao木东居士2017-09-230x00 前言回想自己最初学 Hadoop 的时候,初衷是写MapReduce程序,但是搭建单机环境折腾一周,搭建分布式环境折腾一周,跑个Demo解决一下Bug又一周过去了。最后都忘了自己是想学 MapReduce 的。感觉自己虽然是搞Hadoop的,但是写MR比自己想的要少很多。初期是...转载 2017-03-08 09:40:49 · 3054 阅读 · 0 评论 -
探秘Hadoop生态4:HBase无伤入门
本文由毕杰山同学贡献 ,原文首发于公众号:NoSQL漫谈 链接:https://mp.weixin.qq.com/s/CXsGcbbsKTMXotlwRFQ5xw一些常见的HBase新手问题 什么样的数据适合用HBase来存储? 既然HBase也是一个数据库,能否用它将现有系统中昂贵的Oracle替换掉? 存放于HBase中的数据记录,为何不直接存放于H...转载 2017-03-08 09:40:58 · 1600 阅读 · 0 评论 -
年底了,整理了一份程序员面试必看的文章合集
本系列文章整合了本号发表和转载过的,有关技术招聘干货、笔试面试经验和技巧、简历、招聘等方面的精品文章,希望对想要找工作,以及正在找工作的你,能够有所帮助。原创面试干货文章校招季到来,你可能需要这一份求职作战计划!记一次面试腾讯的奇葩经历阿里巴巴实习生招聘 不完全指南如何修改个人简历?一些过来人的经验应聘腾讯,面试官和我聊了一个小时的人生看过太多大厂面试题,其实...转载 2017-03-08 09:41:03 · 3638 阅读 · 0 评论 -
探秘Hadoop生态6:Hive技术初探与实践入门
数据仓库_总结一,数据类型数据储存库将包括关系数据库、数据仓库、事务数据库、高级数据库系统、一般文件、数据流和万维网。高级数据库系统包括对象-关系数据库和面向特殊应用的数据库,如空间数据库、时间序列数据库、文本数据库和多媒体数据库。1.1关系数据库关系数据库是表的汇集,每个表都赋予唯一的名字。每个表包含一组属性(列或字段),通常存放大量元组(记录或行)。关系表中的每个元组代表...转载 2017-03-08 09:41:08 · 1564 阅读 · 0 评论 -
探秘Hadoop生态7:Hadoop YARN 介绍
一、Yarn简介Yarn是Hadoop集群的资源管理系统。Hadoop 2.0对MapReduce框架做了彻底的设计重构,我们称Hadoop 2.0中的MapReduce为MRv2后者Yarn。在介绍Yarn之前,我们先回头看一下Hadoop 1.x对MapReduce job的调度管理方式,它主要包括两部分功能:1.ResourceManagement 资源管理2.JobSched...转载 2017-03-08 09:41:13 · 3787 阅读 · 0 评论 -
探秘Hadoop生态8:Yarn命令介绍与实践
转载 2017-03-08 09:45:10 · 1106 阅读 · 0 评论 -
探秘Hadoop生态11:使用Sqoop导出Mysql数据至Hive中,反之亦然
sqoop一些语法的使用参数详细资料 观看这个博客http://shiyanjun.cn/archives/624.htmlSqoop可以在HDFS/Hive和关系型数据库之间进行数据的导入导出,其中主要使用了import和export这两个工具。这两个工具非常强大,提供了很多选项帮助我们完成数据的迁移和同步。比如,下面两个潜在的需求:业务数据存放在关系数据库...转载 2017-03-08 09:45:24 · 1406 阅读 · 0 评论 -
探秘Hadoop生态9:Spark入门与分布式计算实践
Spark 介绍由yiyohunter创建,小路依依 最后一次修改2016-12-12行业广泛使用Hadoop来分析他们的数据集。原因是Hadoop框架基于一个简单的编程模型(MapReduce),它支持可扩展,灵活,容错和成本有效的计算解决方案。这里,主要关注的是在处理大型数据集时在查询之间的等待时间和运行程序的等待时间方面保持速度。Spark由Apache...转载 2017-03-08 09:46:06 · 1297 阅读 · 0 评论 -
探秘Hadoop生态10:Spark架构解析以及流式计算原理
导语spark 已经成为广告、报表以及推荐系统等大数据计算场景中首选系统,因效率高,易用以及通用性越来越得到大家的青睐,我自己最近半年在接触spark以及spark streaming之后,对spark技术的使用有一些自己的经验积累以及心得体会,在此分享给大家。本文依次从spark生态,原理,基本概念,spark streaming原理及实践,还有spark调优以及环境搭建等方...转载 2017-03-08 09:46:54 · 2439 阅读 · 0 评论 -
探秘Hadoop生态12:分布式日志收集系统Flume
在具体介绍本文内容之前,先给大家看一下Hadoop业务的整体开发流程:从Hadoop的业务开发流程图中可以看出,在大数据的业务处理过程中,对于数据的采集是十分重要的一步,也是不可避免的一步,从而引出我们本文的主角—Flume。本文将围绕Flume的架构、Flume的应用(日志采集)进行详细的介绍。(一)Flume架构介绍1、Flume的概念flume是分布式的日志收集系统,...转载 2017-03-08 09:46:57 · 3148 阅读 · 0 评论 -
探秘Hadoop生态13:初探Storm和入门实例
Storm:最火的流式处理框架伴随着信息科技日新月异的发展,信息呈现出爆发式的膨胀,人们获取信息的途径也更加多样、更加便捷,同时对于信息的时效性要求也越来越高。举个搜索场景中的例子,当一个卖家发布了一条宝贝信息时,他希望的当然是这个宝贝马上就可以被卖家搜索出来、点击、购买啦,相反,如果这个宝贝要等到第二天或者更久才可以被搜出来,估计这个大哥就要骂娘了。再举一个推荐的例子,如果用户昨天在淘...转载 2017-03-08 20:43:26 · 2216 阅读 · 0 评论 -
Hadoop生态基础学习总结
Hadoop生态hdfs架构hdfs是一个分布式文件系统。底层的存储采用廉价的磁盘阵列RAID,由于可以并发读写所以效率很高。基本架构是一个namenode和多个dataNode。node的意思是节点,一般指主机,也可以是虚拟机。每个文件都会有两个副本存放在datanode中。读写客户端写入文件时,先把请求发送到namenode,namenode会返回dat...原创 2018-07-08 09:50:20 · 2951 阅读 · 0 评论 -
JavaWeb技术内幕二:Java IO工作机制
IO问题是当今web应用所面临的主要问题之一,因为数据在网络中随处流动,在这个流动过程中都涉及IO问题,并且大部分应用的瓶颈都是IO瓶颈。本章将从IO的角度出发,介绍IO类库的基本架构,磁盘IO的工作机制,网络IO的工作方式,以及socket和NIO等等。Java的IO类库基本架构IO问题无法回避,很容易成为性能瓶颈,因为IO设备的速度一般是很慢的。Java IO一直在做这方面的优...原创 2018-08-04 22:52:52 · 1416 阅读 · 0 评论 -
后端技术杂谈1:搜索引擎基础倒排索引
什么是倒排索引? 见其名知其意,有倒排索引,对应肯定,有正向索引。 正向索引(forward index),反向索引(inverted index)更熟悉的名字是倒排索引。 在搜索引擎中每个文件都对应一个文件ID,文件内容被表示为一系列关键词的集合(实际上在搜索引擎索引库中,关键词也已经转换为关键词ID)。例如“文档1”经过分词,提取了20个关键...转载 2018-07-10 22:39:09 · 779 阅读 · 0 评论 -
后端技术杂谈2:搜索引擎工作原理
写在前面Max Grigorev最近写了一篇文章,题目是《What every software engineer should know about search》,这篇文章里指出了现在一些软件工程师的问题,他们认为开发一个搜索引擎功能就是搭建一个ElasticSearch集群,而没有深究背后的技术,以及技术发展趋势。Max认为,除了搜索引擎自身的搜索问题解决、人类使用方式等之外,...转载 2018-07-10 22:58:02 · 3650 阅读 · 1 评论 -
后端技术杂谈3:Lucene基础原理与实践
一、总论根据lucene.apache.org/java/docs/i…定义:Lucene是一个高效的,基于Java的全文检索库。所以在了解Lucene之前要费一番工夫了解一下全文检索。那么什么叫做全文检索呢?这要从我们生活中的数据说起。我们生活中的数据总体分为两种:结构化数据和非结构化数据。结构化数据:指具有固定格式或有限长度的数据,如数据库,元数据等。 非结构化数据:...转载 2018-07-10 23:24:05 · 805 阅读 · 0 评论 -
后端技术杂谈4:Elasticsearch与solr入门实践
阮一峰:全文搜索引擎 Elasticsearch 入门教程阅读 1093收藏 762017-08-23原文链接:www.ruanyifeng.com9月7日-8日 北京,与 Google Twitch 等团队技术大咖面对面www.bagevent.com全文搜索属于最常见的需求,开源的Elasticsearch(以下简称 Elastic)是目前全文搜索引擎的首选。...转载 2018-07-10 23:34:14 · 898 阅读 · 0 评论 -
后端技术杂谈5:云计算的前世今生
作者简介:刘超,网易云解决方案首席架构师。10年云计算领域研发及架构经验,Open DC/OS贡献者。长期专注于kubernetes, OpenStack、Hadoop、Docker、Lucene、Mesos等开源软件的企业级应用及产品化。曾出版《Lucene应用开发揭秘》。以下为正文:云计算概述云计算主要解决了四个方面的内容:计算,网络,存储,应用。计算就是CPU和内存,例如“1...转载 2018-07-11 10:25:21 · 1347 阅读 · 0 评论 -
后端技术杂谈6:白话虚拟化技术
内核,是指的操作系统内核。所有的操作系统都有内核,无论是Windows还是Linux,都管理着三个重要的资源:计算,网络,存储。计算指CPU和内存,网络即网络设备,存储即硬盘之类的。内核是个大管家,想象你的机器上跑着很多的程序,有word,有excel,看着视频,听着音乐,每个程序都要使用CPU和内存,都要上网,都要存硬盘,如果没有一个大管家管着,大家随便用...转载 2018-07-11 10:38:41 · 1039 阅读 · 0 评论 -
后端技术杂谈7:OpenStack的基石KVM
Qemu,KVM,Virsh傻傻的分不清当你安装了一台Linux,想启动一个KVM虚拟机的时候,你会发现需要安装不同的软件,启动虚拟机的时候,有多种方法: virsh start kvm命令 qemu命令 qemu-kvm命令 qemu-system-x86_64命令 这些之间是什么关系呢?请先阅读上一篇《白话虚拟化技术》...转载 2018-07-11 11:00:38 · 1818 阅读 · 0 评论 -
后端技术杂谈8:OpenStack架构设计
OpenStack 是开源云计算平台,支持多种虚拟化环境,并且其服务组件都提供了API接口便于二次开发。OpenStack通过各种补充服务提供基础设施即服务 Infrastructure-as-a-Service (IaaS)的解决方案。每个服务都提供便于集成的应用程序接口Application Programming Interface (API)。openstack 逻辑架构图...转载 2018-07-11 11:48:51 · 1505 阅读 · 0 评论 -
后端技术杂谈9:先搞懂Docker核心概念吧
可能是把Docker的概念讲的最清楚的一篇文章本文只是对Docker的概念做了较为详细的介绍,并不涉及一些像Docker环境的安装以及Docker的一些常见操作和命令。阅读本文大概需要15分钟,通过阅读本文你将知道一下概念:容器 什么是Docker? Docker思想、特点 Docker容器主要解决什么问题 容器 VS 虚拟机 Docker基本概念: 镜像(Image),容...转载 2018-07-11 11:55:41 · 921 阅读 · 0 评论 -
后端技术杂谈10:Docker 核心技术与实现原理
Docker 核心技术与实现原理30 NOV 2017 docker namespaces cgroups unionfs aufs serverNamespaces进程网络挂载点chroot CGroupsUnionFS存储驱动AUFS其他存储驱动总结Reference要搞懂docker的核心原理和技术,首先一定要对Linux内核有一定了解。提到虚拟化技术,我们首先想到的一定是 Docker,经...转载 2018-07-11 12:14:32 · 592 阅读 · 0 评论 -
后端技术杂谈11:十分钟理解Kubernetes核心概念
十分钟带你理解Kubernetes核心概念本文将会简单介绍Kubernetes的核心概念。因为这些定义可以在Kubernetes的文档中找到,所以文章也会避免用大段的枯燥的文字介绍。相反,我们会使用一些图表(其中一些是动画)和示例来解释这些概念。我们发现一些概念(比如Service)如果没有图表的辅助就很难全面地理解。在合适的地方我们也会提供Kubernetes文档的链接以便读者深入学习...转载 2018-07-11 14:59:09 · 628 阅读 · 0 评论 -
后端技术杂谈开篇:云计算,大数据与AI的故事
快速看懂云计算,大数据,人工智能我今天要讲这三个话题,一个是云计算,一个大数据,一个人工智能,我为什么要讲这三个东西呢?因为这三个东西现在非常非常的火,它们之间好像互相有关系,一般谈云计算的时候也会提到大数据,谈人工智能的时候也会提大数据,谈人工智能的时候也会提云计算。所以说感觉他们又相辅相成不可分割,如果是非技术的人员来讲可能比较难理解说这三个之间的相互关系,所以有必要解释一下。...转载 2018-07-11 15:38:47 · 2371 阅读 · 0 评论 -
后端技术杂谈12:捋一捋大数据研发的基本概念
你了解你的数据吗(开篇)转自http://www.mdjs.info/2018/03/05/data-warehouse/concept-of-dw/0x00 前言你了解你的数据吗?前几天突然来了点灵感,想梳理一下自己对数据的理解,因此便有了这篇博客或者说这系列博客来聊聊数据。数据从业者有很多,比如说数据开发工程师、数据仓库工程师、数据分析师、数据挖掘工程师、数据产品经理等等,不同岗位的童鞋对数据...转载 2018-07-11 21:23:48 · 2291 阅读 · 0 评论 -
JavaWeb技术内幕三:JavaWeb中文编码问题
Java作为跨平台语言,涉及到的编解码问题也比较多,我们来探讨一下HTTP请求如何控制编码格式。几种常见的编码格式为什么要编码由于计算机只能看懂01,人类只能看懂字符,所以要进行编码和解码。1 在计算机中,一个字节是最小的信息存储单元,而一个字节只能表示256个字符。2 人类需要的符号远远超过256个。如何翻译各种语言需要交流,如何进行翻译呢,在计算机中提供...原创 2018-08-05 11:19:46 · 779 阅读 · 0 评论 -
JavaWeb技术内幕四:Javac编译原理
Java代码需要编译成class文件然后运行在JVM中。# Javac是什么javac是一种编译器,把java源代码转换成jvm能够识别的class文件。然后有JVM再把JVM语言转换成当前及其能够识别的机器语言。Java语言屏蔽了目标及其相关的细节,语言执行和平台无关,这一特点让Java很流行,最大的体现就是Android使用java语言开发。javac的任务是把Java源码编译...原创 2018-08-05 11:52:41 · 990 阅读 · 0 评论 -
JavaWeb技术内幕五:深入class文件结构
Java的代码可以一次编译,到处运行,是因为JVM可以识别class文件,JVM虚拟机和物理机的效果是一样的,有一套指令集让代码翻译成对应的操作,只不过JVM指令集最终还要去执行物理机的指令集,比如X86。JVM指令集简介oolong编程语言是一种汇编语言,我们可以将class文件先转化为oolong汇编语言,以便理解。实际上JVM直接基于字节码运行,不需要经过中间的汇编过程,但是我们...原创 2018-08-06 16:27:29 · 983 阅读 · 0 评论 -
JavaWeb技术内幕六:深入分析classloader工作机制
classloader顾名思义就是类加载器,负责将class加载到jvm中。事实上,classloader除了能将class加载到jvm中,还有一个重要的作用就是会审查每个类应该由谁来加载,它是一种父优先的等级加载机。classloader除了上述两个作用以外还有一个作用就是将class字节码重新解析成jvm统一要求的对象格式(说明class文件并不是加载进来就能用)classlo...原创 2018-08-06 16:28:05 · 1187 阅读 · 0 评论 -
JavaWeb技术内幕七:JVM体系结构和工作方式
JVM能够跨越计算机体系结构来执行字节码,主要是因为JVM屏蔽了与各个机器平台相关的软件或者硬件之间的差异。使得与平台相关的耦合由JVM提供者来实现。本文将介绍 1 jvm的总体设计结构 2 jvm的执行引擎如何工作 3 执行引擎如何模拟执行jvm指令JVM体系结构何谓JVMJVM是Java虚拟机,它通过模拟一个计算机来达到一个计算机所具有的的计算功能。而真实的计算机...原创 2018-08-08 07:35:15 · 1196 阅读 · 0 评论 -
JavaWeb技术内幕八:JVM内存管理
与其他高级语言不一样,在Java中基本上不会显示地调用分配内存的函数,我们甚至不用关心到底哪些程序指令需要分配内存,哪些不需要分配内存。我们首先需要从操作系统层面理解物理内存的分配和Java运行的内存分配之间的关系。物理内存与虚拟内存1 物理内存就是RAM,还有一个存储单元叫做寄存器,连接处理器和RAM或者寄存器的是地址总线,这个地址总线的宽度影响了物理地址的索引范围,32位地址总...原创 2018-08-08 22:54:44 · 1364 阅读 · 0 评论 -
《码农翻身》之浪潮之巅的Web
《码农翻身》读书笔记之浪潮之巅的Web这是我的后端读书笔记系列文章的第三篇,选取的是最近刚刚圈粉的知名博主刘欣创作的《码农翻身》。本文内容主要根据知名博主刘欣一作《码农翻身》的内容总结而来,本书的内容风趣幽默,讲解计算机理论原理也是十分透彻,由于书中常常以小故事的形式出现,为了方便学习和回顾,我把它们进行了一些改编和整理,便于自己和跟多人阅读。本篇文章主要讲述的书中的第三章“浪潮之巅的...原创 2018-08-01 22:23:44 · 1807 阅读 · 0 评论 -
《码农翻身》之技术之路
《码农翻身》读书笔记之技术之路这是我的后端读书笔记系列文章的第四三篇,选取的是最近刚刚圈粉的知名博主刘欣创作的《码农翻身》。这篇文章只是最后一部分内容。本文内容主要根据知名博主刘欣一作《码农翻身》的内容总结而来,本书的内容风趣幽默,讲解计算机理论原理也是十分透彻,由于书中常常以小故事的形式出现,为了方便学习和回顾,我把它们进行了一些改编和整理,便于自己和跟多人阅读。本篇文章主要讲述的书...原创 2018-08-02 16:30:15 · 2614 阅读 · 0 评论 -
JavaWeb技术内幕一:深入web请求过程
深入web请求过程Web2.0时代到来,互联网架构从C/S升级到B/S架构B/S架构的好处主要有两方面:一是客户端统一采用浏览器,非常简单易用。二是服务端基于统一的HTTP,与传统C/S架构采用自定义协议的方式不同,基于HTTP更加方便,降低成本。B/S网络架构概述前后端基于http协议进行交互,一次请求以后就可以断开,保证请求是无状态的,因为这样可以为更多用户同时提供...原创 2018-08-04 11:45:57 · 1398 阅读 · 0 评论 -
我的Java后端书架
我的Java后端书架 (2016年暖冬4.0版)原文出处:江南白衣书架主要针对Java后端开发。3.0版把一些后来买的、看的书添补进来,又或删掉或降级一些后来没有再翻开过的书。更偏爱那些能用简短流畅的话,把少壮不努力的程序员所需的基础补回来的薄书,而有些教课书可能很著名,但干涩枯燥,喋喋不休的把你带回到大学课堂上昏昏欲睡,不录。1. 操作系统与网络的书《Lin...转载 2017-04-02 16:34:20 · 1521 阅读 · 0 评论 -
从Java小白到收获BAT等offer,分享我这两年的经验和感悟
写在最前我写过很多篇秋招总结,这篇文章应该是最后一篇总结,当然也是最完整,最详细的一篇总结。秋招是我人生中一段宝贵的经历,不仅是我研究生生涯交出的一份答卷,也是未来职业生涯的开端。仅以此文,献给自己,以及各位在求职路上的,或者是已经经历过校招的朋友们。不忘初心,方得始终。前言在下本是跨专业渣考研的985渣硕一枚,经历研究生两年的学习积累,有幸于2019秋季招聘中拿到几个公司...原创 2017-03-08 09:40:54 · 37181 阅读 · 16 评论 -
Java工程师修炼之路(从小白到BAT的两年学习历程)
前言在下本是跨专业渣考研的985渣硕一枚,经历研究生两年的学习积累,有幸于2019秋季招聘中拿到几个公司的研发岗offer,包括百度,阿里,腾讯,今日头条,网易,华为等。一路走来也遇到很多困难,也踩了很多坑,同时我自己也探索了很多的学习方法,总结了很多心得体会,并且,我对校园招聘也做了一些研究和相应的准备。在今年的秋季招聘结束以后,我也决定把这些东西全部都写成文字,做成专题,以便...原创 2017-03-08 19:32:08 · 35427 阅读 · 6 评论