不要使用HTTP状态码作为业务代码响应 HTTP状态码 是指浏览器访问网址,成功或异常时浏览器或服务器告知用户的代码数字,它指的是网络或服务器的状态,有着不同的含义. 参加MDN.Java Api,常见的状态码: 200 OK 请求成功 301 重定向 400 错误请求 401 需要访问授权,通常是basic授权 403 禁止访问该地址 404 访问地址不存在 500 服务器异常 业务代码 业务代码是业务流程中可能产生的结果,比如:用户密码不正确.用户不存在.订单不存在.第三方api请求错误等.…
nginx入门与实战 网站服务 想必我们大多数人都是通过访问网站而开始接触互联网的吧.我们平时访问的网站服务 就是 Web 网络服务,一般是指允许用户通过浏览器访问到互联网中各种资源的服务. Web 网络服务是一种被动访问的服务程序,即只有接收到互联网中其他主机发出的 请求后才会响应,最终用于提供服务程序的 Web 服务器会通过 HTTP(超文本传输协议)或 HTTPS(安全超文本传输协议)把请求的内容传送给用户. 目前能够提供 Web 网络服务的程序有 IIS.Nginx 和 Apache 等…
作者:京东保险 管顺利 一.传统监控系统的盲区,如何打造业务状态监控. 在系统架构设计中非常重要的一环是要做数据监控和数据最终一致性,关于一致性的补偿,已经由算法部的大佬总结过就不在赘述.这里主要讲如何去补偿?补偿的方案哪些?这就引出来数据监控系统了.有小伙伴会问了,为什么业务状态监控系统可以做补偿?别急,往下看. 传统监控系统分为两种,系统监控和业务监控.系统监控有并发量监控.异常监控.调用链监控.端口监控.zabbix 监控.http监控等.业务监控是指用以监控业务数据是否正常,用户需要进行…
系列文章 git介绍-常用操作(一)✓ git实战-linux定时监控github更新状态(二)✓ 本文主要内容 如何查看github的本地仓库和远程仓库的同步情况 linux服务器定时监控github更新情况并自动发送邮件 配置文件要求 centos:7.6.1810mailx:12.5sendmail:8.14.7 监控你的github status 查看本地仓库同步情况 git status查看结果即可,其中结果有未缓存.未提交.已提交干净的工作区啦 git_status测试结果 查看远程…
想必各个公司都有部署zabbix之类的监控系统来监控服务器的资源使用情况.各服务的运行状态,是否这种监控就足够了呢?有没有遇到监控系统一切正常确发现项目无法正常对外提供服务的情况呢?本篇文章聊聊我们如何简单的使用Nagios监控业务的状态 文中的业务指用户访问的网站页面,对外提供的API接口,移动端的APP等产品 监控的思考 通常我们会在项目所在的机房部署一套监控系统来监控我们服务器和MySQL之类的公共服务,制定报警策略,在出现异常情况的时候邮件或短信提醒我们及时处理. 此类监控主要的关注点有…
一.概述 我们平常在开发业务模块时,经常会遇到比较复杂的状态转换.比如说用户可能有新注册.实名认证中.已实名认证.禁用等状态,支付可能有等待支付.支付中.已支付等状态.OA系统里的状态处理就更多了. 遇到这些处理,很多人可能不假思索的就用最直观的 if/else 或者 switch 来判断状态的方式.但其实除了这种简单粗暴的方式,我们还有其他更好的方式来处理复杂的状态转换. 二.状态判断 我们就以支付为例,一笔订单可能有:[等待支付].[支付中].[已支付]等状态.对于等待支付的订单,用户可能通…
名词:类型码 类型码的上层建筑 重构方法 1.使用子类代替类型码 2.使用状态/策略模式代替类型码 类中存在方法把某个字段当作条件,根据字段值的不同,进行不同的处理.(自定义概念)则这个字段叫做:类型码.(重构-改善既有代码的设计中的概念)这个方法叫做:类型码的上层建筑.(自定义概念)(这种判断方法不是绝对正确,但是一般可行,类型码是重构-改善既有代码的设计的概念,但是类型码的上层建筑是自定义概念) 例子1:Movie对象中存在影片类型字段,根据影片类型和租期计算金额的getCharge()方法…
从Linux源码看TIME_WAIT状态的持续时间 前言 笔者一直以为在Linux下TIME_WAIT状态的Socket持续状态是60s左右.线上实际却存在TIME_WAIT超过100s的Socket.由于这牵涉到最近出现的一个复杂Bug的分析.所以,笔者就去Linux源码里面,一探究竟. 首先介绍下Linux环境 TIME_WAIT这个参数通常和五元组重用扯上关系.在这里,笔者先给出机器的内核参数设置,以免和其它问题相混淆. cat /proc/sys/net/ipv4/tcp_tw_reus…
转自:https://idig8.com/2018/09/02/xiaochengxujavashizhanjava-sesiondezhuangtaihuihuayuwuzhuangtaihuihua38/ 我相信大家在参与web开发的时候,肯定会遇到session,其实在平常的开发过程中,用到的session都是有状态的session. 有状态的session 正常的web开发,每次来一个用户就会产生一个session,在客户端会受到sessionId的概念,每个用户有个独立的session…
前言 虽然这一部分的内容主要偏向于混合(Blending),但这里还需提及一下,关于渲染管线可以绑定的状态主要有如下四种: 光栅化状态(光栅化阶段) 采样器状态(像素着色阶段) 混合状态(输出合并阶段) 深度/模板状态(输出合并阶段) Direct3D是基于状态机的,我们可以通过修改这些状态来修改渲染管线的当前行为. 实际上这一章会讲述光栅化状态和混合状态这两个部分,在后续的章节会主要讲述深度/模板状态 DirectX11 With Windows SDK完整目录 Github项目源码 欢迎加入…