数据库 频道
  • 单体架构转向微服务架构— (基础篇)

    目前从事于教育行业,尽管如今用户量并不是特别多,但我们的产品有点庞大。基于目前的单体架构,有众多的弊端,由于前期用户量并不多,产品迭代不是很频繁,相应的问题并没有凸显。但是随着团队越来越大,相应的沟通成本、管理成本、人员协调成本显著增加。引起缺陷的原因组合多,导致分析、定位、修复缺陷的成本响应增高。在自动化测试机制不完善的情况下,易导致“修复越多,缺陷越多”的恶性循环。

    田晓旭 · 2018-06-30 09:33
  • JAVA学习之23种设计模式的完整实例代码

    在学习此事例代码的时候,建议按照下面的模式分类的顺序来一一学习,因为有的模式是参考上一个模式来进行演化讲解的,虽然可以单独去研究,但顺序学习更加容易一些。

    田晓旭 · 2018-06-30 09:28
  • 深度:微服务化的数据库设计与读写分离

    数据库永远是应用最关键的一环,同时越到高并发阶段,数据库往往成为瓶颈,如果数据库表和索引不在一开始就进行良好的设计,则后期数据库横向扩展,分库分表都会遇到困难。对于互联网公司来讲,一般都会使用Mysql数据库。

    田晓旭 · 2018-06-29 19:34
  • 支招DDoS攻击:记一次真实的网站被黑经历

    距离上次被DDOS攻击已经有10天左右的时间,距离上上次已经记不起具体那一天了,每一次都这么不了了之。然而近期一次相对持久的攻击,我觉得有必要静下心来,分享一下被黑的那段经历。

    田晓旭 · 2018-06-29 19:13
  • 分布式之数据库和缓存双写一致性方案(二)

    下面说明一下先更缓存,再更新数据库这套方案更新数据库失败了怎么办?这个问题其实很好解决,提供一个补偿措施即可。这个补偿措施,大家灵活变通,博主只是举例,如下图所示:

    田晓旭 · 2018-06-29 15:20
  • 深度解析: 主流分布式架构的前世今生

    上篇文章,我们聊到了分布式架构的演进过程,那本文我们就来聊一聊目前主流的分布式架构和分布式架构中常见理论以及如何才能设计出高可用的分布式架构好了。分布式架构中,SOA和微服务架构是最常见两种分布式架构,而且目前服务网格的概念也越来越火了。那我们本文就先从这些常见架构开始。

    田晓旭 · 2018-06-29 15:00
  • Java学习之7种排序算法的完整实例代码

    排序是计算机内经常进行的一种操作,其目的是将一组“无序”的记录序列调整为“有序”的记录序列。分内部排序和外部排序,若整个排序过程不需要访问外存便能完成,则称此类排序问题为内部排序。反之,若参加排序的记录数量很大,整个序列的排序过程不可能在内存中完成,则称此类排序问题为外部排序。内部排序的过程是一个逐步扩大记录的有序序列长度的过程。

    田晓旭 · 2018-06-28 17:54
  • 从京东618秒杀聊聊秒杀限流的多种实现

    俗话说的好,冰冻三尺非一日之寒,滴水穿石非一日之功,罗马也不是一天就建成的。两周前秒杀案例初步成型,分享到了中国最大的同性交友网站-码云。同时也收到了不少小伙伴的建议和投诉。我从不认为分布式、集群、秒杀这些就应该是大厂的专利,在互联网的今天无论什么时候都要时刻武装自己,只有这样,也许你的春天就在明天。

    田晓旭 · 2018-06-27 11:40
  • 以电商为例 读懂分布式架构的前世今生

    随着社会的发展,技术的进步,以前的大型机架构很显然由于高成本、难维护等原因渐渐地变得不再那么主流了,替代它的就是当下最火的分布式架构,从大型机到分布式,经历了好几个阶段,我们弄明白各个阶段的架构,才能更好地理解和体会分布式架构的好处,那么本文我们就来聊聊分布式架构的演进过程,希望能给大家带来眼前一亮的感觉。

    田晓旭 · 2018-06-27 11:14
  • 从Elasticsearch来看分布式系统架构设计

    分布式系统类型多,涉及面非常广,不同类型的系统有不同的特点,批量计算和实时计算就差别非常大。这篇文章中,重点会讨论下分布式数据系统的设计,比如分布式存储系统,分布式搜索系统,分布式分析系统等。

    田晓旭 · 2018-06-26 17:26
  • 从银行转账失败到分布式事务:总结与思考

    思考这个问题的初衷,是有一次给朋友转账,结果我的钱被扣了,朋友没收到钱。而我之前一直认为银行转账一定是由事务保证强一致性的,于是学习、总结了一下分布式事务的各种理论、方法。

    田晓旭 · 2018-06-26 16:21
  • 阿里云:聊聊微服务的服务注册与发现!

    一个好的服务注册发现中间件,应该是能完整地满足服务开发和治理的基础功能,然后才是性能和高可用。如果没有想清楚前面的功能,再高的可用性和性能都是浮云。最后,安全也同样重要。下面将从 服务注册、服务发现、容灾和高可用三个大方面来回答这些问题的主流做法。

    赵钰莹 · 2018-06-26 15:22
  • 一文教你如何简单入门分布式框架Dubbo

    Dubbo是一个Alibaba开源的分布式服务框架,致力于提供高性能和透明化的RPC远程服务调用方案,以及SOA服务治理方案。dubbo就是个服务框架,只有在分布式的时候,才有dubbo这样的分布式服务框架的需求说白了就是个远程服务调用的分布式框架,基于WebService。并且Dubbo采用全Spring配置方式,透明化接入应用,对应用没有任何API侵入,只需用Spring加载Dubbo的配置即可,Dubbo基于Spring的Schema扩展进行加载。

    田晓旭 · 2018-06-26 15:14
  • Python分析 谁是2018世界杯夺冠最大热门?

    2018年,世界杯小组赛已经在如火如荼的进行中。在上篇文章的基础上【世界杯:用Python分析热门夺冠球队-(附源代码)】,我们继续分析世界杯32强的实力情况,以期能够更进一步分析本次世界杯的夺冠热门球队。

    田晓旭 · 2018-06-26 14:22
  • 亚马逊CTO:我们为何要提供这么多的数据库?

    6月21日,亚马逊(Amazon.com)首席技术官(CTO) Werner Vogels发表博文,对亚马逊为何要在数据库领域重金投入,并打造如此之多的数据库产品的原因进行了解析,并列举了大量的案例。

    覃里 · 2018-06-26 13:45
  • 三分钟学会如何在函数计算中使用puppeteer?

    使用 puppeteer 结合函数计算,可以快速的构建弹性的服务完成各种功能,包括:生成网页截图或者 PDF、高级爬虫,可以爬取大量异步渲染内容的网页、模拟键盘输入、表单自动提交、登录网页等,实现 UI 自动化测试和捕获站点的时间线,以便追踪你的网站,帮助分析网站性能问题

    赵钰莹 · 2018-06-20 16:49
  • 技术解读:美团外卖Android Crash治理之路!

    Crash率是衡量一个App好坏的重要指标之一。如果你忽略了它的存在,它就会得寸进尺,愈演愈烈,最后造成大量用户的流失,进而给公司带来无法估量的损失。本文讲述美团外卖Android客户端团队在将App的Crash率从千分之三做到万分之二过程中所做的大量实践工作,抛砖引玉,希望能够为其他团队提供一些经验和启发。

    赵钰莹 · 2018-06-19 17:58
  • 三分钟读懂TT猫分布式、微服务和集群之路

    针对新手入门的普及,有过大型网站技术架构牛人路过,别耽误浪费了时间,阅读之前,请确保有一定的网络基础,熟练使用Linux,浏览大概需要3-5分钟的时间,结尾有彩蛋。

    田晓旭 · 2018-06-15 13:30
  • Redis使用指南:深度解析info命令实践!

    Redis是一个使用ANSI C编写的开源、基于内存、可选持久性的键值对存储数据库,被广泛应用于大型电商网站、视频网站和游戏应用等场景,能够有效减少数据库磁盘IO,提高数据查询效率,减轻管理维护工作量,降低数据库存储成本。对传统磁盘数据库是一个重要的补充,成为了互联网应用,尤其是支持高并发访问的互联网应用必不可少的基础服务之一。它的主要优势有以下几方面:

    赵钰莹 · 2018-06-14 16:55
  • 使用springboot对各层的代码进行测试!

    因为近段时间在一个系统,后端代码使用的技术栈是spring boot (版本1.5.12.RELEASE)、alibaba-spring-boot (版本1.5.12.0-SNAPSHOT)、pandora-boot (版本2018-05-release),写好各种mapper、service、controller层的代码之后免不了要进行测试,最高效的测试方法还是写单元测试,如果自己在本地把服务起来,页面上点点点,那是极其low极力不推荐的!

    赵钰莹 · 2018-06-13 17:38