随笔分类 - 11 架构设计
摘要:mysql计划任务每天定时执行,每天的零点执行一个存储过程 1、开启数据库定时调度 show variables like '%sche%'; //查看是否开启 select * from mysql.user where user='root' set global event_scheduler
阅读全文
摘要:问题分析 正常的H5支付流程如下 按照上面的支付流程会出现 App -> 微信 -> 支付 -> 点击 完成 -> safari访问redirect_url设置的URL,这种流程其实用户体验是有点糟糕的,我们期望是 App -> 微信 -> 支付 -> 点击 完成 -> App访问redirect_
阅读全文
摘要:服务升级机制 在项目敏捷开发的过程中,不可避免需要快速、安全的更新应用,目前比较流行的几种部署方案有: 滚动发布、灰度发布/金丝雀发布和蓝绿部署。 滚动发布(目前某银行内部生产环境交易系统的发布方式): 一般是取出一个或者多个服务器停止服务,执行更新,并重新将其投入使用。周而复始,直到集群中所有的实
阅读全文
摘要:在弄清楚这个问题之前,我们先了解一下什么是分布式的CAP定理。 根据百度百科的定义,CAP定理又称CAP原则,指的是在一个分布式系统中,Consistency(一致性)、 Availability(可用性)、Partition tolerance(分区容错性),最多只能同时三个特性中的两个,三者不可
阅读全文
摘要:##一、写在前面在收集资料时,我查询和学习了许多介绍OAuth的文章,这些文章有好有坏,但大多是从个例出发。因此我想从官方文档出发,结合在stackoverflow上的一些讨论,一并整理一下。整理的内容分为OAuth1.0a和OAuth2两部分。 OAuth 1.0a:One Leg ->Two L
阅读全文
摘要:随着互联网的发展,web应用的复杂度也一直在提升,慢慢的单一的web应用已经不能满足复杂的业务需求。例如百度的搜索、新闻、百科、贴吧,其实本质上都是不同的网站。当用户使用这些平台的时候,我们当然不希望用户在每一个平台都有一个单独的账号,不然的话用户和开发者可能都会有想哭的冲动。所以我们就需要一种用户
阅读全文
摘要:身份认证技术,也就是所谓的登录功能,是现代WEB系统最常见的功能之一。本系列文章就试图为大家详细的介绍身份认证技术。 Basic认证模式 Basic认证模式是较早被广泛应用的一种HTTP标准提供的认证模式。最常见的形式之一就是在url中直接写上用户名密码向服务器提供身份: http://user:p
阅读全文
摘要:本文准备用最简单的语言告诉大家什么是OAuth2 ,OAuth2是干什么的。 我们有一个资源服务器,资源服务器中有一系列的用户数据。 现在有一个应用想想要获取我们的用户数据。那么最简单的方法就是我们开发一个API。可是某天来了个恶意应用,或者是我们不想给它数据的应用,我们就会造成数据的泄漏。所以我们
阅读全文
摘要:《Spring入门经典》这本书无论对于初学者或者有经验的工程师还是很值一看的,最近花了点时间回顾了Spring的内容,在此顺带记录一下,本篇主要与spring IOC相关 ,这篇博文适合初学者也适合spring有过开发经验的工程师,前者可用于全面了解Spring IOC的知识点,后者且过目进而查漏补
阅读全文
摘要:版权声明:本文为CSDN博主「zejian_」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。原文链接:https://blog.csdn.net/javazejian/article/details/56267036 关联文章: 关于Spring IOC (D
阅读全文
摘要:Spring Boot应用支持的最大并发量是多少? Spring Boot 能支持的最大并发量主要看其对Tomcat的设置,可以在配置文件中对其进行更改。当在配置文件中敲出max后提示值就是它的默认值。 我们可以看到默认设置中,Tomcat的最大线程数是200,最大连接数是10000。 并发量指的是
阅读全文
摘要:转自:https://www.cnblogs.com/cjsblog/p/9712457.html 1. 引言 读写分离要做的事情就是对于一条SQL该选择哪个数据库去执行,至于谁来做选择数据库这件事儿,无非两个,要么中间件帮我们做,要么程序自己做。因此,一般来讲,读写分离有两种实现方式。第一种是依靠
阅读全文
摘要:推荐第四种:https://github.com/shawntime/shawn-rwdb 通过MyBatis配置文件创建读写分离两个DataSource,每个SqlSessionFactoryBean对象的mapperLocations属性制定两个读写数据源的配置文件。将所有读的操作配置在读文件中
阅读全文
摘要:一般对于业务记录类随时间会不断增加的数据,当数据量增加到一定量(一般认为整型值为主的表达到千万级,字符串为主的表达到五百万)的时候,性能将遇到瓶颈,同时调整表结构也会变得非常困难。为了避免生产遇到这样的问题,在做系统设计时需要预估可能产生的数据量:预估记录主体个数*预估记录主体产生的记录数(e.g.
阅读全文
摘要:为什么要分库分表和读写分离? 类似淘宝网这样的网站,海量数据的存储和访问成为了系统设计的瓶颈问题,日益增长的业务数据,无疑对数据库造成了相当大的负载,同时对于系统的稳定性和扩展性提出很高的要求。随着时间和业务的发展,数据库中的表会越来越多,表中的数据量也会越来越大,相应地,数据操作的开销也会越来越大
阅读全文
摘要:一、读写分离 什么是数据库读写分离? 答:一主多从,读写分离,主动同步,是一种常见的数据库架构,一般来说: 主库,提供数据库写服务 从库,提供数据库读服务 主从之间,通过某种机制同步数据,例如mysql的binlog 一个组从同步集群通常称为一个“分组”。 分组架构究竟解决什么问题? 答:大部分互联
阅读全文
摘要:原文转自:https://blog.csdn.net/lovesoo/article/details/78579547 Apache JMeter是一款纯java编写负载功能测试和性能测试开源工具软件。相比Loadrunner而言,JMeter小巧轻便且免费,逐渐成为了主流的性能测试工具,是每个测试
阅读全文
摘要:原文:https://www.cnblogs.com/hdwang/p/6081994.html 1.下载jenkins 地址:https://jenkins.io/index.html 本人下载了2.19.3版本的war包:jenkins.war 2.安装jenkins 拷贝jenkins.war
阅读全文
摘要:一、什么是持续集成? (1)Continuous integration(CI) 持续集成是一种软件开发实践,即团队开发成员经常集成他们的工作,通常每个成员至少集成一次,也就意味着每天可能会发生多次集成。每次集成都通过自动化的构建(包括编译,发布,自动化测试)来验证,从而尽快地发现集成错误。许多团队
阅读全文
摘要:什么是Kubernetes? Kubernetes(k8s)是自动化容器操作的开源平台,这些操作包括部署,调度和节点集群间扩展。如果你曾经用过Docker容器技术部署容器,那么可以将Docker看成Kubernetes内部使用的低级别组件。Kubernetes不仅仅支持Docker,还支持Rocke
阅读全文