自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(34)
  • 收藏
  • 关注

原创 Netty学习系列文章

前一段在看netty,自己总结了一个Netty学习系列文章。netty学习系列:Java NIO预备知识  netty学习系列:NIO Reactor模型 & Netty线程模型netty学习系列:pipeline原理与事件处理netty学习系列:读操作netty学习系列:write&flushnetty学习系列:服务端ServerSocketChannel

2017-05-11 10:14:37 658

原创 《自顶向下法》学习笔记——第五章:链路、接入网和局域网

第五章 链路、接入网和局域网1、链路层概述 0)概述:    *结点:运行链路层协议的任何设备。    *链路:沿着通信路径连接相邻结点的通信信道。    *一个形象的类比:在游客运输的类比中,一个游客好比一个数据报,每个运输区段好比一条链路,每种运输方式好比一种链路层协议,而该旅行社好比路由选择协议。1)链路层提供的服务:    *链路

2017-03-01 23:18:06 987

原创 《自顶向下法》学习笔记——第四章:网络层

第四章 网络层1、概述0)转发与路由选择:    *转发涉及“分组”在单一的路由器中从一条入链路到一条出链路的传输;    *路由选择涉及一个网络的所有路由器,它们经过路由选择协议共同交互,以决定分组从源到目的节点所采用的路径0)路由选择算法:    *路由选择算法的任务是决定从发送方到接收方的好路径;    *两种最流行的算法类型为“链路状态算法”和“距离

2017-02-26 16:18:18 1582

原创 Linux IO模型与Java网络编程

一、网络编程Socket API的操作含义API阻塞非阻塞connect    tcp三次握手成功后返回。立即返回,需要通过其他方式判断TCP连接建立成功还是失败。 send    阻塞直到将待发送数据从用户空间全部放入内核发送缓冲区后返回。立即返回,无论待发送数据是否成功放入内核发送缓

2017-02-13 13:58:15 681

原创 IM系统:消息推送及离线存储

一、消息在线推送二、消息离线存储与拉取说明:消息离线存储与拉取部分,结合了有赞客服系统现有实现,并参考了沈剑的文章《群消息这么复杂,怎么能做到不丢不重?》

2017-02-05 22:57:53 6247

原创 有赞消息平台客服系统介绍

零、写在前面:    加入有赞消息沟通平台半年有余,参与有赞客服系统开发及维护工作,个人也在之中不断成长。在今年的末尾,把对系统的认识进行总结梳理,送给自己~    有赞客服系统整合了有赞产品线IM通道及微信通道,商家客服可与上述通道源中的用户进行实时聊天沟通。一、整体架构:    先上个图。        1、系统分层    系统整体分为三层,由上

2017-01-23 19:34:25 3645

原创 《自顶向下法》学习笔记——第三章:运输层

第三章 运输层1、概述和运输层服务0)概述:    *逻辑通信:        a)运输层协议为运行在不同主机上的应用进程之间提供了逻辑通信功能;        b)实际上这些主机可能通过很多路由器及多种不同类型的链路相连;        c)应用进程使用运输层提供的逻辑通信功能彼此发送报文,而无需考虑承载这些报文的物理基础设施细节。1)运输

2017-01-23 19:23:05 843

原创 《自顶向下法》学习笔记——第二章:应用层

第二章 应用层1、应用层协议原理0)概述:    *研发网络应用程序的核心是写出能够运行在不同的端系统和通过网络彼此通信的程序。    *我们不需要编写在网络核心设备入路由器或链路层交换机上运行的软件。1)应用程序体系结构:    *由应用程序研发者设计,规定了如何在各种端系统上组织该应用程序。    *两种主流体系结构为“客户—服务器体系结构”和“对等

2017-01-07 20:15:09 960

原创 《自顶向下法》学习笔记——第一章:计算机网络和因特网

第一章 计算机网络和因特网1、什么是因特网1)因特网:是一个世界范围的计算机网络,即它是一个互联了遍及全世界的数以亿计的计算设备的网络。2)端系统:    *接入因特网的终端设备被称为“主机”或“端系统”。    *端系统通过“通信链路”或“分组交换机”连接到一起,通过“因特网服务提供商(ISP)”接入因特网。3)协议:   *端系统、分组交换机和其他因特网部件都要

2016-12-25 16:04:43 853

原创 JAVA IO模型演进及Reactor模式

一、传统BIO模型在基于传统同步阻塞模型中:ServerSocket负责绑定IP地址,启动监听端口;Socket负责发起连接操作。连接成功后,双方通过输入输出流进行同步阻塞式通信。通信过程:1)服务端通常由一个独立的Acceptor线程负责监听客户端的连接;2)Acceptor监听到客户端的连接请求后,为每个客户端创建一个新的线程进行链路处理;3)链路处理线程完成客户端请求

2016-11-14 10:25:20 1534

原创 spring源码初步学习-自己实现的ioc容器结构

1、annotation包:定义了各种IOC框架的注解2、definition包:Bean描述类相关BeanDefinition->容器中bean定义的描述类PropertyDefinition->bean中依赖注入属性的表述类BeanDefinitionList->封装容器Bean描述类的集合3、factory包:beanFactory相关,即容器bean实例

2015-06-30 13:21:42 495

原创 spring源码初步学习-SpringMVC

第四部分 SpringMVC的实现Spring的MVC是基于Servlet功能实现的,通过实现Servlet接口的DispatcherServlet来封装其核心功能实现。一 ContextLoaderListener:ContextLoaderListener的作用就是启动web容器时,自动装配ApplicationContext的配置信息。它实现了ServletContextLi

