会员
众包
新闻
博问
闪存
赞助商
HarmonyOS
Chat2DB
所有博客
当前博客
我的博客
我的园子
账号设置
会员中心
简洁模式
...
退出登录
注册
登录
在路上
工作中不断积累,业余中不忘学习,吸收别人的精华,学习别人的经验,做到慢慢充实自己(记录自己学习中的笔记、工作项目设计代码、相关知识点规整)__本菜鸟的成长记录
博客园
首页
新随笔
联系
管理
上一页
1
···
15
16
17
18
19
20
21
22
23
···
69
下一页
2020年6月26日
高并发系统设计(八):分库分表后ID的全局唯一性策略(发号器)
摘要: 在单库单表的场景下,我们可以使用数据库的自增字段作为ID,因为这样最简单,对于开发人员来说也是透明的。但是当数据库分库分表后,使用自增字段就无法保证ID的全局唯一性了。 先说一下UUID,UUID(Universally Unique Identifier,通用唯一标识码)不依赖于任何第三方系统,所
阅读全文
posted @ 2020-06-26 16:16 温柔的风
阅读(769)
评论(0)
推荐(0)
2020年6月25日
高并发系统设计(七):【Mysql数据库的优化】主从读写分离、分库分表
摘要: 主从读写分离 其实,大部分系统的访问模型是读多写少,读写请求量的差距可能达到几个数量级,那么这就是我们所说的主从读写分离。 主从复制的原理这里不再阐述,本人博客里有关于Mysql主从的配置文章,当然里面也介绍了原理。 做了主从复制之后,就可以在写入时只写主库,在读数据时只读从库,这样即使写请求会锁表
阅读全文
posted @ 2020-06-25 20:57 温柔的风
阅读(730)
评论(0)
推荐(0)
高并发系统设计(六):如何减少频繁创建数据库连接的性能损耗?
摘要: 数据库的调用方式是先获取数据库的连接,然后依靠这条连接从数据库中查询数据,最后关闭连接释放数据库资源。这种调用方式下,每次执行SQL都需要重新建立连接,频繁地建立数据库连接耗费时间长导致了访问慢的问题。 那么为什么频繁创建连接会造成响应时间慢呢?来看一个实际的测试。 我用"tcpdump -i bo
阅读全文
posted @ 2020-06-25 19:59 温柔的风
阅读(1167)
评论(0)
推荐(0)
高并发系统设计(五):【系统设计目标③】如何让系统易于扩展?
摘要: 数据库、缓存、依赖的第三方、负载均衡、交换机带宽等等都是系统扩展时需要考虑的因素。我们要知道系统并发到了某一个量级之后,哪一个因素会成为我们的瓶颈点,从而针对性地进行扩展。 比方说,你系统的流量是每秒1000次请求,对数据库的请求量也是每秒1000次。如果流量增加10倍,虽然系统可以通过扩容正常服务
阅读全文
posted @ 2020-06-25 01:10 温柔的风
阅读(479)
评论(0)
推荐(0)
高并发系统设计(四):【系统设计目标②】系统怎样做到高可用?
摘要: 通常来讲,一个高并发大流量的系统,系统出现故障比系统性能低更损伤用户的使用体验。 可用性的度量 可用性是一个抽象的概念,你需要知道要如何来度量它,与之相关的概念是:MTBF和MTTR。 MTBF(Mean Time Between Failure)是平均故障间隔的意思,代表两次故障的间隔时间,也就是
阅读全文
posted @ 2020-06-25 00:29 温柔的风
阅读(568)
评论(0)
推荐(0)
2020年6月24日
高并发系统设计(三):【系统设计目标①】如何提升系统性能?
摘要: 高并发系统设计的三大目标:高性能、高可用、可扩展 高性能:反应了系统的使用体验,想象一下,同样承担每秒一万次请求的两个系统,一个响应时间是毫秒级,一个响应时间在秒级别,它们带给用户的体验肯定是不同的。 高可用:则表示系统可以正常服务用户的时间。举例,还是两个承担每秒一万次的系统,一个可以做到全年不停
阅读全文
posted @ 2020-06-24 23:47 温柔的风
阅读(1182)
评论(0)
推荐(0)
高并发系统设计(二):架构分层:我们为什么一定要这么做?
摘要: 在系统从0到1的阶段,为了让系统快速上线,我们通常是不考虑分层的。但是随着业务越来越复杂,大量的代码纠缠在一起,会出现逻辑不清晰、各模块相互依赖、代码扩展性差、改动一处就牵一发而动全身等问题。 我们常见的设计方式如MVC分层、ISO七层模型、Linux系统分层、Mysql分层、PHP分层等等...
阅读全文
posted @ 2020-06-24 22:55 温柔的风
阅读(929)
评论(0)
推荐(0)
高并发系统设计(一):它的通用设计方法是什么?
摘要: 高并发代表着大流量,高并发系统设计的魅力就在于我们能够凭借自己的聪明才智设计巧妙的方案,从而抵抗巨大流量的冲击,带给用户更好的使用体验。这些方案好似能操纵流量,让流量更加平稳得被系统中的服务和组件处理。 而我们在应对高并发大流量时归纳起来共有三种方法。 Scale-out(横向扩展):分而治之是一种
阅读全文
posted @ 2020-06-24 20:25 温柔的风
阅读(1028)
评论(0)
推荐(2)
2020年6月23日
php实现最大子序和算法
摘要: 给定一个整数数组 nums ,找到一个具有最大和的连续子数组(子数组最少包含一个元素),返回其最大和。 示例: 输入: [-2,1,-3,4,-1,2,1,-5,4], 输出: 6(最大子序列:4 -1 2 1 ) 第一种: $arr = [-2,1,-3,4,-1,2,1,-5,4]; funct
阅读全文
posted @ 2020-06-23 12:08 温柔的风
阅读(362)
评论(0)
推荐(0)
2020年6月22日
kafka和redis queue的区别
摘要: 存储介质不同 redis queue数据是存储在内存,虽然有AOF和RDB的持久化方式,但是还是以内存为主。kafka是存储在硬盘上 性能不同 因为存储介质不同,理论上redis queue的性能要优于kafka,但是在实际使用过程,这块体验并不是很明显,通常只有一些高并发场景下需要用redis q
阅读全文
posted @ 2020-06-22 08:59 温柔的风
阅读(955)
评论(0)
推荐(0)
上一页
1
···
15
16
17
18
19
20
21
22
23
···
69
下一页
公告