博主负责的项目报了一个问题,用户操作回退失效。我们的设计里,操作回退是回到操作前的状态。经过查看日志发现,用户之前的操作做了两次,也就是说提交操作的接口被调用了两次,导致之用户上一次的状态和这一次的状态是一样的,所以操作回退是没有问题的,问题出在了操作的接口被调用了两次。对于防止...
前言前天三面阿里云被虐,面试官问出了“nginx你了解吗?”这样宽泛直白的句式,我一时抓不到重点,一时语噻。下班想了一下,平时潜移默化用到不少nginx的能力,但在面试的时候没有吹成对应的概念。面谈nginx核心能力nginx是老牌web服务器,以下口水话的nginx基础能力,大...
进程请求分布式锁时一般包含三个阶段:1.进程请求获取锁;2.获取到锁的进程持有锁并执行业务逻辑;3.获取到锁的进程释放锁;下文会按照这个三个阶段进行分析。单机Redis获取锁从一开始的请求进程通过SETNX命令获取锁;127.0.0.1:6379>SETNXredis_lo...
REST这个词是2000年RoyFielding在他的博士论文中提出的,Fielding参与了http协议的设计,也是Apachewebserver项目的参与者。他的这篇博士论文可以说对互联网的软件设计产生了深远的影响。但是从字面上理解REST(RepresentationalS...
前言ArrayList是Java集合框架中比较常用的数据结构了。继承自AbstractList,实现了List接口。底层基于数组实现容量大小动态变化。一看就是一个比较重要的模块,所以我们今天就来学习一下ArrayList相关知识。ArrayList的数据结构和作用ArrayLis...
在分布式系统中,为保证同一时间只有一个客户端可以对共享资源进行操作,需要对共享资源加锁来实现,常见有三种方式:基于数据库实现分布式锁基于Redis实现分布式锁基于Zookeeper实现分布式锁高并发下数据库锁性能太差,本文不做探究。仅针对Redis和Zookeeper实现的分布式...
一、内存泄漏(memoryleak)1、内存泄漏是指程序中已动态分配的堆内存由于某种原因未释放或无法释放,造成系统内存的浪费,导致程序运行速度减慢甚至系统奔溃等严重后果。2、一次内训泄漏似乎不会有大的影响,但内存泄漏后堆积的结果就是内存溢出。3、内存泄漏具有隐蔽性,积累性的特征,...
今天给大家梳理一篇关于网址、URL、IP地址、域名、DNS、域名解析的白话长文,并以简单的提问-解答形式让读者更加深刻理解网址、URL、IP地址、域名、DNS、域名解析,希望有助于读者的学习,面试和工作!一、一个疑问在指出这个问题之前,首先我们要清楚以下几点:互联网上的所有数据都...
-前言-REST作为一种现代网络应用非常流行的软件架构风格,自从RoyFielding博士在2000年他的博士论文中提出来到现在已经有了20年的历史。它的简单易用性,可扩展性,伸缩性受到广大Web开发者的喜爱。REST的API配合JSON格式的数据交换,使得前后端分离、数据交互变...
0问题背景随着微服务架构的流行,服务按照不同的维度进行拆分,一次请求往往需要涉及到多个服务。互联网应用构建在不同的软件模块集上,这些软件模块,有可能是由不同的团队开发、可能使用不同的编程语言来实现、有可能布在了几千台服务器,横跨多个不同的数据中心。因此,就需要一些可以帮助理解系统...
作者:VectorJin来源:juejin.cn/post/6844903473482317837Tomcat是什么开源的JavaWeb应用服务器,实现了JavaEE(JavaPlatformEnterpriseEdition)的部分技术规范,比如JavaServlet、Java...
本文主要讲述如何利用DevOps的模式,打造一个可配置、Codeless的运营平台,实现上层业务应用由运营人员自行开发的目的。