后端经验

JVM 源码分析之 Jstat 工具原理完全解读 http://click.aliyun.com/m/8315/

JVM 源码分析之 Jstat 工具原理完全解读
http://click.aliyun.com/m/8315/

微服务架构下的事务一致性保证

中生代技术群分享第四十四期。传统应用使用本地事务和分布式事务保证数据一致性,但是在微服务架构中数据都是服务私有的,需要通过服务提供的 api 访问,分布式事务不再适用微服务架构,传统分布式事务不是微服务中数据一致性的最佳选择。微服务架构中应满足数据最终一致性原则。

全世界最快的 JSON 解析器 – 比别的快 10x

jsoniter ( json-iterator )是一款快且灵活的 JSON 解析器,同时提供 Java 和 Go 两个版本

【SSH 内网穿透 + NGINX 反向代理】搭建微信本地开发环境

微信开发由于微信服务器要主动发送消息,所以 Web Server 必须暴露在公网环境中。

本地开发经常在内网,虽然有各种 ngrok 等第三方产品,不过要么付费使用官方服务、要么自己搭建服务麻烦、要么使用通过个人搭建的服务不安全,不如直接使用 ssh 实现内网穿透来得简单。

Java Web 前端到后台常用框架介绍

Java Web 前后端有一个庞大的生态系统,初入 Java EE 坑的你是否感到一阵迷茫。或许你有太多不懂的名词,新鲜的概念,那就来入个门儿吧。

Java 的业务逻辑验证框架 fluent-validator

这篇文章对 FluentValidator 做了一个全面的介绍,从显示的流式风格(Fluent Interface)API 调用,以及各种丰富多样的链操作方法,再到对 JSR303 – Bean Validation 规范的集成,最后介绍了高级点的注解方式验证、支持级联对象图和 Spring AOP 的集成。

Java 基础与提高干货系列——Java 反射机制

了解反射机制,以及 new 一个实例的另外一种方法。

从JDK源码角度看并发锁的优化

在CLH锁核心思想的影响下,JDK并发包以CLH锁作为基础而设计,其中主要是考虑到CLH锁更容易实现取消与超时功能。比起原来的CLH锁已经做了很大的改造,主要从两方面进行了改造:节点的结构与节点等待机制。 在结构上引入了头结点和尾节点,他们分别指向队列的头和尾,尝试获取锁、入队…

RESTful Web 服务:教程

在它提出十多年后的今天,REST 已经成为最重要的 Web 应用技术之一。随着所有技术朝着 API 方向发展,它的重要性有可能持续快速地增长。每门主要编程语言现在已经包含构建 RESTful Web 服务的框架。同样地,Web 开发者和架构师对 REST 和 RESTful 服务有一个清晰的理解是很重要的。这篇教程解释了 REST 架构,然后研究使用它构建通用地基于 API 的任务的细节。

Java 虚拟机类加载机制

看到这个题目,很多人会觉得我写我的 java 代码,至于类,JVM 爱怎么加载就怎么加载,博主有很长一段时间也是这么认为的。随着编程经验的日积月累,越来越感觉到了解虚拟机相关要领的重要性。闲话不多说,老规矩,先来一段代码吊吊胃口。

缓存更新的套路

我们先不讨论更新缓存和更新数据这两个事是一个事务的事,或是会有失败的可能,我们先假设更新数据库和更新缓存都可以成功的情况(我们先把成功的代码逻辑先写对)。

更新缓存的的 Design Pattern 有四种:Cache aside, Read through, Write through, Write behind caching,我们下面一一来看一下这四种 Pattern。

构建 Java 应用内存级缓存

这篇文章讲的是如何使用 Guava Cache 构建 Java 内存基本的缓存,Guava Cache 缓存类似于 ConcurrentMap,但不完全相同。

SSL/TLS 握手过程详解

我们知道,http 协议都是明文传输内容,在早期只展示静态内容时没有问题。伴随着互联网的快速发展,人们对于网络传输安全性的要求也越来越高,https 协议因此出现。如上图所示,在 https 加密中真正起作用的其实是 SSL/TLS 协议。SSL/TLS 协议作用在 http 协议之下,对于上层应用来说,原来的发送接收数据流程不变,这就很好地兼容了老的 http 协议,这也是软件开发中分层实现的体现。

SSL/TLS 握手是为了安全地协商出一份对称加密的秘钥,这个过程很有意思,下面我们一起来了解一下。

计算机程序的思维逻辑 (65) – 线程的基本概念

在之前的章节中,我们都是假设程序中只有一条执行流,程序从main方法的第一条语句逐条执行直到结束。从本节开始,我们讨论并发,在程序中创建线程来启动多条执行流,并发和线程是一个复杂的话题,本节,我们先来讨论Java中线程的一些基本概念。 线程表示一条单独的执行流,它有自己的程序执…

