• 极客专栏正式上线!欢迎访问 https://www.jikewenku.com/topic.html
  • 极客专栏正式上线!欢迎访问 https://www.jikewenku.com/topic.html

2019年01月4日的内容

Kafka 基本原理

简介Apache Kafka是分布式发布-订阅消息系统。它最初由LinkedIn公司开发,之后成为Apache项目的一部分。Kafka是一种快速、可扩展的、设计内在就是分布式的,分区的和可复制的提交日志服务。Kafka架构它的架构包括以下组件:话题(Topic):是特定类型的消息流。消息是字节的有效负载(Payload),话……

Node.js 三大特点详解

Node.js 特点1、单线程在Java、PHP或者.net等服务器端语言中,会为每一个客户端连接创建一个新的线程。而每个线程需要耗费大约2MB内存。也就是说,理论上,一个8GB内存的服务器可以同时连接的最大用户数为4000个左右。要让Web应用程序支持更多的用户,就需要增加服务器的数量,而Web应用程序的硬件成本当然就上升了。N……

Dubbo入门——搭建一个最简单的Demo框架

Dubbo背景和简介Dubbo开始于电商系统,因此在这里先从电商系统的演变讲起。单一应用框架(ORM) 当网站流量很小时,只需一个应用,将所有功能如下单支付等都部署在一起,以减少部署节点和成本。 缺点:单一的系统架构,使得在开发过程中,占用的资源越来越多,而且随着流量的增加越来越难以维护 垂直应用框架(MVC) 垂直应……

Dubbo服务提供者发布过程

服务提供者暴露一个服务的详细过程首先ServiceConfig类拿到对外提供服务的实际类ref(如:HelloServiceImpl),然后通过ProxyFactory类的getInvoker方法使用ref生成一个AbstractProxyInvoker实例,到这一步就完成具体服务到Invoker的转化。接下来就是Invoker转换到Exp……

Dubbo 整合 Pinpoint 做分布式服务请求跟踪

在使用Dubbo进行服务化或者整合应用后,假设某个服务后台日志显示有异常,这个服务又被多个应用调用的情况下,我们通常很难判断是哪个应用调用的,问题的起因是什么,因此我们需要一套分布式跟踪系统来快速定位问题,Pinpoint可以帮助我们快速定位问题(当然,解决方案也不止这一种)。什么是Pinpoint摘自Pinpoint学习笔记https:……

一篇文章带你深入了解Dubbo分布式服务框架

     一、产生的背景  随着互联网的发展,网站应用的规模不断扩大,常规的垂直应用架构已无法应对,分布式服务架构以及流动计算架构势在必行,亟需一个治理系统确保架构有条不紊的演进。下面我们用……

DevOps通用及版本控制面试题

通用DevOps面试问题此类别将包含与任何特定DevOps阶段无关的问题。这里的问题旨在测试您对DevOps的理解,而不是关注特定工具或阶段。 问题一:DevOps和Agile之间的根本区别是什么?两者之间的差异列于下表中。问题二:为什么需要DevOps?据我所知,这个答案应该从解释一般市场趋势开始……

为什么大公司一定要使用DevOps?

0 DevOps的意图究竟什么是DevOps? 要想回答这个问题,首先要明确DevOps这个过程参与的人员是谁?即开发团队和IT运维团队!那么,DevOps的意图是什么呢?即在两个团队之间,建立良好的沟通和协作,更快更可靠的创建高质量软件!事实上,并不是这两个团队之间的协作帮助交付了更好的软件,而是“开发”和“运维”团队之间的统一导致了……

新手快速搭建ActiveMQ服务「消息队列」

前言ActiveMQ 是Apache出品,最流行的,能力强劲的开源消息总线。ActiveMQ 是一个完全支持JMS1.1和J2EE 1.4规范的 JMS Provider实现,尽管JMS规范出台已经是很久的事情了,但是JMS在当今的J2EE应用中间仍然扮演着特殊的地位。在生产项目中,很多时候需要消息中间件来进行分布式系统间的通信。它具有低耦……

Vue2+VueRouter2+Webpack+Axios 构建项目实战(三)认识项目所有文件

这一篇介绍vue框架的所有文件,让你对vue框架有一个大概的认知,公众号已经准备了vue实战教程,如果您有需要,可以在公众号回复“vue”获取。上一节中,我们通过安装 nodejs 系统环境,以及 vue-cli 脚手架工具,在执行完命令后,我们就已经将一个初始项目跑起来了。但是,我们的项目代码,还一个都没有看到。因此,这个章……

Vue2+VueRouter2+Webpack+Axios 构建项目实战(一)基础知识概述

基本理念        通过对接 cnode.js 的公开 api 的列表,以及详情页面,实现一个超小型的项目实战,尽可能的掌握 vue 的项目入门的各项关键配置。         本系列博文不涉及 vuex 的内容。因为这部分内容属于比较高阶的内容,并且在大多数中小型项目中是没有多大用处的。所以情况是,大多数情况下,你并不……

Juqery就是这么简单

什么是Jquery?Jquey就是一款跨主流浏览器的JavaScript库,简化JavaScript对HTML操作就是封装了JavaScript,能够简化我们写代码的一个JavaScript库为什么要使用Jquery?我觉得非常重要的理由就是:它能够兼容市面上主流的浏览器,我们学习AJAX就知道了,IE和FireFox获取异步对象的方式是……

