![](https://img-blog.csdnimg.cn/20201014180756780.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
分布式
架构师修行之路
一个奔走在通往互联网更高之路的工程师,热衷于互联网技术。拥有10年+互联网开发经验。热衷于高性能、高并发、分布式技术领域的研究。 主要工作语言为asp.net c#和Golang 。
展开
-
对于程序员,那些既陌生又熟悉的计算机硬件
程序员一步入中年,不知不觉便会被铺天盖地的“危机感”上身,曾经的那个少年已经不在,时间就是这样公平。就算你能发明c语言,随着时间的推移,你注定还是要成为慢慢变蔫的茄子,缓缓变黑的葡萄。 看着乐视退市的消息,周末我赶紧拉着儿子的小手,复习起了大学那曾经考试”满分“的计算机基础,你别说,只读了一小部分我就发现一个事实,记忆力果然指数级下降,儿子一遍就可以熟记,我却衰退的就像没上过大学。 原来程序员写的程序实际上就是一个由0和1组成的位序列,或者说是比特序列,8个比特(bit)被分为一组,称为字节。系统中所有的原创 2020-11-09 22:03:08 · 1114 阅读 · 0 评论 -
用NOSql给高并发系统加速
随着互联网大潮的到来,越来越多网站,应用系统需要海量数据的支撑,高并发、低延迟、高可用、高扩展等要求在传统的关系型数据库中已经得不到满足,或者说关系型数据库应对这些需求已经显得力不从心了。关系型数据库经过几十年的发展已经很成熟,强大的sql语句支持,完美的ACID属性的支持,使得关系型数据库广泛应用于各种各样的应用系统中,但是应用的场景广泛并非意味着完美 由于关系型数据库是按行进行存储的,在某些...原创 2020-02-29 20:14:12 · 1694 阅读 · 0 评论 -
你的系统是否需要分库分表,看这一篇就够了!!
是否需要分 说到数据库分库分表,不能一味的追求,我们要明白为什么要进行分库分表才是最终目的。现在网上一些人鼓吹分库分表如何应对了多大数据,却不知针对很多人的业务来说,分库分表策略也许并非是银弹,而是令人焦虑的焦油坑。 分库分表是业务发展到一定阶段,数据积累到一定量级而衍生出来的解决方案。当DB的数据量级到达一个阶段,写入和读取的速度会出现瓶颈,即使是有索引,索引也会变的很大,而且数据库的物理文件大...原创 2019-12-30 21:44:02 · 4261 阅读 · 0 评论 -
高并发下如何缩短响应时间
缩短一个网站响应时间真的很简单吗? 定义 网站响应时间是指系统对请求作出响应的时间。通俗来讲就是我们把网址输入进浏览器然后敲回车键开始一直到浏览器把网站的内容呈现给用户的这段时间。网站响应时间是越短越好,因为网站页面打开速度越快,就意味着我们的用户可以更快的访问站点或者我们的服务器。一般我们网站的响应时间保持在100~1000ms即可。1m=1000ms,打开速度越快对用户体验度越好。据说响应...原创 2019-12-25 21:48:50 · 4356 阅读 · 0 评论 -
怎么样才能提高网站的吞吐量?
吞吐量定义 百科 吞吐量是指对网络、设备、端口、虚电路或其他设施,单位时间内成功地传送数据的数量(以比特、字节、分组等测量)。 以上的定义比较宽泛,定义到网站或者接口的吞吐量是这样的:吞吐量是指系统在单位时间内处理请求的数量。这里有一个注意点就是单位时间内,对于网站的吞吐量这个单位时间一般定义为1秒,也就是说网站在一秒之内能处理多少http(https/tcp)请求。与吞吐量对应的衡量网站性能...原创 2019-12-04 22:23:58 · 4513 阅读 · 1 评论 -
分布式高并发下Actor模型如此优秀
写在开始 一般来说有两种策略用来在并发线程中进行通信:共享数据和消息传递。使用共享数据方式的并发编程面临的最大的一个问题就是数据条件竞争。处理各种锁的问题是让人十分头痛的一件事。 传统多数流行的语言并发是基于多线程之间的共享内存,使用同步方法防止写争夺,Actors使用消息模型,每个Actor在同一时间处理最多一个消息,可以发送消息给其他Actor,保证了单独写原则。从而巧妙避免了多线程写争夺。和...原创 2019-12-02 21:10:31 · 2163 阅读 · 0 评论 -
高并发下架构师为什么更喜欢进程内缓存
进程内缓存是指缓存和应用程序在相同地址空间。即同一个进程内。分布式缓存是指缓存和应用程序位于不同进程的缓存,通常部署在不同服务器上。 从前有个机构,机构的主人叫做 CPU,这个机构专门派仆人取一些东西然后做相应的处理。下面是这个机构日常的场景。 以上故事纯属预估数据,真实数据会根据不同的硬件配置和网络环境有误差。 通过以上不正经的小故事,我们可以了解到cpu取各个设备数据的大体差距。至...原创 2019-11-28 21:46:42 · 1383 阅读 · 0 评论 -
高并发下如何高性能的做限流!!
技术分析 如果你比较关注现在的技术形式,就会知道微服务现在火的一塌糊涂,当然,事物都有两面性,微服务也不是解决技术,架构等问题的万能钥匙。如果服务化带来的利大于弊,菜菜还是推荐将系统服务化。随着服务化的进程的不断演化,各种概念以及技术随之而来。任何一种方案都是为了解决问题而存在。比如:熔断设计,接口幂等性设计,重试机制设计,还有今天菜菜要说的限流设计,等等这些技术几乎都充斥在每个系统中。 就今天...原创 2019-11-27 21:06:21 · 2519 阅读 · 1 评论 -
高性能分布式缓存的设计原理
又是一个没有开工红包的公司!!! 问题分析 通过以上对话,各位是否能够猜到所有缓存穿透的原因呢?回答之前我们先来看一下缓存策略的具体代码 缓存服务器IP=hash(key)%服务器数量 这里还要多说一句,key的取值可以根据具体业务具体设计。比如,我想要做负载均衡,key可以为调用方的服务器IP;获取用户信息,key可以为用户ID;等等。 在服务器数量不变的情况下,以上设计没有问题。但是...原创 2019-11-26 22:28:18 · 6767 阅读 · 1 评论 -
程序员修仙之路--突破内存限制的高性能排序
菜菜的涨工资申请还在待审批中… 作为一个技术人员,技术的问题还是要解决。经过线上日志的分析,日志采用小时机制,一个小时一个日志文件,同一个小时的日志文件有多个,也就是说同一时间内的日志有可能分散在多个日志文件中,这也是Y总要合并的主要原因。每个日志文件大约有500M,大约有100个。此时,如果你阅读到此文章,该怎么做呢?不如先静心想2分钟!! 问题分析 要想实现Y总的需求其实还是有几个难点的: ...原创 2019-03-16 17:45:43 · 1466 阅读 · 0 评论