个人简介

Echo Blog


江湖无名 安心练剑
  • 负载均衡
    DNS 负载均衡 开始呢,我们的应用只有一台web-server。那么你希望: 输入guduyan.com就能定位该server! 那很简单,只要在DNS里配上域名和你的server映射关系,就能访问到啦! 好,现在呢,多了一台web-server,你就可以通过在DNS里加一条配置,以DNS轮询方式进行负载均衡。 Nginx+DNS 现在假设,我们多了一些需求啊。你的系统按照功能模...
    2019-01-14 10:29:09 | Distributed
  • Redis 是什么?redis 的应用场景有哪些?
    Redis 是什么? Redis是一种开放源代码(BSD许可)的内存中数据结构存储,用作数据库,缓存和消息代理。 它支持数据结构,例如字符串,哈希,列表,集合,带范围查询的排序集合,位图,超日志和半径查询的地理空间索引。 中文官网 Redis 使用场景 分布式锁 Redis 分布式锁设计 计数器(string) 如知乎每个问题的被浏览器次数 set key 0 in...
    2019-01-14 10:29:09 | Cache
  • java 浅拷贝,深度拷贝与属性复制
    问题 日常工作中,我们希望复制一个对象A的属性到对象B,且保证二者的变化不会互相影响。 直接赋值,肯定是无法满足的。 深度拷贝与浅拷贝 概念 浅复制(浅克隆) 被复制对象的所有变量都含有与原来的对象相同的值,而所有的对其他对象的引用仍然指向原来的对象。 换言之,浅复制仅仅复制所考虑的对象,而不复制它所引用的对象。 深复制(深克隆) 被复制对象的所有变量都含有与原来的对象相同...
    2019-01-09 15:13:13 | Java
  • Java Thread 小结
    基础知识 java thread 使用线程的目的 用多线程只有一个目的,就是更好的利用cpu的资源,因为所有的多线程代码都可以用单线程来实现。说这个话其实只有一半对,因为反应“多角色”的程序代码,最起码每个角色要给他一个线程吧,否则连实际场景都无法模拟,当然也没法说能用单线程来实现:比如最常见的“生产者,消费者模型”。 多线程,并行与并发 很多人都对其中的一些概念不够明确,如同步、...
    2019-01-09 00:44:18 | Java
  • Greenplum Database-02-sharing nothing/everything/disk/memory
    业务背景 当今世界是一个信息化的世界,我们的生活中无论是生活、工作、学习都离不开信息系统的支撑。 而信息系统的背后用于保存和处理最终结果的地方就是数据库。因此数据库系统就变得尤为重要,这意味着如果数据库如果面临问题,则意味着整个应用系统也会面临挑战,从而带来严重的损失和后果。 如今“大数据”这个词已经变得非常流行,虽然这个概念如何落地不得而知。但可以确定的是,随着物联网、移动应用的兴起...
    2019-01-09 00:44:18 | Database
  • Greenplum Database Greenplum 数据库
    greenplum Experience Greenplum Database , an open-source massively parallel data platform for analytics, machine learning and AI. greenplum 与 postgresql greenplum是利用了 postgresql 数据库的框架,也就相当于说是,G...
    2019-01-09 00:44:18 | Database
  • 算法之最大值、最小值
    问题 求一个随机数组的最大值和最小值。 排序 可以首先对数据排序,然后获取。 本文暂时不考虑排序的情况,前提是数组乱序。 常见方式 遍历 最简单的就是直接遍历数组。 如何从n个数里找到最大值与最小值? 很容易想到,用一个循环找到最大值和最小值,就能搞定。 (int, int) find_max_min(int arr[n]){ int max = -infinit...
    2019-01-07 11:29:47 | Althgorim
  • message 顺序性如何保证?
    问题 很多业务都需要考虑消息投递的顺序性: 单聊消息投递,保证发送方发送顺序与接收方展现顺序一致 群聊消息投递,保证所有接收方展现顺序一致 充值支付消息,保证同一个用户发起的请求在服务端执行序列一致 消息顺序性是分布式系统架构设计中非常难的问题,有什么常见优化实践呢? 折衷一:以客户端或者服务端的时序为准 不管什么情况,都需要一个标尺来衡量时序的先后顺序,可以根据业务场景,以客...
    2019-01-07 11:29:47 | Distributed