JavaScript删除数组重复元素的5个高效算法

1.遍历数组法最简单的去重方法, 实现思路:新建一新数组,遍历传入数组,值不在新数组就加入该新数组中;注意点:判断值是否在数组的方法“indexOf”是ECMAScript5 方法,IE8以下不支持,需多写一些兼容低版本浏览器代码,源码如下:// 最简单数组去重法functionunique1(array){ var n = []; ……

CSS的浮动以及盒子模型

今天我们来了解一下浮动我们之前说过div是一个块级元素单独占一行的,排版会很不方便,这就引出了我们今天要学习的内容:浮动这是没加浮动的页面效果:CSS浮动浮动的框可以向左或向右移动,直到它的外边缘碰到包含框或另一个浮动框的边框为止。由于浮动框不在文档的普通流中,所以文档的普通流中的块框表现得就像浮动框不存在一样。单独看上面的……

HTML5应用程序缓存Application Cache详解

 什么是Application CacheHTML5引入了应用程序缓存技术,意味着web应用可进行缓存,并在没有网络的情况下使用,通过创建cache manifest文件,可以轻松的创建离线应用。Application Cache带来的三个优势是:① 离线浏览② 提升页面载入速度③ 降低服务器压力而且主要浏览器皆以支持Applica……

stackoverflow:为什么排序后的数组要比未排序数组运行快3倍以上?

周末,在 stackoverflow 上面发现一个有趣的问题:Why is it faster to process a sorted array than an unsorted array? 提问者用256的模数随机填充一个固定大小的大数组,然后对数组的一半元素求和,并分别用 C++ 和 Java 代码来证实了这一现象,本文主要用 J……

为什么像Facebook这类的网站需要上万个工程师维护?

曾经见到知乎上有人问“为什么像 Facebook 这类的网站需要上万个工程师维护?”,下面的回答多种多样,但总结起来就是:一个高性能的web系统需要从无数个角度去考虑他,大到服务器的布局,小到软件中某个文件的实现,甚至于某个循环内的运算如果出现不严谨都可能导致全盘崩溃。上面提到web性能优化需要多个角度去考虑,我们无法考虑到所有的优化细节,但可……

JVM调优总结(四):图解分代垃圾回收器

一、为什么要分代?分代的垃圾回收策略,是基于这样一个事实:不同的对象的生命周期是不一样的。因此,不同生命周期的对象可以采取不同的收集方式,以便提高回收效率。 在Java程序运行的过程中,会产生大量的对象,其中有些对象是与业务信息相关,比如Http请求中的Session对象、线程、Socket连接,这类对象跟业务直接挂钩,因此生命周期比较长……

Docker 十分钟动手教程

主要内容:列出Docker的版本号在Docker的官方镜像仓库,搜索别人已经制作好的Docker镜像下载镜像,并以这个镜像为模板,在Docker容器中运行一个shell命令输出“hello world”在Docker容器中安装ping软件包,把他提交为新镜像基于安装有ping软件的新镜像为模板,在Docker容器中……

从输入URL到页面展示到底发生了什么

刚开始写这篇文章还是挺纠结的,因为网上搜索“从输入url到页面展示到底发生了什么”,你可以搜到一大堆的资料。而且面试这道题基本是必考题,二月份面试的时候,虽然知道这个过程发生了什么,不过当面试官一步步追问下去的,很多细节就不太清楚了。本文的目的是通过输入url之后发生的事情来做知识的总结和扩展。所以文章可能会很杂。    总的过程大概如下:……

从输入URL到页面加载发生了什么

问题:在浏览器中输入URL到整个页面显示在用户面前时这个过程中到底发生了什么。仔细思考这个问题,发现确实很深,这个过程涉及到的东西很多。总体来说分为以下几个过程:DNS解析TCP连接发送HTTP请求服务器处理请求并返回HTTP报文浏览器解析渲染页面连接结束具体过程 1、DNS解析DNS解析的过……

从输入网址到浏览器呈现页面内容,中间发生了什么?

2准备当你在浏览器中输入网址(例如www.coder.com)并且敲了回车以后, 浏览器首先要做的事情就是获得coder.com的IP地址,具体的做法就是发送一个UDP的包给DNS服务器,DNS服务器会返回coder.com的IP, 这时候浏览器通常会把IP地址给缓存起来,这样下次访问就会加快。比如Chrome, 你可以通过c……

软件开发中会用到的图

一、背景大家应该在从事软件开发领域工作时间有一段时间之后,就开始有画图的意识,不管是懵懂的学别人还是想更好的让其它人理解自己的一个观点。所谓“一图胜千言”,我们身处于软件开发这个水很深且要求精确的复杂领域里,要想把事情做好,最基本的是要把事情想明白,其次还要让相关的人能够明白你要说的东西,进行协作。特别对于一位架构师来说,能否画得一手好图尤其……

HashMap详解

什么是HashMap?HashMap是基于哈希表的Map接口的非同步实现。此实现提供所有可选的映射操作,并允许使用null值和null键。此类不保证映射的顺序,特别是它不保证该顺序恒久不变。HashMap的数据结构 在Java编程语言中,最基本的结构就是两种,一个是数组,另外一个是模拟指针(引用),所有的数据结构都可以用这两个基本结构来构造的,……

  • 精品技术教程
  • 编程资源分享
  • 问答交流社区
  • 极客文库知识库

客服QQ


QQ:2248886839


工作时间:09:00-23:00