自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(136)
  • 资源 (9)
  • 收藏
  • 关注

原创 《Java8 实战》- 读书笔记第一章(02)

从方法传递到 Lambda接着上次的 Predicate,继续来了解一下,如果继续简化代码。把方法作为值来传递虽然很有用,但是要是有很多类似与 isHeavyApple 和 isGreenApple 这种可能只用一两次的方法定义一堆确实有点烦人。为了解决这个问题,Java8 它引入了一套新记法(匿名函数或 Lambda),然你可以这样写:List<Apple> isRedApples = filterApples(FilteringApples.apples,&nb

2022-03-23 16:03:58 192 1

原创 硬核图解网络IO模型

前言文章会同步到个人网站,方便阅读:https://xiaoflyfish.cn/网站最近丰富了很多内容,都是满满的干货!微信搜索:月伴飞鱼,交个朋友,进面试交流群!公众号后台回复666,可以获得免费电子书籍!觉得不错,希望点赞,在看,转发支持一下,谢谢背景介绍在互联网的时代下,绝大部分数据都是通过网络来进行获取的。在服务端的架构中,绝大部分数据也是通过网络来进行交互的。而且作为服务端的开发工程师来说,都会进行一系列服务设计、开发以及能力开放,而服务能力开放也是需要通过网络来完成的,因此对网络编程以及网络I

2022-03-13 10:58:37 1077

原创 JavaAPI访问Hadoop2.2HA的配置下访问Hbase0.96.2 .

1、确保Hadoop和Hbase服务已经正常启动了2、把hbase-site.xml,core-site.xml,hdfs-site.xml配置文件放到Java工程的src目录下3、引入相关的依赖包4、Java Client测试访问Hbase集群package com.hbase.test;import java.util.ArrayList;import j

2017-01-13 10:30:44 656

原创 C_语法_宏定义define和函数的作用…

要写好C语言,漂亮的宏定义是非常重要的。宏定义可以帮助我们防止出错,提高代码的可移植性和可读性等。在软件开发过程中,经常有一些常用或者通用的功能或者代码段,这些功能既可以写成函数,也可以封装成为宏定义。那么究竟是用函数好,还是宏定义好?这就要求我们对二者进行合理的取舍。我们来看一个例子,比较两个数或者表达式大小,首先我们把它写成宏定义:#define MAX( a, b

2016-12-19 09:33:11 766

原创 socket TCP编程中connect的一些坑 .

1.服务端listen成功后,系统就自动接收客户端请求了man listen:其中有一段The  behavior of the backlog argument on TCP sockets changed with Linux       2.2.  Now it specifies the  queue  length  for  completely  establishe

2016-12-14 18:41:54 2782

原创 socket中的函数遇见EINTR的处理

这几天,写服务器代码过程当中,遇见EINRT信号的问题,我是借鉴 《unp 》,采用continue或者goto again循环解决的。但是感觉这个还是很有必要记录一下。网络上查找到的信息很多。下面是我查找到的和EINTR有关的介绍:1  http://blog.csdn.net/yanook/article/details/7226019  慢系统调用函数如何处理中断信号EINTR2  

2016-12-05 17:04:38 2926

原创 Linux C语言 网络编程(二) 服务器模型

前面介绍了关于连接Linux服务端方式,但是服务端的资源是有限的,所以我们通常需要重新思考,设计一套服务器模型来处理对应的客户端的请求。第一种:并发服务器,通过主进程统一处理客户端的连接,当客户端连接过后,临时fork()进程,由子进程处理客户端请求,将连接请求和业务进行了分离。server.c#include #include #include #include #i

2016-11-30 16:00:15 630

原创 eclipse生成可执行jar包

相信大家在开发java的时候一定会遇到要求将java工程打包成可运行的jar的需求,今天我在这篇博客中详细讲解一下生成可运行jar的两种方法,亲测完全可行。1. 工程中不包含第三方的jar包这种情况比较简单,选中需要生成jar的工程,右击-->Export,出现如下的窗口选中java--- > JAR file,出现如下窗口,此处要:选中 Expor

2016-11-11 14:58:19 916

原创 Redis源码简要分析

在文章的开头我们把所有服务端文件列出来,并且标示出其作用:adlist.c //双向链表ae.c //事件驱动ae_epoll.c //epoll接口, linux用ae_kqueue.c //kqueue接口, freebsd用ae_select.c //select接口, windows用anet.c //网络处理aof.c //处理AOF文件config.c

2016-09-17 15:07:34 1065

原创 Spark中文指南(入门篇)-Spark编程模型(一)

前言 本章将对Spark做一个简单的介绍,更多教程请参考:Spark教程 本章知识点概括Apache Spark简介Spark的四种运行模式Spark基于Standlone的运行流程Spark基于YARN的运行流程

2016-06-27 19:08:07 3489

原创 Scala入门学习笔记二-基本数据类型、程序控制结构

本篇主要讲Scala的基本数据类型,更多教程请参考:Scala教程 基本数据类型Scala一共提供了9中数据类型,Scala的基本数据类型与java中的基本数据类型是一一对应的,这是Scala的数据类型全是类,并且头字母大写

2016-06-24 14:22:40 624

原创 Scala入门学习笔记三--数组使用

前言 本篇主要讲Scala的Array、BufferArray、List,更多教程请参考:Scala教程##本篇知识点概括- 若长度固定则使用Array,若长度可能有 变化则使用ArrayBuffer- 提供初始值时不要使用new,复杂对象数组没有提供初始值时必须提供new- 用()来访问元素- 用for(elem ##数组1、定长数组定义:

2016-06-24 14:16:42 4327

原创 Elasticsearch--索引操作

Elasticsearch可以支持全文检索,那么ES是以什么机制来支持的,这里索引就是一个重要的步骤,经过索引之后的文档才可以被分析存储、建立倒排索引。

2016-05-22 21:35:32 6741

原创 Elasticsearch - 处理冲突

当你使用 索引 API来更新一个文档时,我们先看到了原始文档,然后修改它,最后一次性地将整个新文档进行再次索引处理。Elasticsearch会根据请求发出的顺序来选择出最新的一个文档进行保存。但是,如果在你修改文档的同时其他人也发出了指令,那么他们的修改将会丢失。但是有些时候如果我们丢失了数据就会出大问题。想象一下,如果我们使用Elasticsearch来存储一个网店的商品数量。

2016-05-20 16:26:36 946

原创 [Elasticsearch] 聚合中的重要概念 - Buckets(桶)及Metrics(指标)

本章翻译自Elasticsearch官方指南的Aggregations-High-level Concepts一章。高层概念(High-Level Concepts)和查询DSL一样,聚合(Aggregations)也拥有一种可组合(Composable)的语法:独立的功能单元可以被混合在一起来满足你的需求。这意味着需要学习的基本概念虽然不多,但是它们的

2016-05-19 15:45:34 1697

原创 Jetty的工作原理以及与Tomcat的比较

Jetty 的工作原理以及与 Tomcat 的比较许 令波, Java 工程师, 淘宝网许令波,developerWorks 中国网站最佳作者,现就职于淘宝网,是一名 Java 开发工程师。对大型互联网架构设计颇感兴趣,喜欢钻研开源框架的设计原理。有时间将学到的知识整理成文章,也喜欢记录下工作和生活中的一些思考。个人网站是:http://xulingbo.net。简

2016-05-03 17:08:33 3086

原创 模板类的继承

模板类的继承包括四种:1.(普通类继承模板类)[cpp] view plain copy templateclass T>  class TBase{      T data;  ……  };  class Derived:public TBaseint>{  ……  };  2

2016-04-29 15:24:31 675

原创 CentOS6.5安装Qt4.8.6+QtCreator2.6.1

工作中需要用到Qt在Linux下做开发,公司提供的电脑安装的CentOS6.2,但是为了和windows下自己使用的QT版本一直,于是也选择安装了Qt5.1.0。但是在CentOS下刚开始是无法启动,经过自己努力(可以看我另外几篇关于CentOS下QT的文章)终于可以跑通了,但是却无法调试。不知道是不是因为CentOS系统向来更新太慢,软件版本太低的缘故(CentOS6.2预装GCC4.4.7),

2016-04-22 07:23:12 4318 1

原创 Thrift的安装和简单示例

本文只是简单的讲解Thrift开源框架的安装和简单使用示例,对于详细的讲解,后面在进行阐述。Thrift简述                                                                       Thrift是一款由Fackbook开发的可伸缩、跨语言的服务开发框架,该框架已经开源并且加入的Apache项目。Thrift主要

2016-04-22 07:22:14 827

原创 Thrift安装遇到的问题及解决方案

1. 必须安装boost。最新的稳定版是1.48.0。1.1.先下载:http://sourceforge.net/projects/boost/files/boost/1.48.0/    选择tar.gz包,    下载后我解压到了/usr/local/boost_1_48下:tar zxvf boost1.48.0 -C /usr/local/boost_1_48

2016-03-26 14:38:36 3492 1

原创 centos6.5安装boost

安装好系统跟新软件源yum install -y gcc gdb strace gcc-c++ autoconf libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel libxml2 libxml2-devel zlib zlib-devel glibc glibc-devel glib2 glib2-devel

2016-03-26 10:12:12 1898

原创 redhat 6.5 安装 codeblock 13.12

relocation error: multiget: symbol _Z23wxHandleFatalExceptionsb, version WXU_2.8 not defined in file libwx_baseu-2.8.so.0 下载地址:http://www.codeblocks.org/downloads/26 http://sourceforge

2016-03-24 18:19:28 1802

原创 centos 下安装qtcreator 之路

前言:本人刚接触qtcreator不久,最近要用到用qtcreaor开发程序,所以在此记录下来,以备以后查找。参考牛人blog:http://blog.sina.com.cn/s/blog_493667730100zt6n.htmlhttp://blog.csdn.net/force_eagle/article/details/5203578http://w

2016-03-24 07:35:22 2387

原创 centos 6.4 QT5 的安装,找不到GLIBCXX_3.4.15的解决办法

CentOS 6.4 QT5 的安装,找不到GLIBCXX_3.4.15的解决办法下载安装后 启动的时候提示 GLIBCXX_3.4.15,发现libstdc++.so.6的版本过,在安装qt-creator的时候运行这个IDE就出现了这个问题,是由于libstdc++.so.6的版本过低,需要下载个新的重新建立软连接。我这里是 更新里 gcc 版本到 4.8 解决的,更新

2016-03-23 22:42:07 621

原创 sublime text3自定义快捷键

我的sublime text 3 快捷键配置。强烈推荐下面标红的快捷键,谁用谁知道,编码的时候再也不用依赖方向键和鼠标了。[//=======================我的快捷键=======================//// 删除当前行{ "keys": ["ctrl+d"], "command":"run_macro_file", "args":

2016-03-12 17:50:58 7938

原创 VMmare12.0.0安装RedHat6.5使用net模式上网

VMmare12.0.0安装RedHat6.5使用net模式上网最近想用虚拟机装个RedHat6.5,以前一直是在桥接模式和仅主机模式之间来回切换,还要设置ip,用XShell连接,来回切换很麻烦,以前看到可以使用net模式,设置静态IP,同时还可以上网,正好晚上时间多,就决定好好设置一下,搞通了,点击NET模式后面的NET设置编辑RedHat的网络连接,

2016-03-11 22:44:36 1052

原创 yum安装g++

yum 安装g++时,用yum list的程序名不是 g++,而是 gcc-c++,否则搜不到。先list:#yum list gcc-c++Loaded plugins: fastestmirrorLoading mirror speeds from cached hostfile * base: mirrors.finalasp.com * extras:

2016-03-11 20:21:24 7628

原创 centos下查看软件依赖关系

今天老大发现正式服务器上有两台服务器出现两个依赖包,但其他三台又没有,让老大很是困惑,为了给客户一个合理的解释,老大让我查看有哪些服务要依赖libcurl.  系统:centos 5.51.查看软件包的依赖信息yum deplist libcurl使用yum deplist来查看libcurl依赖,当然也可以使用rpm -qf /usr/lib/libcurl.socu

2016-03-11 15:44:29 22483

原创 在RHEL 6.5上使用yum更新/安装软件

1)首先,需要移除系统注册相关软件∘ 查看相关软件:rpm -qa | grep subscription-manager∘ 移除相关软件:yum remove subscription-manager2)为了使用CentOS提供的yum源,需要删除系统自带的yum∘ rpm -aq | grep yum | xargs rpm -e --nodeps

