摘要: http://blog.csdn.net/henren555/article/details/43406479 阅读全文
posted @ 2017-08-22 10:12 喵哒 阅读(83) 评论(0) 推荐(0) 编辑
摘要: 一、前言 在计算机领域,当单机性能达到瓶颈时,有两种方式可以解决性能问题,一是堆硬件,进一步提升配置,二是分布式,水平扩展。当然,两者都是一样的烧钱。今天聊聊我所理解的分布式系统的架构思路。 二、分布式系统的两种方式 平时接触到的分布式系统有很多种,比如分布式文件系统,分布式数据库,分布式WebSe 阅读全文
posted @ 2017-08-21 16:51 喵哒 阅读(460) 评论(0) 推荐(0) 编辑
摘要: 互联网的发展,网站应用的规模不断扩大,常规的垂直应用架构已无法应对,分布式服务架构以及流动计算架构势在必行,Dubbo是一个分布式服务框架,在这种情况下诞生的。现在核心业务抽取出来,作为独立的服务,使前端应用能更快速和稳定的响应。 一Dubbo背景 大规模服务化之前,应用可能只是通过RMI或Hess 阅读全文
posted @ 2017-08-21 15:04 喵哒 阅读(16875) 评论(0) 推荐(1) 编辑
摘要: Worker模式 想解决的问题 异步执行一些任务,有返回或无返回结果 使用动机 有些时候想执行一些异步任务,如异步网络通信、daemon任务,但又不想去管理这任务的生命周。这个时候可以使用Worker模式,它会帮您管理与执行任务,并能非常方便地获取结果 结构 很多人可能为觉得这与executor很像 阅读全文
posted @ 2017-07-11 11:41 喵哒 阅读(3233) 评论(0) 推荐(0) 编辑
摘要: 进程是一个具有独立功能的程序关于某个数据集合的一次运行活动。它可以申请和拥有系统资源,是一个动态的概念,是一个活动的实体。它不只是程序的代码,还包括当前的活动,通过程序计数器的值和处理寄存器的内容来表示。 进程是一个“执行中的程序”。程序是一个没有生命的实体,只有处理器赋予程序生命时,它才能成为一个 阅读全文
posted @ 2017-07-03 17:07 喵哒 阅读(135) 评论(0) 推荐(0) 编辑
摘要: 1. 【强制】获取单例对象需要保证线程安全,其中的方法也要保证线程安全。 说明:资源驱动类、工具类、单例工厂类都需要注意。 2. 【强制】创建线程或线程池时请指定有意义的线程名称,方便出错时回溯。 3. 【强制】线程资源必须通过线程池提供,不允许在应用中自行显式创建线程。 说明:使用线程池的好处是减 阅读全文
posted @ 2017-07-03 16:54 喵哒 阅读(143) 评论(0) 推荐(0) 编辑
摘要: 什么是 Swagger? Swagger™的目标是为REST APIs 定义一个标准的,与语言无关的接口,使人和计算机在看不到源码或者看不到文档或者不能通过网络流量检测的情况下能发现和理解各种服务的功能。当服务通过Swagger定义,消费者就能与远程的服务互动通过少量的实现逻辑。类似于低级编程接口, 阅读全文
posted @ 2017-06-30 15:01 喵哒 阅读(3447) 评论(0) 推荐(0) 编辑
摘要: 1. 【强制】关于hashCode和equals的处理,遵循如下规则: 1) 只要重写equals,就必须重写hashCode。 2) 因为Set存储的是不重复的对象,依据hashCode和equals进行判断,所以Set存储的对象必须重写这两个方法。 3) 如果自定义对象做为Map的键,那么必须重 阅读全文
posted @ 2017-06-29 11:34 喵哒 阅读(372) 评论(0) 推荐(0) 编辑
摘要: serialVersionUID适用于Java的序列化机制。简单来说,Java的序列化机制是通过判断类的serialVersionUID来验证版本一致性的。在进行反序列化时,JVM会把传来的字节流中的serialVersionUID与本地相应实体类的serialVersionUID进行比较,如果相同 阅读全文
posted @ 2017-06-29 08:38 喵哒 阅读(781) 评论(0) 推荐(0) 编辑
摘要: 1. 什么是Java对象序列化 Java平台允许我们在内存中创建可复用的Java对象,但一般情况下,只有当JVM处于运行时,这些对象才可能存在,即,这些对象的生命周期不会比JVM的生命周期更长。但在现实应用中,就可能要求在JVM停止运行之后能够保存(持久化)指定的对象,并在将来重新读取被保存的对象。 阅读全文
posted @ 2017-06-28 17:32 喵哒 阅读(352) 评论(0) 推荐(0) 编辑