随笔分类 -  系统架构

摘要:补充:可用 Google Guava和Redis Bitmaps实现 在进入正文之前,之前看到的有句话我觉得说得很好: Data structures are nothing different. They are like the bookshelves of your application w 阅读全文
posted @ 2019-05-24 20:50 是谁扭曲了时空 阅读(287) 评论(0) 推荐(0)
摘要:对于互联网应用和企业大型应用而言,多数都尽可能地要求做到7*24小时不间断运行,而要做到完全的不间断运行可以说“难于上青天”。 为此,对应用的可用性程度一般衡量标准有三个9到五个9。 对于一个功能和数据量不断增加的应用,要保持比较高的可用性并非易事。为了实现高可用,付钱拉从避免单点故障、保证应用自身 阅读全文
posted @ 2019-04-23 13:29 是谁扭曲了时空 阅读(783) 评论(0) 推荐(0)
摘要:场景一: 1、访问广告合同管理系统ADM: 2、访问AMS 场景二 1、登录Portal 2、访问Mail Server查看邮件 阅读全文
posted @ 2019-04-05 15:10 是谁扭曲了时空 阅读(781) 评论(0) 推荐(0)
摘要:前阵子从支付宝转账1万块钱到余额宝,这是日常生活的一件普通小事,但作为互联网研发人员的职业病,我就思考支付宝扣除1万之后,如果系统挂掉怎么办,这时余额宝账户并没有增加1万,数据就会出现不一致状况了。 上述场景在各个类型的系统中都能找到相似影子,比如在电商系统中,当有用户下单后,除了在订单表插入一条记 阅读全文
posted @ 2019-03-25 00:59 是谁扭曲了时空 阅读(258) 评论(0) 推荐(0)
摘要:分区 分区就是把一个数据表的文件和索引分散存储在不同的物理文件中。 mysql支持的分区类型包括Range、List、Hash、Key,其中Range比较常用: RANGE分区:基于属于一个给定连续区间的列值,把多行分配给分区。 LIST分区:类似于按RANGE分区,区别在于LIST分区是基于列值匹 阅读全文
posted @ 2019-03-20 15:50 是谁扭曲了时空 阅读(590) 评论(0) 推荐(0)
摘要:做电商网站,经常会有各种秒杀和热门商品,所以高并发的处理一直是电商最重要的事情。这里记录下当初自己是如何处理的 写在前面: 1、本文设计到的并发处理均是针对纵向,不针对横向扩展,即只设计从PHP层面到数据库层面的处理,不涉及多台服务器,集群、大带宽等的横向设计。 2、本文中涉及到的高并发并不是淘宝京 阅读全文
posted @ 2019-01-04 15:59 是谁扭曲了时空 阅读(571) 评论(0) 推荐(0)
摘要:负载均衡,就是将请求分发到不同服务器上去响应,让每个服务器的负载达到均衡的状态。现在负载均衡是每个在线应用不可缺少的环节,所以我们需要了解一下负载均衡的模型和类型,当然在实际解决问题时模型会变的很复杂。本文只讨论软件方案,并不涉及硬件。文末会有一点点小干货,是我在新浪课堂上听的一点知识,关于新浪负载 阅读全文
posted @ 2018-12-06 01:57 是谁扭曲了时空 阅读(1090) 评论(0) 推荐(0)
摘要:一、问题引入 BitMap从字面的意思,很多人认为是位图,其实准确的来说,翻译成基于位的映射,怎么理解呢?举一个例子,有一个无序有界int数组{1,2,5,7},初步估计占用内存44=16字节,这倒是没什么奇怪的,但是假如有10亿个这样的数呢,10亿4/(102410241024)=3.72G左右。 阅读全文
posted @ 2018-11-28 09:45 是谁扭曲了时空 阅读(541) 评论(0) 推荐(0)
摘要:缓存穿透、缓存并发、热点缓存 一、前言 在之前的一篇缓存穿透、缓存并发、缓存失效之思路变迁文章中介绍了关于缓存穿透、并发的一些常用思路,但是个人感觉文章中没有明确一些思路的使用场景,本文继续将继续深化与大家共同探讨,同时也非常感谢这段时间给我提宝贵建议的朋友们。 说明:本文中提到的缓存可以理解为Re 阅读全文
posted @ 2018-11-28 00:01 是谁扭曲了时空 阅读(654) 评论(0) 推荐(0)
摘要:1:缓存技术和框架的重要性 互联网的一些高并发,高性能的项目和系统中,缓存技术是起着功不可没的作用。缓存不仅仅是key-value的简单存取,它在具体的业务场景中,还是很复杂的,需要很强的架构设计能力。我曾经就遇到过因为缓存架构设计不到位,导致了系统崩溃的案例。 2:缓存的技术方案分类 3:高并发以 阅读全文
posted @ 2018-11-28 00:00 是谁扭曲了时空 阅读(825) 评论(0) 推荐(0)
摘要:1、log4j2默认加载文件为log4j2.xml 2、要使用yml加载需添加依赖 3、log4j2.xml 4、log4j2.yml配置 log4j2官网配置说明 性能分析 阅读全文
posted @ 2018-11-22 00:05 是谁扭曲了时空 阅读(1963) 评论(0) 推荐(0)
摘要:FastDFS FastDFS的特性 FastDFS架构图 系统架构-上传文件流程图 系统架构-下载文件流程图 Fast同步机制 FastDFS用户请求过程 FastDFS核心组件 FastDFS运行机制 FastDFS配置修改 FastDFS常用命令 FastDFS实现nginx代理 转自:htt 阅读全文
posted @ 2018-10-30 17:37 是谁扭曲了时空 阅读(3766) 评论(0) 推荐(3)
摘要:什么是事务 事务是指由一系列数据库操作组成的一个完整的逻辑过程,这个过程中的所有操作要么都成功,要么都不成功。比如:常见的例子就是银行转账的例子,一次转账操作会包含多个数据库操作,而这些数据库操作需要放到一个事务当中,保证其要么都成功,要么都不成功。 什么是ACID ACID是事务的四个特性,指的是 阅读全文
posted @ 2018-10-30 10:54 是谁扭曲了时空 阅读(628) 评论(0) 推荐(0)
摘要:1)基于Redis+MySQL+MongoDB存储架构应用 2)MapReduce 阅读全文
posted @ 2018-10-29 17:59 是谁扭曲了时空 阅读(141) 评论(0) 推荐(0)
摘要:系统开发中,数据库是非常重要的一个点。除了程序的本身的优化,如:SQL语句优化、代码优化,数据库的处理本身优化也是非常重要的。主从、热备、分表分库等都是系统发展迟早会遇到的技术问题问题。Mycat是一个广受好评的数据库中间件,已经在很多产品上进行使用了。希望通过这篇文章的介绍,能学会Mycat的使用 阅读全文
posted @ 2018-09-11 10:10 是谁扭曲了时空 阅读(238) 评论(0) 推荐(0)
摘要:1.非分片字段查询 Mycat中的路由结果是通过分片字段和分片方法来确定的。例如下图中的一个Mycat分库方案: · 根据 tt_waybill 表的 id 字段来进行分片 · 分片方法为 id 值取 3 的模,根据模值确定在DB1,DB2,DB3中的某个分片 如果查询条件中有 id 字段的情况还好 阅读全文
posted @ 2018-09-11 10:04 是谁扭曲了时空 阅读(203) 评论(0) 推荐(0)
摘要:后台: 1、第三方调用接口模块(feign) 2、异步处理模块 前端(后台管理页面): 模块 --list --save 阅读全文
posted @ 2018-08-31 15:53 是谁扭曲了时空 阅读(204) 评论(0) 推荐(0)
摘要:import com.fasterxml.jackson.annotation.JsonInclude; import com.fasterxml.jackson.annotation.JsonInclude.Include; import io.swagger.annotations.ApiModelProperty; public class FackResult { @ApiMode... 阅读全文
posted @ 2018-08-30 16:32 是谁扭曲了时空 阅读(458) 评论(0) 推荐(0)