13 Dave888Zhou

尚未进行身份认证

大处着眼,小处着手;群居守口,独居守心。

等级
TA的排名 831

Java常用开源库梳理(4)

Apache Flink库1. StreamExecutionEnvironment, ExecutionConfigLocalStreamEnvironment, RemoteStreamEnvironmentDataStream, DataStreamSource, DataStreamSink, KeyedStream, WindowedStream(1)StreamExecuti...

2019-07-09 10:37:35

Java常用开源库梳理(3)

Netty库1. ServerBootstrap, Bootstrap(1)ServerBootstrap:服务端启动器。 group():指定mainReactor线程池和subReactor线程池,前者是acceptor线程池用于接受客户端连接,后者是worker线程池用于处理IO事件,一类是服务端接收到客户端数据的Read事件,另一类是用户线程主动向客户端发送数据的Write事...

2019-07-09 10:37:08

Linux系统管理实践(11):网络诊断的基本技巧

1、网络慢的原因:网络问题经常以两种形式出现。第一种是来自远程服务器的慢速响应,第二种是完全失去连接。网络慢的根源主要有网卡的双工和速度的不兼容、网络拥塞、不良的路由、线缆问题、电阻或电波干扰、远端服务器负载过重、DNS配置不当。连接丢失的根源主要有电源问题、远端的服务器或程序被关掉。 2、进行基本的线缆和连接测试:你的服务器只有在网卡的连接指示灯亮的时候才可以和其他设备进行通信。...

2019-07-06 10:45:27

Java常用开源库梳理(2)

SLF4j和Logback库1. LoggerFactory, Logger (1)Slf4j:各种日志框架(如java logging, logback, log4j)一个抽象层,是一个简单的外观模块封装(为一组接口提供一个一致的界面,从而使得复杂的子系统与用户端分离解耦)。它允许你在后台使用任意的日志类库实现。日志是一项基本功能,如果你的应用中引用的第三方库使用了各种日志类库,会导致你应...

2019-07-06 10:45:09

Java常用开源库梳理(1)

Java集合数据结构1. List: 线程不安全:ArrayList, LinkedList, BitSet 线程安全:Vector, CopyOnWriteArrayList (1)ArrayList:使用数组实现的List,相当于动态数组,读取速度快,插入与删除速度慢(因为插入与删除时要移动后面的元素),保持插入顺序,适合于随机访问。允许重复元素,包括null。 (2)Linke...

2019-07-06 10:44:52

机器学习资源和路线图

机器学习资料:1. 台湾大学林轩田老师的”机器学习基石” http://www.bilibili.com/video/av1624332/?from=search&seid=5267157557318528006 只看完一部分,不错,推荐。2. 进阶课程:台湾大学林轩田老师的”机器学习技法” http://www.bilibili.com/video/av6991226/?from=

2017-05-09 11:59:44

Apache Mesos:数据中心就是计算机

数据中心就是计算机。云计算资源管理的方式正在改变。传统的数据中心在云和虚拟化层面的资源管理在当今企业日益增长的计算服务需要下,已经难以保持高效率。为了应对这个挑战,数据中心需要更高效率地提供更强的计算和存储服务。 Mesos和 YARN就是这样的解决方案。这些涌现的集群管理平台是下一代细粒度集群管理的趋势,他数据中心设备和资源的管理上将显示出更高的效率。随着处理和存储需要的提高,像YARN和Mesos这样的解决方案已经渐渐走上了历史的舞台。

2015-11-04 11:19:41

第6部分:AOP

6.1 AOP基础

2015-06-14 22:22:45

第5部分:表达式语言SpEL

5.1 概述5.1.1 概述      Spring表达式语言全称为“SpringExpressionLanguage”,缩写为“SpEL”,类似于Struts2x中使用的OGNL表达式语言,能在运行时构建复杂表达式、存取对象图属性、对象方法调用等等,并且能与Spring功能完美整合,如能用来配置Bean定义。      表达式语言给静态Java语言增加了动态功能。

2015-04-17 16:33:20

第4部分:资源

4.1.1  概述  在日常程序开发中,处理外部资源是很繁琐的事情,我们可能需要处理URL资源、File资源资源、ClassPath相关资源、服务器相关资源(JBoss AS 5.x上的VFS资源)等等很多资源。因此处理这些资源需要使用不同的接口,这就增加了我们系统的复杂性;而且处理这些资源步骤都是类似的(打开资源、读取资源、关闭资源),因此如果能抽象出一个统一的接口来对这些底层资

2015-04-17 14:49:18

第3部分:更多DI的知识

3.3.1  延迟初始化Bean  延迟初始化也叫做惰性初始化,指不提前初始化Bean,而是只有在真正使用时才创建及初始化Bean。  配置方式很简单只需在标签上指定 “lazy-init” 属性值为“true”即可延迟初始化Bean。  Spring容器会在创建容器时提前初始化“singleton”作用域的Bean,“singleton”就是单例的意思即整个容器每个Bea