2015-06-26 16:59:45 480

原创 spring源码初步学习-容器的功能扩展(ApplicationContext)

第三部分:容器功能的扩展ApplicationContext和BeanFactory两者都是用于加载Bean的,但是相比之下,ApplicationContext提供了更多的扩展功能。 public ClassPathXmlApplicationContext(String[] configLocations, boolean refresh, ApplicationContext p

2015-06-19 13:47:05 691

原创 spring源码初步学习-bean的加载

第二部分:bean的加载一 bean加载流程概览调用XmlBeanFactory.getBean(String name)方法时,最终会进入到AbstractBeanFactory的doGetBean方法1)转换对应beanName:final String beanName = transformedBeanName(name);因为传入的name可能是别名,也可

2015-06-16 16:44:58 556

原创 spring源码初步学习-容器(BeanFactory)基本实现

spring ioc容器

2015-06-14 17:05:55 546

转载 关于正向代理,反向代理的基本认识

一 正向代理正向代理是一个位于客户端和原始服务器(origin server)之间的服务器,为了从原始服务器取得内容,客户端向代理发送一个请求并指定目标(原始服务器),然后代理向原始服务器转交请求并将获得的内容返回给客户端。客户端必须设置正向代理服务器,当然前提是要知道正向代理服务器的IP地址,还有代理程序的端口。正向代理就是代理服务器替代访问方【用户A】去访问目标服务器【服务器B

2014-12-19 11:25:48 538

转载 java通过反射创建对象的小例子

利用Java的反射原理,通过Class 对象生成对应类的 对象。这句话有点绕,我给你举几个例子下面的代码是伪代码,不可以直接拿去用,但是思想是对的代码1class A{    A(){ /五惨构造器    }         String name; //A的一个属性    int id;//A的一个属性    A(String name){ //含有一

2014-12-02 16:23:38 1541

转载 Java并发编程:Executor框架

Executor框架是指java 5中引入的一系列并发库中与executor相关的一些功能类,其中包括线池,Executor,Executors,ExecutorService,CompletionService,Future,Callable等。他们的关系为:并发编程的一种编程方式是把任务拆分为一些列的小任务,即Runnable,然后在提交给一个Executor执行,Executor

2014-12-02 13:41:33 504

原创 操作系统精髓与设计原理学习笔记十:分布式处理、客户/服务器和集群系统

一、客户服务器计算模型1 常用术语应用程序 编程

2014-11-22 15:22:14 980

原创 操作系统精髓与设计原理学习笔记九:IO管理和磁盘调度

输入/输出可能是操作系统设计中最困难的部分。这是因为存在许多不同的设备和它们的应用,

2014-11-18 20:03:03 1607

原创 操作系统精髓与设计原理学习笔记八:单处理器调度

在多道程序设计系统中,内存中有多个进程。每个

2014-11-15 19:13:49 855

原创 操作系统精髓与设计原理学习笔记七:内存管理

在单道程序设计系统中,内存被划分成两个部分:一部分供操作系统使用(主流监控)

2014-11-12 18:47:34 939

原创 操作系统精髓与设计原理学习笔记六:并发(死锁和饥饿)

本章讲述在并发处理中通常需要解决的两个问题:

2014-11-10 18:37:26 1136

原创 操作系统精髓与设计原理学习笔记五:并发性(互斥和同步)

并发是所有问题的基础,也是操作系统设计的基础。并发包括很多设计问题,其中有进程间通信,资源

2014-11-09 12:22:43 2148

原创 操作系统精髓与设计原理学习笔记四:线程

这里所说的进程个概念要比前面给出的更复杂和精细。实际上,它包含两个独立的概念:

2014-11-03 14:09:58 834

原创 操作系统精髓与设计原理学习笔记三:进程描述和控制

一、什么是进程:

2014-10-29 17:48:16 1071 1

原创 操作系统精髓与设计原理学习笔记二:操作系统概述

一 简介,目标和功能:

2014-10-27 09:09:16 800

原创 操作系统精髓与设计原理学习笔记一:计算机系统概述

一、计算机基本构成处理器存储器输入/输出部件

2014-10-14 15:37:32 925

原创 java ClassLoader入门

一 总体作用:    根据指定类的名称,找到或者生成器对应的字节码,

2014-06-29 23:34:40 666

原创 java反射与动态代理

一、反射1 基本概念:动态获取

2014-06-27 18:56:10 755

原创 Storm学习总结-基础篇

Storm简介  属性:    分布式流计算框架。  类似产品:  Yahoo!的S4  特点:    开源,分布式,实时计算系统,可扩展,高容错,处理速度快,支持多语言编程。Storm集群结构Storm基本概念1 Topology  原始定义:To do realtime computation on Storm, you create what are call

2014-06-27 18:06:36 675

原创 java_NIO小结

Channel and Buffer

2014-06-27 17:48:48 559

转载 java_IO小结

I/O:程序

2014-06-27 15:51:36 492

原创 java线程小结

概念进程:指一个内存中运行的应用程序,每个进程都有自己独立的一块内存空间,一个进程中可以启动多个线程。比如在Windows系统中,一个运行的exe就是一个进程。线程:指进程中的一个执行流程,一个进程中可以运行多个线程。比如java.exe进程中可以运行很多线程。线程总是属于某个进程,进程中的多个线程共享进程的内存。“同时”执行:是人的感觉,在线程之间实际上轮换执行。

2014-06-27 15:37:35 389

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除