2016-03-11 15:22:23 1258

原创 Redhat下 Boost库1.54编译安装

a. 在 www.boost.org 下载 boost1.54 源码包,解压缩。b. 进入目录后,运行 ./bootstrap.sh ,会生成一个 bjam 的可执行程序。c. 运行 ./bjam 进行编译。等待...d. 编译成功后,在 bjam 同级文件夹下,会有 stage、bin.v2 两个目录。bin.v2 中存的是编译时生成的目标文件,stage 中放的是 bo

2016-03-10 22:33:15 873

原创 VMware下的RHEL 6.4 安装gcc和gcc-c++

安装gcc首先需要相应的软件包(即rpm包),在rhel-workstation-6.4-x86_64-dvd.iso中就有相应的rpm包,怎样将rhel-workstation-6.4-x86_64-dvd.iso镜像通过VMware下的CD/DVD设备挂载到VMmare中的Redhat系统中,如下所示:    点击【Settings...】选项,打开如下对话框:

2016-03-10 22:21:46 423

原创 C编译: 动态连接库 (.so文件)

在“纸上谈兵: 算法与数据结构”中,我在每一篇都会有一个C程序,用于实现算法和数据结构 (比如栈和相关的操作)。在同一个程序中,还有用于测试的main()函数,结构体定义,函数原型,typedef等等。这样的做法非常不“环保”。算法的实际运用和算法的实现混在一起。如果我想要重复使用之前的源程序,必须进行许多改动,并且重新编译。最好的解决方案是实现模块化: 只保留纯粹的算法实现,分离头文

