摘要:集群:对用户是透明的,是一种计算机结构,将相同的应用部署到多个服务器中 负载均衡: 负载:承载的最大值,超过上限就会效率低 均衡:将请求均匀的分散到多个服务器,尽量平均一些; 负载均衡以集群为前提,有两种实现方式: 1.硬件:增加服务器 2.软件:算法实现 dubbo框架是自带的负载均衡,有四种策略
阅读全文
摘要:1.尽量避免分布式事务 2.最终一致性解决方案-eBay模式(BASE) 订单:insert into order 新增订单记录 用户积分表:update user set .... 增加积分 如果拆分那么有两个系统 order account 伪代码: MQ消息中间件来解决 boolean res
阅读全文
摘要:1.svn和Git的区别 svn属于集中式,Git属于分布式 Git一个仓库分为3个区: 工作区:用户本地电脑目录及文件。 暂存区:Git临时存储的东西,添加到暂存区的文件是可以撤回来的。Git和其他版本控制系统如SVN的一个不同之处就是有暂存区的概念。 本地库:历史版本。工作区目录中的.git就是
阅读全文
摘要:JTID:可研究一下 关系型数据库和Nosql<不适合存储到关系型数据库中的数据的存储> 非关系型数据库 key-value redis memcache 面向文档 mongodb:面向列 hbase 数据切分 垂直切分: 水平切分:每个库中的大表切分成多个小表 例如一个db拆分成3个db 用户库
阅读全文
摘要:1.切分简介 分库分表是对数据的拆分,有水平拆分和垂直拆分两种。 水平切分是根据表中数据的逻辑关系,将同一个表中的数据按照某种条件拆分到多台数据库服务器上面,为横向切分; 垂直切分是一种按照不同的表切分到不同的数据库上,垂直切分一般是按照业务维度进行数据库表的切分;把相同类型的表放在一个数据库,另一
阅读全文
摘要:1.为什么要分库分表? 数据库分片:<redis> 用户流量和数据量比较大,两个因素迫使需要优化, 单表的数据量大,不论单表如何优化,解决大数据存储的访问性能; 分库分表解决的是两个问题: 1>超大容量问题<用户表、订单表等 io能力和单表处理能力有瓶颈> 2>性能问题<io能力、单库> 2.如何实
阅读全文
摘要:一、session的底层机制: 注意:关闭浏览器,session不会立即消失 二、服务器集群产生的会话问题: 服务器集群是多台机器,客户端每次请求产生一个seesionid,会导致不同的服务器对同一浏览器产生的sessionid不一致,所以会产生会话不一致问题。 三、分布式session一致性问题的
阅读全文
摘要:linux环境搭建私服: 1.准备工作: 1.1虚拟机:内存3G,硬盘20G 1.2JDK1.8 安装JDK1.8: 查看可安装JDK版本:yum -y list java* 选择需要的JDK版本进行安装:yum install -y java-1.8.0-openjdk-devel.x86_64
阅读全文