hexo高阶教程:教你怎么让你的hexo博客在搜索引擎中排第一 - 掘金
本文首发在我的个人博客:http://cherryblog.site/欢迎大家前去参观,顺便求fork,么么哒~ 上一次在掘金上发表的hexo高阶教程:hexo高阶教程next主题优化之加入网易云音乐、网易云跟帖、动态背景、自定义主题、统计功能,收到了不少朋...
聊聊分布式事务 - 阅读 - 掘金
原文出处: 员海滨 投稿 分布式事务场景如何设计系统架构及解决数据一致性问题,个人理解最终方案把握以...
JVM 性能调优监控工具 jps、jstack、jmap、jhat、jstat 等使用详解 - 后端 - 掘金
javap 和 javac ...
HTTP最强资料大全 - 掘金
更新内容:新增视频教程 - WEB系统测试、PHP的HTTP协议、okhttp框架解析与应用、走进Requests库、接口测试基础入门篇、JMeter之HTTP协议接口性能测试;更新时间:2017-04-03 为了方便有兴趣的朋友一起维护HTTP资源大全,我...
系统设计入门 - 后端 - 掘金
Motivation Learn how to design large scale systems. Prep for the system design interview. L...
一个 MVP 架构的应用,代码整洁干练,高度封装 - Android - 掘金
练习MVP架构开发的App,算是对自己学过的知识做一个总结,做了有一段时间,界面还算挺多的,代码量还是有的,里面做了大量封装,整体代码整理得很干净,这个我已经尽力整理了。不管是文件(Java、xml、资源文件)命名,还是布局设计尽量简单简洁。代码不会写的很复杂...
ReentrantLock 实现原理探究 - 后端 - 掘金
1、ReentrantLock介绍 A reentrant mutual exclusion Lock with the ...
各大公司 Java 后端开发面试题总结 - 后端 - 掘金
ThreadLocal(线程变量副本) Synchronized实现内存共享,ThreadLocal为每个线程维护一个本地变量。 采用空间换时间,它...
jvm 系列 (七):jvm 调优 - 工具篇 - 后端 - 掘金
16年的时候花了一些时间整理了一些关于jvm的介绍文章,到现在回顾起来还是一些还没有补充全面,其中就包括如何利用工具来监控调优前后的性能变化。工具做为图形化界面来展示更能直观的发现问题,另一方面一些耗费性能的分析(dump文件分析)一般也不会在生产直接分析,往...
【Java 高手之路】JVM 源码分析之堆外内存完全解读 - 后端 - 掘金
概述 广义的堆外内存 说到堆外内存,那大家肯定想到堆内内存,这也是我们大家接触最多的,我们在jvm参数里通常设置-Xmx来指定我们的堆的最大值,不过这还不是我们理解的Java堆,-Xmx的值是新生代和老生代的和的最大值,我们在jvm参数里通常还会加一个参数-X...
基于 Redis 的分布式锁到底安全吗? - 掘金
【完整版】 网上有关Redis分布式锁的文章可谓多如牛毛了,不信的话你可以拿关键词“Redis 分布式锁”随便到哪个搜索引擎上去搜索一下就知道了。这些文章的思路大体相近,给出的实现算法也看似合乎逻辑,但当我们着手去实现它们的时候,却发现如果你越是仔细推敲,疑虑...
我的开源 Android 开发框架 Pluto - Android - 掘金
对于人工智能,李开复认为,“能够取代基本人类所有需要低于5秒钟的工作,它都能取代。” 那么,“人工智能帮我搭建一个快速便捷通用稍稍带点逼格的Android应用开发框架吧?”,AI也是要依赖大数据和机器学习的嘛,与其被信息瞬息万变...
tomcat7 源码分析 - 后端 - 掘金
tomcat7源码分析 本篇分为六个部分: ...
微服务与 RPC - 后端 - 掘金
在支付系统的微服务架构中,基础服务的构建是重中之重, 本文重点分析如何使用Apache Thrift + Google Protocol Buffer来构建基础服务。 一、RPC vs Restful在微服务中,使用什么协议来构建服务体系,一直是个热门话题。 ...
安居客Android项目架构演进 - 掘金
本文已授权微信公众号 AndroidDeveloper 独家发布。 入职安居客三年从工程师到 Team Leader,见证了 Android 团队一路走来的发展历程。因此有心将这些记录下来与大家分享,也算是对自己三年来一部分工作的总结。希望对大家有所帮助,更...
Android 状态栏操作,你想知道的都在这里了 - 掘金
一直以来,iOS 设备上状态栏背景色和图标文字颜色的灵活可变性始终受到设计人员的青睐,有意地恰当地融入到 App 的各种界面设计当中,更好地提升用户体验。 由于系统的限制,在老版本的安卓系统中,Android App 无法做到这些,产生一些设计上的遗憾。幸运的...
Android 仿今日头条的开源项目 - Android - 掘金
起因 看到众多大神纷纷有了自己的开源项目,于是自己琢磨着也想做一个开源项目来学习下,因为每次无聊必刷的app就是今日头条,评论简直比内容都精彩,所以我打算仿今日头条来练练手,期间也曾放弃过,也遇到很多坑,拿出来跟大家分享一下。该项目使用的是MVP+RxJava...
构建高可用 ZooKeeper 集群 - 后端 - 掘金
ZooKeeper 是 Apache 的一个顶级项目,为分布式应用提供高效、高可用的分布式协调服务,提供了诸如数据发布/订阅、负载均衡、命名服务、分布式协调/通知和分布式锁等分布式基础服务。由于 ZooKeeper 便捷的使用方式、卓越的性能和良好的稳定性,被...
ZooKeeper 的一致性算法赏析 - 后端 - 掘金
1 ZAB介绍 ZAB协议全称就是ZooKeeper Atomic Broadcast protocol,是ZooKeeper用来实现一致性的算法,分成如下4个阶段。 先来解释下部分名词 electionEpoch:每执行一次leader选举,election...
分布式一致性算法:Raft 算法(论文翻译) - 后端 - 掘金
Raft 算法是可以用来替代 Paxos 算法的分布式一致性算法,而且 raft 算法比 Paxos 算法更易懂且更容易实现。本文对 raft 论文进行翻译,希望能有助于读者更方便地理解 raft 的思想。如果对 Paxos 算法感兴趣,可以看我的另一篇文章:...
干货:深度剖析分布式搜索引擎设计 - 后端 - 掘金
版权声明:本文由西加加授权给 StuQ 使用,版权归西加加老师所有,转载请联系作者本人 ...
如何用一周时间开发一款 Android APP 并在 Google Play 上线 - Android - 掘金
目标:实现纸飞机App - 采用MVP架构,集合了知乎日报、果壳精选和豆瓣一刻的综合性阅读客户端。效果图如下所示: PaperPlane ...
日均PV千万的后台是如何形成的 - 掘金
新书Java并发编程系统与模型已上线,欢迎拜读。 一个日均PV在千万以上的移动客户端,大概有20w-50w的注册用户数。为了简单起见,将一次PV来代表一次Http请求。在移动客户端下,这些是纯逻辑的,不包含...
登录那些事儿 - 后端 - 掘金
也不知道是什么原因,刚开始不久的职业生涯,在技术这条路走着走着,和「登录」总是有着一个不解之缘。还记得当初学习Web编程的时候么?不管是Java、.Net、PHP,继经典「Hello World」之后,要写的很有可能就是「登录」功能。至今「登录」的问题还是让我...
深入分析 java 线程池的实现原理 - 后端 - 掘金
转载请注明原创出处,谢谢!简书占小狼http://www.jianshu.com/users/90ab66c248e6/latest_articles 前言 线程...
从 I/O 模型到 Netty(三) - 掘金
Netty 零、写在前面 本文虽然是讲Netty,但实际更关注的是Netty中的NIO的实现,所以对于Netty中的OIO(Old I/O)并没有做过多的描述,或者说根本只字未提,所以本文中所述的所有实现细节都是基于NIO版本的。 Netty作为一个已经发展了...
35 个 Java 代码性能优化总结 - 后端 - 掘金
前言 代码优化,一个很重要的课题。可能有些人觉得没用,一些细小的地方有什么好修改的,改与不改对于代码的运行效率有什么影响呢?这个问题我是这么考虑的,就像大海里面的鲸鱼一样,它吃一条小虾米有用吗?没用,但是,吃的小虾米一多之后,鲸鱼就被喂饱了。代码优化也是一样,...
源码分析之 ReentrantLock - 后端 - 掘金
ReentrantLock类是属于java.util.concurrent的。实现了Lock, java.io.Serializable两个接口,是一个可重入的互斥锁,所谓可重入是线程可以重复获取已经持有的锁。 /** * Creates an in...
Spring+SpringMVC+MyBatis 整合 - 后端 - 掘金
spring+SpringMVC+MyBatis(SSM)在我们项目中是经常用到的,这篇文章主要讲解使用Intellij IDEA整合SSM,具体环境如下: ...
在 Java 路上,我看过的一些书、源码和框架(持续更新) - 后端 - 掘金
简书 占小狼转载请注明原创出处,谢谢!如果读完觉得有收获的话,欢迎点赞加关注 物有本末,事有终始,知所先后,则近道矣 ...
Java Jvm 垃圾回收与类加载相关面试知识总结 - 后端 - 掘金
(1)内存模型以及分区,需要详细到每个区放什么。 堆:Java虚拟机管理内存中最大的一块,线程共享区域。所有对象实例和数组都在堆上分配内存空间。 栈...
Java 多线程——生产者消费者模型 - 演义 - 后端 - 掘金
这里主要解读(乱侃)生产者消费者模型的工作方式以及JDK5.0新增实现和传统同步关键字实现方式的区别。 在JDK5.0新增了Lock、Condition这两个接口来处理多线程安全问题。 ...
JVM 垃圾回收 - 后端 - 掘金
提到JVM垃圾回收,总觉得离我们程序员有一定的距离。在JAVA中,那是系统自己干的事,我们关心那个干嘛?也就是说我们为什么要学习这个东西,大家开开心心地敲代码不好吗? 还真的不好,一方面我觉得我们可以学习下JAVA语言设计上的一...
大话程序猿眼里的高并发之续篇 - 后端 - 掘金
分层,分割,分布式 大型网站要很好支撑高并发,这是需要长期的规划设计 在初期就需要把系统进行分层,在发展过程中把核心业务进行拆分成模块单元,根据需求进行分布式部署,可以进行独立团队维护开发。 分层 ...
各大公司 Java 后端开发面试题总结 - 后端 - 掘金
ThreadLocal(线程变量副本) Synchronized实现内存共享,ThreadLocal为每个线程维护一个本地变量。 采用空间换时间,它...
dubbo 源码分析 - 服务注册 - 后端 - 掘金
前言 对于分布式服务架构,解决服务的发现问题,引入了注册中心中间件,从而很好的解决了服务双方(消费方和提供方)的直接依赖问题。这种解耦的意义是非凡的,不仅在程序运行时保证了灵活性,在开发阶段也使得快速迭代成为了可能,甚至在运维层面也提供了非常好...
Dubbo 源码分析 - 后端 - 掘金
dubbo源码解析 具体内容查看相关的markdown,有问题联系紫苑,或者邮件: ziyuan@2dfire.com...
dubbo 插件化的实现分析 · - 后端 - 掘金
前言 Dubbo的插件化实现非常类似于原生的JAVA的SPI:它只是提供一种协议,并没有提供相关插件化实施的接口。用过的同学都知道,它有一种java原生的支持类:ServiceLoader,通过声明接口的实现类,在META-INF/servic...
spring 核心框架体系结构(jar 包依赖) - 后端 - 掘金
很多人都在用spring开发Java项目,但是配置maven依赖的时候并不能明确要配置哪些spring的jar,经常是胡乱添加一堆,编译或运行报错就继续配置jar依赖,导致spring依赖混乱,甚至下一次创建相同类型的工程时也不知道要配置哪些spring的依赖...
轻松搞定 rabbitMQ - 后端 - 掘金
本文是简单介绍一下RabbitMQ,参考官网上的教程。同时加入了一些自己的理解。官网教程详见:"Hello World!"。 引言 你是否遇到过多个系统间需要通过定时任务来同步某些...
关于 spring aop (aspectj) 你该知晓的一切 - 后端 - 掘金
【版权申明】未经博主同意,谢绝转载!(请尊重原创,博主保留追究权) http://blog.csdn.net/javazejian/article/details/54629058 出自【zejian的博客】 ...
Java:Annotation(注解)-- 原理到案例 - 后端 - 掘金
图片取自文末推荐文章 本文章涉及代码已放到github上annotation-study 1.Annotation为何而来 What:Annotation干嘛的 ...
使用 Spring 框架的声明式事务管理 - 后端 - 掘金
记录一个上周遇到的小问题。 后端开发免不了要和事务打交道,比较常用的就是利用 Spring 框架的声明式事务管理,简单的说就是在需要事务管理的类或方法上添加 @Transactional 注解,然后在配置类上...
死磕 Java 并发 - 深入分析 synchronized 的实现原理 - 后端 - 掘金
记得刚刚开始学习Java的时候,一遇到多线程情况就是synchronized,相对于当时的我们来说synchronized是这么的神奇而又强大,那个时候我们赋予它一个名字“同步”,也成为了我们解决多线程情况的百试不爽的良药。但是,随着我们学习的进行我们知道sy...
简单高可用 redis 架构实践 - 后端 - 掘金
背景:支撑线上千万级别的天级查询请求,要求高可用。 一、方案调研 1.1 redis版本选择 redis当前主流版本是redis 2.x 和 ...
Java 知识图谱收集整理 - 后端 - 掘金
平时看到不错的图谱的时候会习惯性的保存收集,今天一看电脑,发现还有蛮多的,所以先把Java知识图谱分享出来,如果能帮助到Java学习者,那是最好不过的了。 1、Java学习路径1 ...
超全面 spring 复习总结笔记 - 后端 - 掘金
前言 最近感触颇深,原谅我在开头写心情日记。介意的跳过看正文。 市场 趋势 近几年,技术市场对新人越来越不友好,社招几乎是三年经验起...
Java 进阶资源汇总 - 后端 - 掘金
Java经过将近20年的发展壮大,框架体系已经丰满俱全;从前端到后台到数据库,从智能终端到大数据都能看到Java的身影,个人感觉做后台进要求越来越高,越来越难。 为什么现在Java程序员越来越难做,一是Java框架体系众多,学习成本提高,每一个细分问题...
服务端指南 数据存储篇 | MySQL(03) 如何设计索引 - 掘金
改善性能最好的方式,就是通过数据库中合理地使用索引,换句话说,索引是提高 MySQL 数据库查询性能的主要手段。在下面的章节中,介绍了索引类型、强制索引、全文索引。 原文地址:服务端指南 数据存储篇 | MySQL(03) 如何设计索引博客地址:http://...
从签到、抽奖、投票到弹幕互动,这里有一整套活动方案 - 工具资源 - 掘金
开会议、办活动,每个企业都希望能够办得高端大气上档次。寻觅多个方案提供商,想要实现签到、抽奖、投票一体化,往往需要多个平台不断切换,非常麻烦。 ...
常见的安全算法 - 后端 - 掘金
本文整理了常见的安全算法,包括MD5、SHA、DES、AES、RSA等,并写了完整的工具类(Java 版),工具类包含测试。 一、数字摘要算法 ...
百度开源的分布式 id 生成器 - 后端 - 掘金
In English UidGenerator是Java实现的, 基于Snowflake算法的唯一ID生成器。UidGenerator以组件形式工作在应用项目中, 支持自定义workerId位数和...
还搞不清Spring 与 Spring MVC 容器之间的关系? - 掘金
新书Java并发编程系统与模型已上线,欢迎拜读。 在使用Spring MVC的时候,标准的配置是如下这样的: 1.ContextLoaderListener配置: <c...
SSM(十一) 基于 dubbo 的分布式架构 - 掘金
前言 现在越来越多的互联网公司还是将自己公司的项目进行服务化,这确实是今后项目开发的一个趋势,就这个点再凭借之前的SSM项目来让第一次接触的同学能快速上手。 浅谈分布式架构 分布式架构单看这个名字给人的感觉就是高逼格,但其实从历史的角度来分析一下就比较明了了。...
Java 基础思维导图,让 Java 不再难懂 - 工具资源 - 掘金
思维导图的好处 最近看了一些文章的思维导图,发现思维导图真是个强大的工具。了解了思维导图的作用之后,觉得把它运用到java上应该是个不错的想法,这样回顾知识点的时候一目了然,快速知道自己的短板。 思维导图不仅仅只有简单明了这个好处,它还能加深人对主题的印象和...
Netty 源码 (三):I/O 模型和 Java NIO 底层原理 - 后端 - 掘金
上一篇文章我们主要讲解了Netty的Channel和Pipeline,了解到不同的Channel可以提供基于不同网络协议的通信处理.既然涉及到网络通信,就不得不说一下多线程,同步异步相关的知识了.Netty的网络模型是多线程的Reactor模式,所有I/O请求...
八种架构设计模式及其优缺点概述 (中) - 后端 - 掘金
在上篇文章中,介绍了八种架构设计模式中的两种,既:单库单应用模式、内容分发模式,没有读过的同学请手动微信关注“码农原创”公众号,在历史消息中寻找。接下来继续介绍三种...
websocket 历史及使用详解 - 掘金
一、阅前热身 什么是keep-alive 1、keep-alive只是客户端的一种建议 我们打开百度首页,进一步查看header。 image_1b2idfp2k4ecu8pagh1mkutf39.png-415.7kB 如图,我们看到请求header中有一行...
HTTP最强资料大全 - 掘金
更新内容:新增视频教程 - WEB系统测试、PHP的HTTP协议、okhttp框架解析与应用、走进Requests库、接口测试基础入门篇、JMeter之HTTP协议接口性能测试;更新时间:2017-04-03 为了方便有兴趣的朋友一起维护HTTP资源大全,我...
nginx、swoole 高并发原理初探 - 后端 - 掘金
1 阅前热身 为了更加形象的说明同步异步、阻塞非阻塞,我们以小明去买奶茶为例。 同步与异步 ...
单页应用 - Token 验证 - 掘金
第一次接触单页应用,记录公司项目关于Token验证知识. Token的工作原理 Token工作原理 1. 登录时候,客户端通过用户名与密码请求登录 2. 服务端收到请求区验证用户名与密码 3. 验证通过,服务端会签发一个Token,再把这个Token发给客户端...
我是如何根据豆瓣 api 来理解 Restful API 设计的 - 后端 - 掘金
1.什么是REST REST全称是Representational State Transfer,表述状态转移的意思。它是在Roy Fielding博士论文首次提出。REST本身没有创造新的技术、组件或服务,它的理念就是在现有的...
HTTP 思维导图 - 后端 - 掘金
概述-Summary 报文-Message 连接-Connection 代理-Proxy 缓存-Cache ...
开发笔记之你弄不懂的JAVA反射机制 - 掘金
_寒鸦, FrigidCrow我热爱编程, 代码让我快乐, 我认为上帝就是最强大的程序员, "Hello World"真正的开辟了一个世界. JAVA反射机制, 啧啧, 当你看到这几个字的时候就有一种不好的预感, 没错, 这个东西是不怎...
探究高可用服务端架构的优秀资料索引 - 后端 - 掘金
探究高可用服务端架构的优秀资料索引从属于笔者的 服务端应用程序开发与系统架构 系列文章;最近随着公司业务的发展与终端用户的增加,保证系统的高可用性也日渐成为团队考虑的重要因素,笔者也把去年以来看的一些文章归集整理,抛砖引玉,如果有其他优秀的望不吝赐教。 探究...
Solr 6.2 搭建搜索引擎应用实践 - 后端 - 掘金
一、前言在开发网站/App项目的时候,通常需要搭建搜索服务。比如,新闻类应用需要检索标题/内容,社区类应用需要检索用户/帖子。对于简单的需求,可以使用数据库的 LIKE 模糊搜索,示例:SELECT * FROM news WHERE title LIKE '...
重拾后端之Spring Boot(四):使用JWT和Spring Security保护REST API - 掘金
重拾后端之Spring Boot(一):REST API的搭建可以这样简单重拾后端之Spring Boot(二):MongoDb的无缝集成重拾后端之Spring Boot(三):找回熟悉的Controller,Service重拾后端之Spring Boot(四...
Java 对象创建的流程 - 掘金
Object obj = new Object(); 虚拟机遇到 new 指令 检查指令的参数是否能在常量池中定位到一个类的符号引用 检查符号引用是否已经被加载、解析和初始化。如果没有则进行类加载。 虚拟机为新生对象分配内存(对象所需的内存大小在类加载...
单例模式的写法(看完这个就够了) - Android - 掘金
不管以那种形式实现单例模式,核心原理就是将构造函数私有化,并且通过静态方法获取一个唯一的实例。在这个获取过程中必须保证线程安全、防止序列化导致重新生成实例对象等问题。 ...
深入了解 Java 之垃圾回收 - Android - 掘金
讲解之前先插一句,对于Java的一些变量的存储简单了解一下: 1、本地变量(局部变量):在方法体, 构造体内部定义的变量,在方法结束的时候就被摧毁(虚拟机栈的局部变量表) 2、静态变量(类变量、全局变量;+ final...
正则表达式前端使用手册 - 前端 - 掘金
导读 你有没有在搜索文本的时候绞尽脑汁, 试了一个又一个表达式, 还是不行. 你有没有在表单验证的时候, 只是做做样子(只要不为空就好), 然后烧香拜佛, 虔诚祈祷, 千万不要出错. 你有没有在使用sed 和 grep 命令的时候, 感...
深入理解 Java 虚拟机总结 - Android - 掘金
Java 虚拟机总结...
深入了解 Java 之类加载和案例分析 - Android - 掘金
在讨论JVM内存区域分析之前,先来看一下Java程序具体执行的过程: Java 程序的执行过程:Java 源代码文件(.Java文件)-> Java Compiler(Java编译器)->Java 字节码文件(.clas...
Java 集合框架分析 - HashMap - Android - 掘金
本篇文章主要分析一下Java集合框架中的Map部分,HashMap,该源码分析基于JDK1.8,分析工具,AndroidStudio,文章分析不足之处,还请见谅! 一、HashMap简介 基于哈希...
那些年,我们一起写过的 “单例模式” - Android - 掘金
本文来自:“天天P图攻城狮”公众号(ttpic_dev) 题记 度娘上对设计模式(Design pattern)的定义是:“一套被反复使用、多数人知晓的、经过分类编目的、代码设计经验的总结。”它由著名的“四人帮”,又称 GOF (即 Gang...
Java Jvm 垃圾回收与类加载相关面试知识总结 - 后端 - 掘金
(1)内存模型以及分区,需要详细到每个区放什么。 堆:Java虚拟机管理内存中最大的一块,线程共享区域。所有对象实例和数组都在堆上分配内存空间。 栈...
一起来说 Vim 语 - 工具资源 - 掘金
作为一款古老而具有持久生命力的编辑器,Vim 自有它的强大之处。很多人觉得 Vim 的学习曲线太陡峭了,为了能够把 Vim 用得风生水起,不得不记忆大量的命令。如果你是 Vim 新手,刚入门就开始面对着浩如烟海的命令逐条学习,我相信你一定会逐渐失去对它的兴趣。...
深入了解 Java 之虚拟机内存 - Android - 掘金
在讨论JVM内存区域分析之前,先来看一下Java程序具体执行的过程: Java 程序的执行过程:Java 源代码文件(.Java文件)-> Java Compiler(Java编译器)->Java 字节码文件(.class文件)->类加...
【原】cookie 小结 - 前端 - 掘金
2月份参加了一场面试,有一些关于cookie的问题回答的不是很好,所以这篇文章我们来对cooKie做一个探讨和总结,查漏补缺。其实本文很早之前都写的差不多了,不过关于cookie跨域方面,查了比较多的资料,始终没有一个太好的结果,所...
Java 数据结构之 Map 学习总结 - Android - 掘金
前言: 前面学习总结了List的使用及效率对比,今天总结学习一下键值映射关系Map,顺便学习一下Android中使用Map需要注意哪些,以及谷歌官方针对Android对Map做了哪些优化。 先了解下Map ...
Java 线程通信内存模型 --- 主内存与工作内存 - Android - 掘金
多任务和高并发是衡量一台计算机处理器的能力重要指标之一。一般衡量一个服务器性能的高低好坏,使用每秒事务处理数(Transactions Per Second,TPS)这个指标比较能说明问题,它代表着一秒内服务器平均能响应的请求数,而TPS值与程序的并发能力有着...
从实用性角度详述 JAVA 异常 - 后端 - 掘金
我原本是个快乐的iOS开发者, 总是会看到一张图片: 抛出异常 我就在想crash就crash了呗, 弄这么多学名干嘛...
Python 资源大全中文版 - 后端 - 掘金
Python 资源大全中文版 我想很多程序员应该记得 GitHub 上有一个 Awesome - XXX 系列的资源整理。awesome-python 是 vinta 发起维护的 Python 资源列表,内容包括:Web框架、网络爬虫、网络内容提取、模...
各大公司 Java 后端开发面试题总结 - 后端 - 掘金
ThreadLocal(线程变量副本) Synchronized实现内存共享,ThreadLocal为每个线程维护一个本地变量。 采用空间换时间,它...
前后端分离的思考与实践 - 后端 - 掘金
原文:http://ued.taobao.org/blog/2014/04/full-stack-development-with-nodejs/ 作者:常胤 前言 为了解决传统Web开发模式带来的各种问题,我们进行了许多尝试,但由于前/后端的物理鸿沟,尝试...
HTTP 协议简介 - 掘金
HTTP (HyperText Transfer Protocol, 超文本传输协议)是互联网上应用最为广泛的一种网络协议,它是基于 TCP 的应用层协议,简单地说就是客户端和服务器进行通信的一种规则,它的模式非常简单,就是客户端发起请求,服务器响应请求,如下...
Java 中的增强 for 循环(for each)的实现原理与坑 - 后端 - 掘金
在JAVA中,遍历集合和数组一般有以下三种形式: for (int i = 0; i < list.size(); i++) { System.out.print(list.get(i) + ","); } Iterator iterator ...
TCP/IP 协议 - 后端 - 掘金
首先,为什么需要运输层?我们都知道网络层中根据IP地址可以确定整个网络中的一台主机.但是,真正进行通信的是两台主机中的进程.网络层只能唯一标识主机.如果没有了运输层,网络层可以通过IP地址把数据交付给接收方,但是对于接收方主机而言,并不知道这个数据要交给哪一个...
2017 年小米春招内推面试面经 - 后端 - 掘金
首先,我感到很讶异的是,在我投完简历一天后(2017年2月 23日),小米的工作人员就打电话给我,并且敲定了电话面试的日期(2017年2月27日)。当时我还在家里享受着寒假呢,这也许是来自东北某末流985的优势吧2333。 ...
【死磕 Java 并发】—–Java 内存模型之分析 volatile - 后端 - 掘金
前篇博客【死磕Java并发】—–深入分析volatile的实现原理 中已经阐述了volatile的特性了: volatile可见性;对一个volatile的读,总可以看到对这个变量最终的写; volatile原子性...
关系型数据库工作原理简述 - 后端 - 掘金
关系型数据库工作原理简述 翻译自 VLADMIHALCEA 的 How does a relational database work,从属于笔者的 服务端基础架构入门与实践。本文只是寥寥数言的关系型数据库工作流程简述,关于关系型数据库...
重新认识 java(七) - final 关键字 - 后端 - 掘金
你总以为你会了,其实你只是一知半解。 final 关键字概览 final关键字可用于声明属性、方法、参数和类,分别表示属性不可变、方法不可覆盖、参数不可变和类不可...
爬取个人知乎收藏夹内容生成网站 - 后端 - 掘金
无聊的时候,习惯刷刷知乎,但是新的有价值的内容也不多,多的是不断涌入的营销号、推广和某些知乎live。于是乎,想着不如刷自己的收藏夹吧,很多优秀回答其实看了不久就忘了,静静地躺在收藏夹里,一直没被翻过,何况我收藏频率虽然不高,几年下来积累也不少,这样刷起来也能...
深入理解并发 / 并行,阻塞 / 非阻塞,同步 / 异步 - 后端 - 掘金
- 阻塞,非阻塞 首先,阻塞这个词来自操作系统的线程/进程的状态模型中,如下图: ...
单页面应用下的 JS 内存管理 (1) - 前端 - 掘金
内存问题对于后端童鞋而言可能是家常便饭,特别是C++童鞋。我在实习时做过半年的c++游戏客户端开发(也是前端开发哦),也见识了各式各样的内存问题,就说说我的第一个坑,当时做个需求,就是在玩家名字上加些酷炫的封号(就是下图中红框中的图片),人小不懂事,频繁去ne...
Java 方向如何准备 BAT 技术面试答案 (汇总版) - 后端 - 掘金
这个主题的内容之前分三个篇幅分享过,导致网络上传播的比较分散,所以本篇做了一个汇总,同时对部分内容及答案做了修改,欢迎朋友们吐槽、转发。因为篇幅长度和时间的原因,部分答案我没有亲自总结。 1.面向对象和面向过程的区别 ...
bash 学习指南 - 工具资源 - 掘金
Table of Contents Basic Operations 1....
利用 Scrapy 爬取所有知乎用户详细信息并存至 MongoDB - 后端 - 掘金
本节分享一下爬取知乎用户所有用户信息的 Scrapy 爬虫实战。 本节目标 本节要实现的内容有: 从一个大V用户开始,通过递归抓取粉丝列表和关注列表,实现知乎所有用户的详细信息的抓取。 将抓取到的结果存储到 MongoDB,并进行去重操作。 思路分析 ...
用 C 一步步开发 web 服务器(1) - 后端 - 掘金
对于php程序员,对于web服务器来说再熟悉不过了,apache,nginx。。但是内心一直想开发出一个属于自己的web服务器,所以借此机会,用c开发出了一款web服务器。作为1.0版本,他实现了以下功能 ...
只需十四步:从零开始掌握 Python 机器学习(附资源) - 阅读 - 掘金
Python 可以说是现在最流行的机器学习语言,而且你也能在网上找到大量的资源。你现在也在考虑从 Python 入门机器学习吗?本教程或许能帮你成功上手,从 0 到 1 掌握 Python 机器学习,至于后面再从 1 到 100 变成机器学习专家,就要看你自己...
Angular 4.x HttpModule 揭秘 - 掘金
有点小鸡冻,我们 HttpModule 系列的主角终于要出场了。此时突然想起了一句诗: 千呼万唤始出来,犹抱琵琶半遮面。 —— 白居易 <<琵琶行>> 为了写好这篇文章 (写得不好的话,大家请见谅),考虑了一番,最终还是打算先写相关...
Error-prone,Google 出品的 Java 和 Android Bug 分析利器 - Android - 掘金
是什么 静态的Java和Android bug分析利器 由Google出品 由error-prone接管compiler,在代码编译时进行检查,并抛出错误中断执行 在抛出错误的同时给出具体的原因和相应方案 error-...
该为你的Android Studio 打造一个炫酷的个性化主题了 - 掘金
一 、前言 Android Studio 为我们内置了两款主题,黑色灰暗风格和白色高亮风格。刚从Eclipse 转到 Android Studio 那会儿,觉得很新鲜效果非常好,感觉敲代码都有劲。但是用的时间久了,感觉有点审美疲劳了。前几天用马克飞象写文章的时...
史上最简单的 SpringCloud 教程 | 第四篇: 断路器(Hystrix) - 后端 - 掘金
转载请标明出处: http://blog.csdn.net/forezp/article/details/69934399 本文出自方志朋的博客 ...
如何实现一个Java Class解析器 - 掘金
最近在写一个私人项目,名字叫做ClassAnalyzer,ClassAnalyzer的目的是能让我们对Java Class文件的设计与结构能够有一个深入的理解。主体框架与基本功能已经完成,还有一些细节功能日后再增加。实际上JDK已经提供了命令行工具javap来...
如何实现一个Java Class字节解析器(Golang版) - 掘金
最近在写一个私人项目,名字叫做SmallVM,SmallVM的目的在于通过实现一个轻量级的Java虚拟机,加深对Java虚拟机的认知和理解。在Java虚拟机加载类的过程中,需要对Class文件进行解析,我曾经单独实现过一个Java版的Class字节解析器Cla...
MySQL 的七种 join - 后端 - 掘金
对于SQL的Join,在学习起来可能是比较乱的。我们知道,SQL的Join语法有很多inner的,有outer的,有left的,有时候,对于Select出来的结果集是什么样子有点不是很清楚。Coding Horror上有一篇文章(实在不清楚为什么Coding ...
使用 shadowsocks 加速 Mac 自带终端或 iTerm 2 - 工具资源 - 掘金
对于经常需要依赖国外资源的开发者,终端的下载速度让人抓狂,诸如常见的 wget、curl、git、brew 等命令行工具超慢,甚至无法获取资源,这就需要搭建一个科学上网利器,例如目前流行的shadowsocks,我们配置好 shadowsocks 服务器端后,...
- 初识 http 是典型的 C/S 架构,客户端向服务端发送请求(request),服务端做出应答(response)。 golang 的标准库 net/http 提供了 http 编程有关的接口,封装了内部TCP连接和报文解析的复杂琐碎的细节,使用者只需...
面试遇到了算法题?看这篇就够啦。 - 掘金
原文地址:github.com/kdn251/interviews 译文出自:掘金翻译计划 译者:王下邀月熊 校对者:PhxNirvana、根号三 这个 链接 用来查看本翻译与英文版是否有差别(如果你没有看到 README.md 发生变化,那就意味着这份翻译文...
Shell 助力开发效率提升 - 工具资源 - 掘金
本文主要来源于小组内部的一个小的分享, 这里整理成一篇文章po出来. 题目叫 “Shell 助力开发效率提升”, 更切题的应该是叫 “命令行” 提升开发效率, 这里并没有讲到Shell编程, 而是主要介绍Linux 或者 Mac下常用的一些基本工具...
从 I/O 模型到 Netty(一) - 掘金
如何使用咖啡读文件I/O是任何一个程序设计者都无法忽略的存在,很多高级编程语言都在尝试使用巧妙的设计屏蔽I/O的实际存在,减小它对程序的影响,但是要真正的理解并更好运用这些语言,还是要搞清楚I/O的一些基本理念。本文将从最基本的I/O概念开始,试图理清当前I/...
MySql 优化 - 后端 - 掘金
原文链接:http://blog.csdn.net/qq_22329521/article/details/54801950 SQL优化 通过show status命令了解各种sql的执行效率 查...
阿里电面试题汇总 - 后端 - 掘金
年前意外的经历了一次阿里的电话面试,话说还没想换工作,但这位业余HR(应该是技术负责人)都没介绍工作岗位和要求,直接就约定某晚的电面时间,抱着好奇的态度被“虐”了一把。 总体感觉这位面试官问的问题非常深,基本都是系统或者原理级别的。不知道是不是代表了阿...
Spring 中配置发送邮件服务:从简单邮件到使用 Velocity 或 Thymeleaf 模板的邮件 - 后端 - 掘金
前言:在当前大中型应用中邮件已经成为一种常用的通信方式。我们通常会配置Email来发送通知消息,比如:订单确认邮件、账户修改提醒邮件、密码重置确认邮件、交易扣款详情邮件等等。在使用了Spring的应用我们可以很容易地配置邮件发送服务,下面我将详细介绍其具体代码...
mysql 通信协议 - 后端 - 掘金
索引下前面写的19篇关于MySQL协议的文章 ...
理解 I/O 多路复用 - 后端 - 掘金
理解 I/O 多路复用 前段时间看了下 NIO ,发现里面有个 I/O 多路复用技术,但是听到这个名字一直觉得难以理解,什么是多路复用呢?好奇怪的名词,于是专门找了个时间仔细去了解了下。 客栈遇到的问题 从开始学习编程后,我就想开一个 Hello World...
自制 HTTP 服务器之 Socket 编程与 HTTP 协议(1) - 后端 - 掘金
简介最近因为要找工作,顺应互联网大潮,复习了一下后端的东西。为了把这些知识都串起来,写了一个简单地 HTTP 服务器。对于对 Web 感兴趣的同学应该是一个不错的练手项目。因此,作为专栏的第一个系列,我们要造的「轮子」是 HTTP 服务器。关于编程语言:为了突...
我们如何使用 HAProxy 实现单机 200 万 SSL 连接 - 后端 - 掘金
导读:架构师需要精确的了解服务的支撑能力,也希望通过调优来发挥单个节点最大的价值。本文分享了压测及调优 HAProxy 实现 200 万并发 SSL 连接的过程,由高可用架构翻译,转载请注明出处。 先观察上面截图,可以看到两个关键信息: ...
记一次频繁 FGC 的简单排查 - 后端 - 掘金
简书 占小狼转载请注明原创出处,谢谢!如果读完觉得有收获的话,欢迎点赞加关注 周末愉快,今天有时间记录一下上周遇到的一个问题,学习的脚步不能放慢,也不敢放慢。 ...
Java 内部类 - 后端 - 掘金
内部类包括 成员内部类、方法内部类、静态内部类、匿名内部类。 内部类的作用 由于内部类的实现和外部类没有关系,内部类可自由继承其他类,所以在...
Mysql 主从同步的原理 - 后端 - 掘金
1 ...
JVM(六)——GC 算法 - 掘金
标记-清除法JVM(六)——GC 算法 概述 GC 是 JVM 自带的功能,它能够自动回收对象,清理内存,这是 Java 语言的一大优势,但是GC绝不仅伴随着Java,相反,GC历史比Java更悠久。关于GC,我认为有四个问题需要解决: 为什么了解 GC...
JVM(五)——类的加载机制 - 掘金
JVM(五)——类的加载机制 概述 如篇首图所示,Class 文件被 JVM 加载至 JVM内存,在内存中验证、解析、初始化之后,形成可以被 JVM 直接使用的 Java类型。这就是类加载的简要过程。类的加载过程是在 Java程序运行期间完成,虽然会损耗一...
红黑树插入算法实现原理分析 - 后端 - 掘金
红黑树是在实际工程中被广泛应用的一种数据结构,比如 Linux 中的线程调度就是使用的红黑树来管理进程控制块,而 Nginx 中也是使用红黑树来管理的 timer,Java 中的 TreeMap 和 TreeSet 也是基于红黑树来实现的。红黑树相比普通二叉查...
JVM 性能调优监控工具 jps、jstack、jmap、jhat、jstat 等使用详解 - 后端 - 掘金
javap 和 javac ...
搞懂 nginx 的 rewrite 模块 - 后端 - 掘金
之前在配置nginx时,总是遇到rewrite指令的last和break标识的问题,看到的资料大都是last 基本上都用这个 Flag,break 中止 Rewirte,不在继续匹配。看完之后还是有点懵,后来看了下rewrite模块的文档,终于搞懂了,这个模块...
Golang 优化之路——临时对象池 - 后端 - 掘金
08 February 2017 带垃圾回收的语言,虽然对于刚刚上手的程序员是友好的,但是后期随着项目变得越来越巨大,维护的内存问题也会逐渐暴露出来。今天讲一种优化内存申请的方法——临时对象池。 写在前面 在高并发的情况下,如果每次请求都需要申请一块用于计算的...
Golang 优化之路——Cantor pair - 后端 - 掘金
某一种对象是通过两个ID唯一确定的,如何处理这种数据结构以便快速查找以及节约内存?今天讲一种优化算法——Cantor pairing function。 写在前面 某一种对象是通过两个ID唯一确定的,如何处理这种数据结构以便快速查找以及节约内存?先说一种笨方法...
Golang 优化之路——bitset - 后端 - 掘金
开发过程中会经常处理集合这种数据结构,简单点的处理方法都是使用内置的map实现。今天讲一种优化方式——bitset。 写在前面 开发过程中会经常处理集合这种数据结构,简单点的处理方法都是使用内置的map实现。但是如果要应对大量数据,使用map占用内存大的问题就...
Coroutine 从入门到劝退 - 后端 - 掘金
小说君三年前写了篇面试经验,前几天偶然打开,发现很多地方写的也是不忍直视。 比如,当时小说君的简历上写了一个计划中的、基于golang的「协程特性」、写RPC库的项目。golang老司机可能直接就能看出这个想法的问题——所以三年多过去了,小说君还没写下这个库的...
字符串查找算法总结(暴力匹配、KMP 算法、Boyer-Moore 算法和 Sunday 算法) - 掘金
可进入我的博客查看原文。 字符串匹配是字符串的一种基本操作:给定一个长度为 M 的文本和一个长度为 N 的模式串,在文本中找到一个和该模式相符的子字符串,并返回该字字符串在文本中的位置。 KMP 算法,全称是 Knuth-Morris-Pratt 算法,以三个...
(译) 用 Python 实现每秒百万级的请求 - 后端 - 掘金
原文地址:A million requests per second with Python 原文作者:Paweł Piotr Przeradowski ...
go 语言中的连续栈 - 后端 - 掘金
Go语言中的Continuous Stack(连续栈) 前言 ...
谈谈 ThreadLocal - 后端 - 掘金
Java并发编程实战 一书在介绍ThreadLocal类时(第3章),书中有这么两段话,在我初次阅读时不知道如何去理解。 ThreadLocal对象通常用于防止对可变的单实例变量(Singleton)或全局变量进行共享。 ...
深入理解并发 / 并行,阻塞 / 非阻塞,同步 / 异步 - 后端 - 掘金
- 阻塞,非阻塞 首先,阻塞这个词来自操作系统的线程/进程的状态模型中,如下图: ...
关于 spring aop (aspectj) 你该知晓的一切 - 后端 - 掘金
【版权申明】未经博主同意,谢绝转载!(请尊重原创,博主保留追究权) http://blog.csdn.net/javazejian/article/details/54629058 出自【zejian的博客】 ...
Go 之旅三: 复杂类型 - 后端 - 掘金
本文是学习 A Tour of Go (中文参考 Go 之旅中文 ) 整理的笔记,介绍Go 语言的指针,结构体,数组,切片,映射和闭包的基本概念和使用。 1. 指针 $GOPATH/src/go_note/gotour/adva...
记录一次 Mysql 死锁排查过程 - 掘金
背景 以前接触到的数据库死锁,都是批量更新时加锁顺序不一致而导致的死锁,但是上周却遇到了一个很难理解的死锁。借着这个机会又重新学习了一下mysql的死锁知识以及常见的死锁场景。在多方调研以及和同事们的讨论下终于发现了这个死锁问题的成因,收获颇多。虽然是后端程序...
知乎 Live 全文搜索之模型接口 - 后端 - 掘金
看这篇文章前推荐阅读相关的如下文章: 知乎Live全文搜索之让elasticsearch_dsl支持asyncio 知乎Live全文搜索之使用Elasticsearch全文搜索 ...
Python 数据结构 - 中文版 - 后端 - 掘金
介绍 problem-solving-with-algorithms-and-data-structure-using-python 中文版 目的 数据结构作为计算机从业人员的必备基础,Java, c 之类的语言有很多这方面的书籍,Py...
Spring Boot 学习 & 使用指南 - 后端 - 掘金
Spring Boot是Spring Project的顶级项目之一,她的其他小伙伴还有Spring Cloud、 Spring Framework、Spring Data等等,本文并不是Spring Boot的详...
10 分钟上手图数据库 Neo4j - 后端 - 掘金
随着互联网不断的发展,传统的关系型数据库如oracle,mysql已经难以支撑现下大数据量,高并发的场景了。于是,NoSQL横空出世,有像cassandra这样的column-based,像MongoDB这样document-based。今天在这里猎奇的是一个...
重新认识 java(七) —— final 关键字 - Android - 掘金
你总以为你会了,其实你只是一知半解。 final 关键字概览 ...
深入浅出: Java 回调机制 (异步) - 后端 - 掘金
Writer :BYSocket(泥沙砖瓦浆木匠) 什么是回调?今天傻傻地截了张图问了下,然后被陈大牛回答道“就一个回调…”。此时千万个草泥马飞奔而过(逃 哈哈,看着源码,享受着这种回调在代码上的作用...
HashMap 深度分析 - 后端 - 掘金
这次主要是分析下HashMap的工作原理,为什么我会拿这个东西出来分析,原因很简单,以前我面试的时候,偶尔问起HashMap,99%的程序员都知道HashMap,基本都会用Hashmap,这其中不仅仅包括刚毕业的大学生,也包括已经工作5年,甚至是10年的程序员...
15 个高级 Java 多线程面试题及回答 - 后端 - 掘金
在任何Java面试当中多线程和并发方面的问题都是必不可少的一部分。如果你想获得任何股票投资银行的前台资讯职位,那么你应该准备很多关于多线程的问题。在投资银行业务中多线程和并发是一个非常受欢迎的话题,特别是电子交易发展方面相关的。他们会问面试者很多令人混淆的Ja...
Java 内存分配与回收机制 - Android - 掘金
这篇文章主要讲Java内存的分配与回收机制,主要包括Java运行时的数据区域、对象的创建、垃圾收集算法与回收策略。参考的书籍是周志明老师的《深入理解Java虚拟机》,笔者只是基于书中的内容对其总结概括并图文化。这部分内容几乎都是理解性的,为了便于理解和记忆所以...
线程、进程与协程 - 掘金
众所周知, 计算机是由软件和硬件组成. 硬件中的CPU主要用于解释指令和处理数据, 软件中的操作系统负责资源的管理和分配以及任务的调度. 而程序则是运行在操作系统上具有特定功能的软件. 每当程序执行完成特定功能的时候, 为了保证程序的独立运行不受影响往往需要进...
探究高可用服务端架构的优秀资料索引 - 后端 - 掘金
探究高可用服务端架构的优秀资料索引从属于笔者的 服务端应用程序开发与系统架构 系列文章;最近随着公司业务的发展与终端用户的增加,保证系统的高可用性也日渐成为团队考虑的重要因素,笔者也把去年以来看的一些文章归集整理,抛砖引玉,如果有其他优秀的望不吝赐教。 探究...
分布式任务调度平台 XXL-JOB - 后端 - 掘金
一、简介 1.1 概述 XXL-JOB是一个轻量级分布式任务调度框架,其核心设计目标是开发迅速、学习简单、轻量级、易扩展。现已开放源代码并接入多家公司线上产品线,开箱即用。 1.2 特性 1、简单:支持通过Web页面对任务进行CRUD操作,操作简单,...
计算机程序的思维逻辑 (71) - 显式锁 - 掘金
在66节,我们介绍了利用synchronized实现锁,我们提到了synchronized的一些局限性,本节,我们探讨Java并发包中的显式锁,它可以解决synchronized的限制。 Java并发包中的显式锁接口和类位于包java.util.concurr...
分析 Java 延迟与周期任务的实现原理 - 后端 - 掘金
Java并发编程源码分析系列: 分析Java线程池的创建 分析Java线程池执行原理 ...
JVM 内存区域划分 - 后端 - 掘金
学习Java不可避免的要学习Java虚拟机,也就是JVM,Java虚拟机规范里面规定了程序运行期间会使用到的运行时数据区,这也是JVM的内存区域划分的模型,应该可以这么理解吧。 这其中有一些是随着虚拟机的启动和退出而创建和销毁的,这些区域是线程...
CAS 简易说明 - 后端 - 掘金
和基于锁的方案相比,非阻塞算法在设计和实现上都要复杂得多,但是其在灵活性和可伸缩性有巨大的优势。由于非阻塞锁算法可以使多个线程在竞争相同的资源时不会发生阻塞,因此它能在更细的层次上进行协调,并且极大地减少调度开销。并且,非阻塞算法中不存在死锁和其他活跃性问题。...
谈谈对 Web 安全的理解 - 前端 - 掘金
作为一个前端 er,掌握必要的网络安全知识是必要,下面我整理了几种常见的网络攻击方式及防御技巧,本文内容来自网络,仅供参考。 CSRF 攻击 CSRF(Cross-site request forgery), 中文名称:跨站请求伪造,也被称为:one clic...
Google 是如何做负载均衡的? - 后端 - 掘金
Google 使用的技术一般都自带光环,吸引程序员的注意,基础设施方面的东西就更是如此,年初 Google 发布了篇论文介绍内部的负载均衡器的实现,让我们有机会一睹可能是全球最好的负载均衡器。 通常情况下的负载均衡要在灵活性和性能之间做权衡,用户态软件层面有 ...
从头创建一个简单的 RPC 服务框架 - 后端 - 掘金
概念解释 RPC(Remote Procedure Call Protocol)——远程过程调用协议,它...
jvm 系列 (八):jvm 知识点总览 - 高级 Java 工程师面试必备 - 后端 - 掘金
在江湖中要练就绝世武功必须内外兼备,精妙的招式和深厚的内功,武功的基础是内功。对于武功低(就像江南七怪)的人,招式更重要,因为他们不能靠内功直接去伤人,只能靠招式,利刃上优势来取胜了,但是练到高手之后,内功就更主要了。一个内功低的人招式在奇妙也打不过一个内功高...
Java 泛型详解 - 后端 - 掘金
泛型是 Java 中一个非常重要的知识点,在 Java 集合类框架中泛型被广泛应用。本文我们将从零开始来看一下 Java 泛型的设计,将会涉及到通配符处理,以及让人苦恼的类型擦除。...
dubbo 源码分析 - 服务注册 - 后端 - 掘金
前言 对于分布式服务架构,解决服务的发现问题,引入了注册中心中间件,从而很好的解决了服务双方(消费方和提供方)的直接依赖问题。这种解耦的意义是非凡的,不仅在程序运行时保证了灵活性,在开发阶段也使得快速迭代成为了可能,甚至在运维层面也提供了非常好...
分布式任务调度平台Antares - 后端 - 掘金
分布式任务调度平台(Distributed Job Schedule Platform) Antares特性 ...
大话程序猿眼里的高并发之续篇 - 后端 - 掘金
分层,分割,分布式 大型网站要很好支撑高并发,这是需要长期的规划设计 在初期就需要把系统进行分层,在发展过程中把核心业务进行拆分成模块单元,根据需求进行分布式部署,可以进行独立团队维护开发。 分层 ...
JVM 为什么需要 GC - 后端 - 掘金
社区内有人发起了一个讨论,关于JVM是否一定需要GC?他们认为应用程序的回收目标是构建一个仅用来处理内存分配,而不执行任何真正的内存回收操作的 GC。即仅当可用的 Java 堆耗尽的时候,才进行顺序的 JVM 停顿操作。 首先需要理解为什么需要GC。随着应用程...
各大公司 Java 后端开发面试题总结 - 后端 - 掘金
ThreadLocal(线程变量副本) Synchronized实现内存共享,ThreadLocal为每个线程维护一个本地变量。 采用空间换时间,它...
jvm 知识点总览 - 高级 Java 工程师面试必备 - 后端 - 掘金
在江湖中要练就绝世武功必须内外兼备,精妙的招式和深厚的内功,武功的基础是内功。对于武功低(就像江南七怪)的人,招式更重要,因为他们不能靠内功直接去伤人,只能靠招式,利刃上优势来取胜了,但是练到高手之后,内功就更主要了。一个内功低的人招式在奇妙也打不过一个内功高...
spring 核心框架体系结构(jar 包依赖) - 后端 - 掘金
很多人都在用spring开发Java项目,但是配置maven依赖的时候并不能明确要配置哪些spring的jar,经常是胡乱添加一堆,编译或运行报错就继续配置jar依赖,导致spring依赖混乱,甚至下一次创建相同类型的工程时也不知道要配置哪些spring的依赖...
深入理解并发 / 并行,阻塞 / 非阻塞,同步 / 异步 - 后端 - 掘金
- 阻塞,非阻塞 首先,阻塞这个词来自操作系统的线程/进程的状态模型中,如下图: ...
深入分析 Java I/O 的工作机制 - 后端 - 掘金
Java 的 I/O 类库的基本架构 I/O 问题是任何编程语言都无法回避的问题,可以说 I/O 问题是整个人机交互的核心问题,因为 I/O 是机器获取和交换信息的主要渠道。在当今这个数据大爆炸时代,I/O 问题尤其突出,很容易成为一个性能瓶颈。正因如此,所以...
如何实现一个Java Class解析器 - 掘金
最近在写一个私人项目,名字叫做ClassAnalyzer,ClassAnalyzer的目的是能让我们对Java Class文件的设计与结构能够有一个深入的理解。主体框架与基本功能已经完成,还有一些细节功能日后再增加。实际上JDK已经提供了命令行工具javap来...
java 的动态代理机制详解 - 后端 - 掘金
在学习Spring的时候,我们知道Spring主要有两大思想,一个是IoC,另一个就是AOP,对于IoC,依赖注入就不用多说了,而对于Spring的核心AOP来说,我们不但要知道怎么通过AOP来满足的我们的功能,我们更需要学习的是其底层是怎么样的一个原理,而A...
干货满满的阿里巴巴 Java 开发手册 - 后端 - 掘金
阿里巴巴 Java 开发手册 阿里巴巴集团技术部首次向业界公开 Java 开发手册,总共五大章节,干货满满,大多数规约还有说明以及正、反代码实例,对于新手而言能从中学到很多知识。还有就是非常适合全公司推广,利于项目维护以及规范开发...
Java 并发:深入分析 synchronized 的实现原理 - 后端 - 掘金
原文出处: cmsblogs 记得刚刚开始学习Java的时候,一遇到多线程情况就是synchronized,相对于当时的我们来说synchronized是这么的神奇而又强大,那个时候我们赋予它一个名字“同步”,也成为了我们解决多线程情况的百试不爽的良药。但是,...
Redis 的性能幻想与残酷现实 - 掘金
2011 年,当初选择 Redis 作为主要的内存数据存储,主要吸引我的是它提供多样的基础数据结构可以很方便的实现业务需求。另一方面又比较担心它的性能是否足以支撑,毕竟当时 Redis 还属于比较新的开源产品。但 Redis 官网宣称其是提供多数据结构的高性能...
[干货] 位运算面试题大总结 - 掘金
专栏 | 九章算法网址 | www.jiuzhang.com 今天,九章算法为大家悉心准备了史上最强的位运算知识点大总结! 1. 位运算基本操作知识小结 1.1 左移操作 a << b 将A的二进制表示的每一位向左移B位,左边超出的位截掉,右边不...
面试遇到做过的题怎么办? - 掘金
专栏 | 九章算法网址 | www.jiuzhang.com 今天有一个学员跟九章君说: 老师好,我刚才电面,面了一道3 sum的变种然后20分钟就做出来了,结果被问是不是见过这题……如实回答见过,就又出了一道题,时间用完没有做完,但是思路说是对的……这种...
常见数据结构与算法整理总结(下) - 阅读 - 掘金
这篇文章是常见数据结构与算法整理总结的下篇,上一篇主要是对常见的数据结构进行集中总结,这篇主要是总结一些常见的算法相关内容,文章中如有错误,欢迎指出。 一、概述 二、查找算法 三、排序算法 四、其它算法 五、常见算法题 六、总...
Redis 集群的合纵与连横 - 掘金
之前一篇写了关于 Redis 的性能,这篇就写写我认为比性能更重要的扩展性方面的主题。 如果再给我一次回到好几年前的机会,对于使用 Redis 我一开始就要好好考虑将来的扩展问题。就像我们做数据库分库分表,一旦决策了分库分表,通常一次就会分到位,比如搞上 8 ...
二叉树面试题精选及详细讲解 - 阅读 - 掘金
本篇针对面试中常见的二叉树操作作个总结:(1)前序遍历,中序遍历,后序遍历;(2)层次遍历;(3)求树的节点数;(4)求树的叶子数;(5)求树的深度;(6)求二叉树第 k 层的节点个数;(7)判断两棵二叉树是否结构相同;(8)求二叉树的镜像;(9)求两个节点的...
线段树知识点总结 - 掘金
专栏 | 九章算法网址 | www.jiuzhang.com 线段树专题 线段树入门问题 给出数列[1 4 2 3],求给定区间的最大值例:query(0,1) = 4 query(2,3) = 3 query(0,3) = 4 解题思路分析 一道题...
http2 讲解 - 阅读 - 掘金
背景 HTTP的现状 那些年,克服延迟之道 ...
关于面试的各种知识合集 - 工具资源 - 掘金
Your personal guide to Software Engineering technical interviews. Maintainer - Kevin Naughton Jr. Table ...
线程与进程的区别及其通信方式 - 工具资源 - 掘金
线程与进程的区别及其通信方式 强烈推荐读者阅读文章最后的参考文章,本文只是概括和总结,更详细的内容参见引用列表。你也可以在我的 GitHub 里获得所有文章:https:...
Git 版本控制 (命令行) - 工具资源 - 掘金
前言 Git这个版本控制工具,早在两三年前我就开始使用了。不过后来换了新东家后,又开始变成了svn,最近又切成git了。 通过近期的使用,遇到了...
[API 自动化测试与持续集成
- 工具资源 - 掘金](https://juejin.im/entry/58d0bf550ce4630057dff112)
目的 如何使用SuperTest测试框架,进行API测试 如何将API测试与构建工具结合 如何将API测试、构建工具与持续集成结合 SuperTest 什么是SuperTest To provide ...
HTTP最强资料大全 - 掘金
更新内容:新增视频教程 - WEB系统测试、PHP的HTTP协议、okhttp框架解析与应用、走进Requests库、接口测试基础入门篇、JMeter之HTTP协议接口性能测试;更新时间:2017-04-03 为了方便有兴趣的朋友一起维护HTTP资源大全,我...
一个小时学会 MySQL 数据库 - 工具资源 - 掘金
随着移动互联网的结束与人工智能的到来大数据变成越来越重要,下一个成功者应该是拥有海量数据的,数据与数据库你应该知道。 一、数据库概要 数据库(Database)是存储与管理数据的软件系统,就像一个存入数据的物流仓库。 在商业领域,信息就意味着商机,取得信息的...
性能测试经验分享:合格的性能测试工程师要求 - 工具资源 - 掘金
闲扯: 性能测试门槛较高,选择前还是要谨慎,那么看下一名合格的性能测试工程师要求: 硬件大概信息,当硬件出现性能瓶颈后,提出可供替代硬件方案信息建议 ...
500 个数据结构及算法的面试题及答案 - 工具资源 - 掘金
Array Find pair with given sum in the array Find sub-array with 0 sum Sort binary array in linear time Find a duplicate element...
SSH 相关知识 - 工具资源 - 掘金
Secure Shell(缩写为SSH),由IETF的网络工作小组(Network Working Group)所制定;SSH为一项创建在应用层和传输层基础上的安全协议,为计算机上的Shell(壳层)提供安全的传输和使用环境。 SSH是目前较可...
持续集成是什么 - 掘金
互联网软件的开发,已经成熟、标准化,其中最重要的组成部分就是持续集成(Continuous integration,简称CI)。 持续集成是一种软件开发实践,即团队开发成员经常集成它们的工作代码,每个成员每天至少集成一次,也可能会发生多次集成。每次集成都通过自...
高效 MySQL 的 N 个习惯 - 后端 - 掘金
...
TCP/IP网络模型 - 掘金
TCP/IP协议:因特网互联协议,由网络层的IP协议和TCP协议组成,Internet最基本的协议、Internet国际互联网络的基础。 ##分层模型 为了减少网络设计的复杂性,大多数网络都采用了分层结构。在相同的网络中,处于第N层的机器之间使用第N层的协议...
关于 MySQL 你可能不知道的 SQL 使用技巧 - 后端 - 掘金
近来处理了比较多的数据库维护工作,对 SQL 的语法也算有了更深层次的认识,也学到了很多以前没有用过的 SQL 语法技巧,这里统一整理一下,希望对读者也有所启发。 本文将主要介绍一些我认为有用的 SQL 语法和技巧,并通过适当案例说明,但案例本身做了简化处理,...
当谈 SQL 优化时谈些什么? - 后端 - 掘金
最新腾讯云技术公开课直播,提问腾讯W3C代表,如何从小白成为技术专家?点击了解活动详情。 作者 |孙银行编辑 | 顾乡 背景 Mysql数据库作为数据持久化的存储系统,在实际业务中应用广泛。在应用也经常会因为SQL遇到各种各样的瓶颈。最常用的Mysql引擎是i...
服务端指南 数据存储篇 | MySQL(07) 范式与反模式 - 掘金
数据库范式是为解决关系数据库中数据冗余、更新异常、插入异常、删除异常问题而引入的。简单的理解,数据库范式可以避免数据冗余,减少数据库的空间,并且减轻维护数据完整性的麻烦。 原文地址:服务端指南 数据存储篇 | MySQL(07) 范式与反模式博客地址:http...
网友评论