[[译] 如何建立高效推送通知](https://juejin.im/entry/58564…

事实上推送栏已经成了广告栏 Orz

RocketMQ源码解析:Message存储

???关注微信公众号:【芋艿的后端小屋】有福利: RocketMQ / MyCAT / Sharding-JDBC 所有源码分析文章列表 RocketMQ / MyCAT / Sharding-JDBC 中文注释源码 GitHub 地址 您对于源码的疑问每条留言都将得到认…

计算机程序的思维逻辑 (78) – 线程池

上节,我们初步探讨了 Java 并发包中的任务执行服务,实际中,任务执行服务的主要实现机制是线程池,本节,我们就来探讨线程池。 基本概念 线程池,顾名思义,就是一个线程的池子,里面有若干线程,它们的目的就是执行提交给线程池的任务,执行完一个任务后不会退出,而是继续等待或执行新任务。…

后端的轮子(三)— 缓存

今天这一篇没想到会这么长,后面有一段是写网络模型的,和缓存本身的关系不大,只是写到那里就想到了这个问题,多写了一些,那一段是我自己的理解,肯定有不对的地方,欢迎讨论拍砖。 前言 前面花了一篇文章说数据库这个轮子,其实说得还很浅很浅的,真正的数据库比这复杂不少,今天我们继续轮子系…

从红包场景谈事务一致性

今天继续谈一下业务层改造相关的一个场景:领取红包。红包,是这几年最火的一类营销手段,从当年微信红包走红后,无论是电商还是互金,都开始加入了“红包”。红包场景本身并不复杂,但由于涉及到了资金的转移,就会引入事务一致性的问题,而且从我了解到的情况看,很多同学在处理这块业务的时候,刚…

模拟服务器返回数据|掘金技术征文

本篇文章已授权微信公众号 guolin_blog (郭霖)独家发布原文链接:模拟服务器返回数据 背景 模拟服务器返回的数据,在以下场景具有实际意义: 和服务器开发协商好开发接口,但服务器API尚未部署,想接口定义好就进行开发;服务器已部署,返回的数据不能测试到各种情况,希望返回…

基于 Token 的 WEB 后台认证机制

基于 Token 的 WEB 后台认证机制

思维导图学 Java 虚拟机

这篇文章是作者读完深入了解 java 虚拟机的读书笔记,可以作为学习 java 虚拟机的路线。

干掉状态:从 session 到 token

Json web token 起源

netty 源码分析之服务端启动全解析

netty 源码分析之服务端启动全解析。

Spring5源码解析-@Autowired

你有没有思考过Spring中的@Autowired注解?通常用于方便依赖注入,而隐藏在这个过程之后的机制到底是怎样,将在本篇中进行讲述。 @Autowired所具有的功能@Autowired是一个用来执行依赖注入的注解。每当一个Spring管理的bean发现有这个注解时候,它会…

java io 流重定向标准输入和输出

java io 流重定向标准输入和输出

99%的人都理解错了HTTP中GET与POST的区别

99%的人都理解错了HTTP中GET与POST的区别

做图服务器源码已出

阅读过 写一个高端做图服务器 一定很好奇这么高端的做图服务器是什么样子的。

现在代码出来了,可以一睹芳容。

现有系统实施微服务架构改进经验分享

博主根据自身的项目经验,介绍如何对现有架构进行调整,总结这过程中的相关技术选型,以及如何实施技改,并分享最终取得的非常让人意外的成果。

高手教你十分钟写个 RPC 框架

高手教你十分钟写个 RPC 框架
http://click.aliyun.com/m/8311/

白话网站架构演进

读写分离,负载均衡,DNS 动态解析,CDN, memcached, Redis, 动态扩容,你是否曾经被这些名词搞得晕头转向,然后发誓要搞清楚这些概念,然后就没有然后了。或许这篇文章可以让你下次和程序员聊天时可以插一两句话。

一个绚丽的downloading动效分析与实现!

闲逛之余,看到一个不错的downloading动效,这个动效用CJJ的话说难度还好,但本人觉得还比较灵动、带感、俏皮、有新意,好了话不多说,咱们先来撸一张高清无码gif图: 撸完,咱可以将整个动效简单划分为以下流程:1.BeforeProgress(显示进度前);2.InPro…

jsoniter:全世界最快的 JSON 解析器(Java & Go)

jsoniter(json-iterator)是一款快且灵活的 JSON 解析器,同时提供 Java 和 Go 两个版本

java 善假于物(二):利用 velocity 生成模板代码

不知道大家有没有这样的感觉,在平时开发中,经常有很多 dao、service 类中存着很多重复的代码,Velocity 提供了模板生成工具,今天我教大家怎么和这些大量的重复代码说再见。

后台性能测试不可不知的二三事

性能测试是后台服务测试中的一个重要环节。本文用一个真实发生过的线上事故作为案例,从流程、测试方法、性能关注点等几个方面介绍了性能测试需要关注的要点。

Tomcat 类加载器以及应用间 class 隔离与共享

Tomcat 的用户一定都使用过其应用部署功能,无论是直接拷贝文件到 webapps 目录,还是修改 server.xml 以目录的形式部署,或者是增加虚拟主机,指定新的 appBase 等等。

我的 Java 后端书架

阿里大牛,java 书单

Java 微服务:这个画饼是个谎言,但你却不能忽视它

本文深入介绍了 Java 的微服务开发,包括其定义和一些可选方案,如 Spring Boot、Dropwizard 及其他开源项目。

计算机程序的思维逻辑 (84) – 反射

上节介绍完了并发,从本节开始,我们来探讨 Java 中的一些动态特性,包括反射、类加载器、注解和动态代理等。利用这些特性,可以以优雅的方式实现一些灵活和通用的功能,经常用于各种框架、库和系统程序中,比如: 在 63 节介绍的实用序列化库 Jackson,利用反射和注解实现了通用的序列化 /…

    原文作者:掘金
    原文地址: https://segmentfault.com/a/1190000012591929
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