2016-03-09 23:24:14 468

原创 subline text3快捷键

Sublime text 3是我最喜欢的代码编辑器,每天和代码打交道,必先利其器,掌握基本的代码编辑器的快捷键,能让你打码更有效率。刚开始可能有些生疏,只要花一两个星期坚持使用并熟悉这些常用的快捷键,今后就能解放鼠标了,省心省力又省时,何乐而不为呢。以下是个人总结不完全的快捷键总汇,祝愿各位顺利解放自己的鼠标。选择类Ctrl+D 选中光标所占的文本,继续操作则会选中下一个相

2016-03-09 20:19:00 1500

原创 c语言中cJson的使用

c语言中cJson的使用JSON简介JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,可以把JSON的结构理解成无须的。可嵌套的key_value键值对集合,这些key_value键值对是以结构体或数组的形式来组织的。同一级的key-value是以一个','(逗号)隔开,每个key-value键值对是由一个key后面紧接一个“:”(冒号),冒号后面

2016-03-07 15:19:01 1894

原创 跟我一起写 Makefile

以前每次看书上写的Makefile,都头大,写的模模糊糊的,刚刚发现一篇《跟我一起写Makefile》,下面是链接,静下心来好好看看,收货良多。跟我一起写 Makefilehttp://bbs.chinaunix.net/forum.php?mod=viewthread&tid=408225