2015-04-17 12:56:09

第3部分:依赖注入DI

3.1.1 依赖和依赖注入 传统应用程序设计中所说的依赖一般指“类之间的关系”,那先让我们复习一下类之间的关系: 泛化:表示类与类之间的继承关系、接口与接口之间的继承关系; 实现:表示类对接口的实现; 依赖:当类与类之间有使用关系时就属于依赖关系,不同于关联关系,依赖不具有“拥有关系”,而是一种“相识关系”,只在某个特定地方(比如某个方法体内)才有关系。 关联:表示类与类或类与接口之间的依赖关系,

2015-04-13 21:02:12

第2部分:IoC容器

2.2.1  IoC容器的概念IoC容器就是具有依赖注入功能的容器,IoC容器负责实例化、定位、配置应用程序中的对象及建立这些对象间的依赖。应用程序无需直接在代码中new相关的对象,应用程序由IoC容器进行组装。在Spring中BeanFactory是IoC容器的实际代表者。Spring IoC容器如何知道哪些是它管理的对象呢?这就需要配置文件,Spring IoC容器通过读取配置文件中的

2015-04-13 20:57:02

第1部分:Spring框架概述

Spring框架是一个轻量级的解决方案和一个潜在的一站式构建企业级应用程序. 然而, Spring 是模块化的,它允许你只使用你需要的哪些模块, 无需引入不必要的。你可以使用IoC容器,在其上使用Struts.但是你也可以只使用Hibernate整合代码或者JDBC抽象层。Spring框架支持声明式事务管理,通过RMI或者web services远程调用你的逻辑,以及各种选项将数据持久化。他提供一

2015-04-13 20:52:46

如何解决秒杀的性能问题和超卖的讨论

最近业务试水电商,接了一个秒杀的活。之前经常看到淘宝的同行们讨论秒杀,讨论电商,这次终于轮到我们自己理论结合实际一次了。  ps:进入正文前先说一点个人感受,之前看淘宝的ppt感觉都懂了,等到自己出解决方案的时候发现还是有很多想不到的地方其实都没懂,再次验证了“细节是魔鬼”的理论。并且一个人的能力有限,只有大家一起讨论才能想的更周全,更细致。好了,闲话少说,下面进入正文。 一、秒杀带来

2014-09-22 23:38:27

Nginx:配置指南(2)

基于名字的虚拟主机Nginx首先选定由哪一个虚拟主机来处理请求。让我们从一个简单的配置(其中全部3个虚拟主机都在端口*:80上监听)开始:server { listen 80; server_name example.org www.example.org; ...}server { listen 80; ser

2014-07-23 17:22:09

Nginx:配置指南(1)

This guide gives a basic introduction to nginx and describes somesimple tasks that can be done with it.It is supposed that nginx is already installed on the reader’s machine.If it is not, see theIns

2014-07-20 22:29:46

开源软件架构:Nginx

nginx(发音"engine x")是俄罗斯软件工程师Igor Sysoev开发的免费开源web服务器软件。nginx于2004年发布,聚焦于高性能,高并发和低内存消耗问题。并且具有多种web服务器功能特性:负载均衡,缓存,访问控制,带宽控制,以及高效整合各种应用的能力,这些特性使nginx很适合于现代网站架构。目前,nginx已经是互联网上第二流行的开源web服务器软件。14.1 为什

2014-07-20 22:14:01

Martin Fowler的《持续集成》

持续集成是一种软件开发实践,在实践中项目成员频繁地进行集成,通常每个成员每天都会做集成工作,如此,每天整个项目将会有多次集成。每次集成后都会通过自动化构建(包括测试)来尽快发现其中的错误。许多团队都发现这种方法大大地减少了集成问题并且能够快速地开发出高内聚性的软件。本文简要地总结了持续集成技术及其现状。 我还清楚地记得我刚加入一个大型软件项目时的情形,那时我正在英国一个电子公司做暑期实习。

2014-07-14 15:15:10

数据库集群技术漫谈

简介当今世界是一个信息化的世界,我们的生活中无论是生活、工作、学习都离不开信息系统的支撑。而信息系统的背后用于保存和处理最终结果的地方就是数据库。因此数据库系统就变得尤为重要,这意味着如果数据库如果面临问题,则意味着整个应用系统也会面临挑战,从而带来严重的损失和后果。    如今“大数据”这个词已经变得非常流行,虽然这个概念如何落地不得而知。但可以确定的是,随着物联网、移动应用的兴起,数据

2014-07-12 16:08:10

查看更多

勋章 我的勋章
  • 持之以恒
    持之以恒
    授予每个自然月内发布4篇或4篇以上原创或翻译IT博文的用户。不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!