程序设计
JackMa_
每个优秀的人,都有一段沉默的时光,那段时光,是付出了很多努力,却得不到结果的日子,我们把它叫做扎根。
展开
-
短连接生成系统如何设计?
前言今天,咱们来谈谈如何设计一个高性能短链系统。短链系统设计看起来很简单,但每个点都能展开很多知识点,也是在面试中非常适合考察侯选人的一道设计题。本文将会结合我们生产上稳定运行两年之久的高性能短链系统给大家简单介绍下设计这套系统所涉及的一些思路,希望对大家能有一些帮助。分为以下几个方面: 短链有啥好处,用长链不香吗 短链跳转的基本原理 短...转载 2020-04-01 23:17:27 · 1196 阅读 · 1 评论 -
浅谈CSRF攻击方式
一.CSRF是什么? CSRF(Cross-site request forgery),中文名称:跨站请求伪造,也被称为:one click attack/session riding,缩写为:CSRF/XSRF。二.CSRF可以做什么? 你这可以这么理解CSRF攻击:攻击者盗用了你的身份,以你的名义发送恶意请求。CSRF能够做的事情包括:以你名义发送邮件,发消息,盗取你的账号,甚...转载 2020-03-28 14:40:00 · 298 阅读 · 0 评论 -
教你如何迅速秒杀掉:99%的海量数据处理面试题
前言一般而言,标题含有“秒杀”,“99%”,“史上最全/最强”等词汇的往往都脱不了哗众取宠之嫌,但进一步来讲,如果读者读罢此文,却无任何收获,那么,我也甘愿背负这样的罪名 :-),同时,此文可以看做是对这篇文章:十道海量数据处理面试题与十个方法大总结的一般抽象性总结。毕竟受文章和理论之限,本文将摒弃绝大部分的细节,只谈方法/模式论,且注重用最通俗最直白的语言阐述相关问题。最后,...转载 2020-03-03 17:29:12 · 239 阅读 · 0 评论 -
十道海量数据处理面试题与十个方法大总结
第一部分、十道海量数据处理面试题1、海量日志数据,提取出某日访问百度次数最多的那个IP。首先是这一天,并且是访问百度的日志中的IP取出来,逐个写入到一个大文件中。注意到IP是32位的,最多有个2^32个IP。同样可以采用映射的方法,比如模1000,把整个大文件映射为1000个小文件,再找出每个小文中出现频率最大的IP(可以采用hash_map进行频率统计,然后再找出频率最大的几...转载 2020-03-03 17:27:44 · 290 阅读 · 0 评论 -
面向对象的七种设计原则
学习面向对象的设计模式,是深入面向对象思想的钥匙,通过大师级的微妙案例,我们可以开阔自己的认知。在学习面向对象设计七大原则之前,我们要对基本的封装、继承、多态思想有足够的了解,对抽象类和接口也要有足够的编码能力,因为设计模式是以上知识点的综合应用。另外,在接触具体的设计模式之前,面向对象的七大设计原则会让你知道,设计模式出现的必然性和意义所在。1、 每一种设计思想的精准含义,具体如下:先从整体认识...转载 2018-03-20 11:00:31 · 287 阅读 · 0 评论 -
面向对象设计六大原则
这是设计模式系列开篇的第一篇文章。也是我学习设计模式过程中的总结。这篇文章主要讲的是面向对象设计中,我们应该遵循的六大原则。只有掌握了这些原则,我们才能更好的理解设计模式。我们接下来要介绍以下6个内容。单一职责原则——SRP开闭原则——OCP里式替换原则——LSP依赖倒置原则——DIP接口隔离原则——ISP迪米特原则——LOD单一职责原则单一职责原则的定义是就一个类而言,应该仅有一个引起他变化的原...转载 2018-03-20 11:37:25 · 290 阅读 · 0 评论 -
谈谈面向对象设计(OOD)原则
拥有一把锤子未必能成为建筑师最近在项目开发过程中碰到了一些问题,发现在每波迭代开发过程中,经常需要去修改之前的代码,虽然出现这样的情形很正常,新的需求必然会带来新的功能新的设计,导致之前的代码受到影响。记得看过一个笑话:“杀一个程序员不需要用枪,改三次需求就可以了”其实需求设计是一个方面,另外我们作为设计开发人员有时候也需要去反省,反省一下代码的设计是否合理,为什么新功能的在原有代码上扩展会那么难...转载 2018-03-20 14:26:50 · 625 阅读 · 0 评论 -
深入浅出一致性Hash原理
一、前言在解决分布式系统中负载均衡的问题时候可以使用Hash算法让固定的一部分请求落到同一台服务器上,这样每台服务器固定处理一部分请求(并维护这些请求的信息),起到负载均衡的作用。但是普通的余数hash(hash(比如用户id)%服务器机器数)算法伸缩性很差,当新增或者下线服务器机器时候,用户id与服务器的映射关系会大量失效。一致性hash则利用hash环对其进行了改进。二、一致性Ha...转载 2019-03-20 18:34:32 · 212 阅读 · 0 评论