摘要:
- 1. Webbench Webbench是一个在linux下使用的非常简单的网站压测工具。它使用fork()模拟多个客户端同时访问我们设定的URL,测试网站在压力下工作的性能,最多可以模拟3万个并发连接去测试网站的负载能力。Webbench使用C语言编写, 代码实在太简洁,源码加起来不到600行 阅读全文
posted @ 2017-11-28 13:51
Histring
阅读(286)
评论(0)
推荐(0)
摘要:
问题来源: 创建一个游戏系统,其将运行在互联网的环境中。客户端通过WWW服务或特定的客户端软件连接到游戏服务器,随着流量的增加,系统不断的膨胀,最终后台数据、业务逻辑被分布式的部署。然而相比中心化的系统,复杂度被无可避免的增大了,该如何降低各个组件之间的耦合度。 挑战: 需要保证可伸缩性、可维护性、 阅读全文
posted @ 2017-11-28 13:47
Histring
阅读(298)
评论(0)
推荐(0)
摘要:
一、算法原理 基于字的文本相似度余弦定理算法的原理是: (1)分别统计两个比较文本中所有字出现的频率,从而得出两个文本对应的向量(2)利用余弦定理计算这两个向量的夹角余弦值 (3)根据自设置的阈值判断两个文本是否相似 二、算法的C++实现 这里引用的StringUtil.hpp文件引自: https 阅读全文
posted @ 2017-11-28 13:46
Histring
阅读(1431)
评论(0)
推荐(0)
摘要:
一、算法原理 基于字的文本相似度Jacard 算法的原理是:(1)计算两个文本中字的交集(2)计算两个文本中字的并集(3)交集内的字的个数除以并集内的字的个数即为文本相似度值(4)根据设置的阈值判断是否相似 二、算法的C++实现 这里引用的StringUtil.hpp文件引自: https://gi 阅读全文
posted @ 2017-11-28 13:45
Histring
阅读(424)
评论(0)
推荐(0)
摘要:
(1)启动kafka-zookeeper命令 #!/bin/sh nohup bin/zookeeper-server-start.sh config/zookeeper.properties >/dev/null 2>&1 & (2)启动kafka-broker命令 #!/bin/sh nohup 阅读全文
posted @ 2017-11-28 13:30
Histring
阅读(141)
评论(0)
推荐(0)
摘要:
CentOS下可以用netstat或者lsof查看端口是被哪个应用/进程占用 netstat -nap #会列出所有正在使用的端口及关联的进程/应用 lsof -i :portnumber #portnumber要用具体的端口号代替,可以直接列出该端口听使用进程/应用 netstat -lnp|gr 阅读全文
posted @ 2017-11-28 13:29
Histring
阅读(475)
评论(0)
推荐(0)
摘要:
CentOS6与CentOS7添加防火墙例外端口的命令不用,需单独来说: (1)CentOS6下添加防火墙例外端口 #vim/ets/sysconfig/iptables 在 -A INPUT -m state--state NEW -m tcp -p tcp --dport 22 -j ACCEP 阅读全文
posted @ 2017-11-28 13:28
Histring
阅读(1998)
评论(0)
推荐(0)
摘要:
redis的安装#pwd/home/ybtang/#wget http://download.redis.io/releases/redis-2.8.12.tar.gz#tar zxvf redis-2.8.12.tar.gz#cd redis-2.8.12#makeredis的配置#vim red 阅读全文
posted @ 2017-11-28 13:27
Histring
阅读(876)
评论(0)
推荐(0)
摘要:
$exists关键字 mongo中查找存在comments字段的文档记录 db.app_doc.find({"comments":{$exists:true}}) $unset关键字 Mongo中删除comments字段,使用$unset关键字db.app_doc.update({"comments 阅读全文
posted @ 2017-11-28 13:26
Histring
阅读(139)
评论(0)
推荐(0)
摘要:
1、Linux的变量种类 按变量的生存周期来划分,Linux变量可分为两类: 1、永久的:需要修改配置文件,变量永久生效。 2、临时的:使用export命令声明即可,变量在关闭shell时失效。 2、设置变量的三种方法 1、在/etc/profile文件中添加变量【对所有用户生效(永久的)】 用VI 阅读全文
posted @ 2017-11-28 13:25
Histring
阅读(174)
评论(0)
推荐(0)
摘要:
Nutch 是一个开源Java 实现的基于Lucene的搜索引擎,Lucene为Nutch提供了文本索引和搜索的API。Nutch 提供了我们运行自己的搜索引擎所需的全部工具。包括全文搜索和Web爬虫。 组成 (1)爬虫crawler Crawler主要用于从网络上抓取网页并为这些网页建立索引。 ( 阅读全文
posted @ 2017-11-28 13:24
Histring
阅读(404)
评论(0)
推荐(0)
摘要:
/*********** *服务端程序* ************/ #include <Winsock2.h> #include <stdio.h> void main(){ WORD wVersionRequested; WSADATA wsaData; int err; wVersionReq 阅读全文
posted @ 2017-11-28 13:23
Histring
阅读(5391)
评论(1)
推荐(1)
摘要:
sizeof是C语言的一种单目操作符,如C语言的其他操作符++、--等。它并不是函数。sizeof操作符以字节形式给出了其操作数的存储大小。操作数可以是一个表达式或括在括号内的类型名。操作数的存储大小由操作数的类型决定。 一、采用sizeof来求结构体的大小 1、 sizeof应用在结构上的情况 请 阅读全文
posted @ 2017-11-28 13:22
Histring
阅读(266)
评论(0)
推荐(0)
摘要:
#include <stdio.h> #include <Winsock2.h> void main() { WORD wVersionRequested; WSADATA wsaData; int err; wVersionRequested = MAKEWORD( 1, 1 ); err = W 阅读全文
posted @ 2017-11-28 13:21
Histring
阅读(2194)
评论(0)
推荐(0)
摘要:
问题:求斐波那契数列的递归方法与非递归方法 栈是一种应用范围广泛的数据结构,适用于各种具有"后进先出"特性的问题。 递归函数是指在一个函数、过程或数据结构的定义中又应用了它自身的函数。 #include <iostream> #include <stack> using std::cout; usi 阅读全文
posted @ 2017-11-28 13:20
Histring
阅读(155)
评论(0)
推荐(0)
摘要:
#ifndef _MATRIX_H_ #define _MATRIX_H_ #include <vector> using std::vector; /*类功能:矩阵类 *原理:采用数组的数组来实现 */ template<typename T> class SeqMatrix { public: 阅读全文
posted @ 2017-11-28 13:20
Histring
阅读(4038)
评论(0)
推荐(0)
摘要:
一、线程的创建与管理 不同的操作系统下用c++进行过多线程编程时,不同操作系统API提供了相同或是相似的功能,但是它们的API的差别却极为悬殊。ACE_Thread提供了对不同OS的线程调用的简单包装,通过一个通用的接口进行处理线程创建、挂起、取消和删除等问题,为跨平台开发提供了支持。 1.1、线程 阅读全文
posted @ 2017-11-28 13:19
Histring
阅读(1615)
评论(0)
推荐(1)
摘要:
1、基础概念 1.1 链接库的概述 动态链接库DLL(DynamicLinkable Library),你可以简单的把它看成一种仓库,它提供给你一些可以直接拿来用的变量、函数或类。在库的发展史上经历了“无库-静态链接库-动态链接库”的时代。静态链接库与动态链接库都是共享代码的方式,如果采用静态链接库 阅读全文
posted @ 2017-11-28 13:18
Histring
阅读(4478)
评论(0)
推荐(0)
摘要:
后台服务进程不属于任何一个终端会话,当然也就不用和任何用户交互,许多系统服务由后台服务进程实施;如网络服务,打印等。Windows和LINUX在实现后台服务进程上并不统一,Windows定义的名称为SERVICE而Linux上的名称为Daemon。对应到ACE上,对于Linux平台ACE提供了一个名 阅读全文
posted @ 2017-11-28 13:18
Histring
阅读(1418)
评论(0)
推荐(0)
摘要:
1、链接库概述 Linux下得库有动态与静态两种,动态通常用.so为后缀,静态用.a为后缀。面对比一下两者: 静态链接库:当要使用时,连接器会找出程序所需的函数,然后将它们拷贝到执行文件,由于这种拷贝是完整的,所以一旦连接成功,静态程序库也就不再需要了。 动态库而言:某个程序在运行中要调用某个动态链 阅读全文
posted @ 2017-11-28 13:16
Histring
阅读(11102)
评论(0)
推荐(1)
摘要:
1、ActiveX控件概述 ActiveX控件是基于组件对象模型 (COM) 的可重用软件组件,广泛应用于桌面及Web应用中。在Windows操作系统以OCX结尾的文件,OCX代表“对象链接与嵌入控件”(OLE),这个技术是Microsoft提出的程序技术,用于处理桌面文件的混合使用。在VC下Act 阅读全文
posted @ 2017-11-28 13:16
Histring
阅读(2549)
评论(1)
推荐(0)
摘要:
1、网络编程概述 1.1 套接字socket 网络程序设计主要依靠套接字接受和发送信息来实现。Socket实质上提供了进程通信的端点。进程通信之前,双方首先必须各自创建一个端点,每一个Socket都用一个半相关描述: {协议,本地地址,本地端口} 一个完整的Socket则用一个相关描述: {协议,本 阅读全文
posted @ 2017-11-28 13:14
Histring
阅读(2733)
评论(0)
推荐(1)
摘要:
1、调试工具– cgdb 1.1 cgdb简介 cgdb可以看作gdb的界面增强版,用来替代gdb的gdb -tui。 cgdb主要功能是在调试时进行代码的同步显示,这无疑增加了调试的方便性,提高了调试效率。界面类似vi,符合unix/linux下开发人员习惯,所以如果熟悉gdb和vi,几乎可以立即 阅读全文
posted @ 2017-11-28 13:13
Histring
阅读(4836)
评论(0)
推荐(0)
摘要:
一、SVN服务器端的安装 1、检查已安装版本 #检查是否安装了低版本的SVN [root@localhost /]#rpm -qa subversion #如果存储旧版本,卸载旧版本SVN [root@localhost modules]#yum removesubversion 2、安装SVN [ 阅读全文
posted @ 2017-11-28 13:12
Histring
阅读(1693)
评论(0)
推荐(0)
摘要:
使用java下载指定URL的网页内容: [java] view plain copy package com.learn.test; import java.io.BufferedReader; import java.io.IOException; import java.io.InputStre 阅读全文
posted @ 2017-11-28 13:11
Histring
阅读(267)
评论(0)
推荐(0)
摘要:
MongoDB:Linux下的mongo安装包mongodb-linux-x86_64-3.0.3.tgz Mongo接口:mongo-java-driver-3.0.3.jar JSON解析:json.org.jar 实例代码: [java] view plain copy package com 阅读全文
posted @ 2017-11-28 13:11
Histring
阅读(165)
评论(0)
推荐(0)
摘要:
ElasticSearch是一个基于Lucene的搜索服务器。它提供了一个分布式多用户能力的全文搜索引擎,基于RESTful web接口。Elasticsearch是用Java开发的,并作为Apache许可条款下的开放源码发布,是第二流行的企业搜索引擎。设计用于云计算中,能够达到实时搜索,稳定,可靠 阅读全文
posted @ 2017-11-28 13:10
Histring
阅读(146)
评论(0)
推荐(0)
摘要:
epoll是Linux内核为处理大批句柄而作改进的poll,是Linux下多路复用IO接口select/poll的增强版本,它能显著的减少程序在大量并发连接中只有少量活跃的情况下的系统CPU利用率。因为它会复用文件描述符集合来传递结果而不是迫使开发者每次等待事件之前都必须重新准备要被侦听的文件描述符 阅读全文
posted @ 2017-11-28 13:09
Histring
阅读(568)
评论(0)
推荐(0)
摘要:
索引擎提供,站内搜索 阅读全文
posted @ 2017-11-28 12:48
Histring
阅读(4640)
评论(0)
推荐(0)
摘要:
#!/bin/sh# Author:tang# Date:2017-09-01 ProcessName=webcrawlerInstanceCount=6RuntimeLog='runtime.log' export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:./lib ul 阅读全文
posted @ 2017-11-28 12:00
Histring
阅读(4148)
评论(0)
推荐(0)
摘要:
#!/bin/bashPID=$1 cpu=`ps --no-heading --pid=$PID -o pcpu`mem=`ps --no-heading --pid=$PID -o pmem`echo -n `date +'%Y-%m-%d %H:%M:%S'`echo -e "\t$cpu\t 阅读全文
posted @ 2017-11-28 11:58
Histring
阅读(2908)
评论(1)
推荐(0)
摘要:
docker的安装与使用 1. docker介绍 1.1 docker简介 Docker 提供了一个可以运行你的应用程序的封套(envelope),或者说容器。它原本是 dotCloud 启动的一个业余项目,并在前些时候开源了。它吸引了大量的关注和讨论,导致 dotCloud 把它重命名到 Dock 阅读全文
posted @ 2017-11-28 11:57
Histring
阅读(38919)
评论(1)
推荐(0)
摘要:
1、死锁的调试 一个正在生产环境下运行的进程死锁了,然后并没有在调试器里面打开它,但发现没有响应,日志输出也停止了。那么我们会想到“我刚刚加上了新的锁策略,不一定稳定,这可能是死锁了”。 产生死锁的四个必要条件 (1) 互斥条件:一个资源每次只能被一个进程(线程)使用。 (2) 请求与保持条件:一个 阅读全文
posted @ 2017-11-28 11:56
Histring
阅读(3842)
评论(0)
推荐(0)
摘要:
Vundle插件管理工具 1.1、简介 Vundle(https://github.com/VundleVim/Vundle.vim)的全称是Vim Bundle,它是一款Vim插件管理工具。Vundle让你可以非常轻松地安装、更新、搜索和清理Vim插件。它还能管理你的运行时环境,并帮助标记 1.2 阅读全文
posted @ 2017-11-28 11:55
Histring
阅读(2200)
评论(0)
推荐(0)

浙公网安备 33010602011771号