2016-03-05 22:20:38 356

原创 thrift (转)

一、ubuntu下thrift的安装1.下载源代码http://thrift.apache.org/download/下载最新版本thrift-0.8.0.tar.gz2.安装boost库sudo apt-get install libboost-dev libboost-dbg libboost-doc bcp libboost-* 3.安装其他相关工具包

2016-03-05 22:17:25 463

原创 Linux库文件和Shell可执行程序命令文件搜索路径变量的设置

一、库文件的搜索路径:1、在配置文件/etc/ld.so.conf中指定动态库搜索路径(需要添加其它库文件的路径,在文件的最后添加具体的路径即可 [ 如:/usr/local/lib ],添加后保存退出,然后在命令行ldconfig2、通过环境变量LD_LIBRARY_PATH指定动态库搜索路径(当通过该环境变量指定多个动态库搜索路径时,路径之间用冒号":"分隔)3、在编译目标代码时指

2016-03-05 22:10:47 5537

原创 linux下查看和添加PATH环境变量

详见:http://blog.sciencenet.cn/home.php?mod=space&uid=830496&do=blog&id=676304linux下查看和添加PATH环境变量来自:http://apps.hi.baidu.com/share/detail/32942984$PATH:决定了shell将到哪些目录中寻找命令或程序,PATH的值是一系列目录,

2016-03-05 22:08:28 414

原创 gcc/g++ 动态 静态 链接库 so

说明:文件目录:my文件: foo.h num.cpp size.cpp name.cpp main.cpp准备文件:foo.h12345678910111213141516171819

2016-03-05 17:32:41 743

原创 VS2013中安装配置和使用Boost库

时间:2014.07.24地点:基地--------------------------------------------------------------------------------------一、前言  今天准备去看场电影《后会无期》,但在这之前,我想好好研究下大名鼎鼎的Boost库。-------------------------------

2016-03-02 20:03:17 810

elasticsearch官方2.x版本文档

2016-09-29

c开发库cJSON库

一个c下的json操作库

2016-09-29

Sublime text3编辑器(含注册码)

完美支持各种语言,界面简洁、可以支持脚本运行

2016-09-29

Redis入门指南

关于新手学习NoSQL的入门书籍,Redis适合与分布式的数据存储

2015-10-23

Java23种设计模式

JAVA的经典设计模式,以及代码,由本人整理所得

2014-08-10

郝斌Java源代码下

国内Java培训郝斌视频的一些源代码,上课PPT

2014-08-10

郝斌Java源代码上

国内Java培训郝斌视频的一些源代码,上课PPT

2014-08-10

Java学习笔记(必看经典)

Java学习笔记(必看经典) 一个很不错的资源,个人整理所得

2014-08-06

java从入门到精通(韩顺平视频)笔记整理.doc

java从入门到精通(韩顺平视频)笔记整理,本人精心整理,欢迎多提意见

2014-08-05

空空如也

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

TA关注的人

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