自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

晴天的专栏

专注于Linux /Window平台C/C++游戏服务器后台程序开发

  • 博客(869)
  • 资源 (3)
  • 收藏
  • 关注

原创 Hadoop 自带WordCount 操作步骤

运行一个wordcount 任务的命令:bin/hadoop jar /usr/hddemo/wordcount.jar 包名.WordCount input output说明:input 指定的是执行map任务是的数据源所在目录,output 是指定reduce任务 执行完后将结果输出的目录data在配置文件配完后是不需要见这个目录的name目录是 执行 hadoop

2017-04-09 09:01:13 2611

原创 Hadoop WordCount详细分析

import org.apache.hadoop.mapreduce.lib.input.FileInputFormat;import org.apache.hadoop.mapreduce.lib.output.FileOutputFormat;import org.apache.hadoop.util.GenericOptionsParser;public class WordCoun

2017-04-09 08:59:11 1569

原创 JAVA_HOME is incorrectly set with hadoop

网上有很多答案,我的问题是cmd命令行java -version可以正常打印,cmd javac也可以正常用但是cmd运行hadoop.cmd时提示JAVA_HOME is incorrectly set with hadoop这个是因为你把java默认安到C:\Program Files\Java\ 这里了,但是Program Files中间有空格,所以才会出错,网上推荐说用win8

2017-01-22 19:23:33 4071

原创 Hadoop中dataNode启动不了

**********************************************************/2016-10-19 11:13:45,972 INFO org.apache.hadoop.hdfs.server.datanode.DataNode: registered UNIX signal handlers for [TERM, HUP, INT]2016-10

2017-01-22 14:04:17 3311 1

转载 最后一战编译步骤

最后一战经过测试,可以进游戏,搭建很简单,只要几步简单的操作就能跑起来,因为是在别人的电脑上搭建的,所以没有截图和视频,请见谅。1、客户端打开      我用的u3d 4.6版本打开的,没有发现什么问题,可以直接编译 2、服务端      首先用vs2010打开server》Allserver.sln,点击编译,编译要花点时间,编译完成后,可能会出现几个红色的文字,不用管他,暂

2016-01-05 10:33:56 3468 3

翻译 lua和C++相互交换数据

下面的代码演示了在C++和lua脚本之间传递数据。首先在C++中创建一个table,添加元素,然后放置到lua的全局表中。在lua脚本中可以使用C++创建的这个表。然后在脚本中创建一个表,以脚本返回值的方式返回给C++,在C++中可以读取表中的值。 例子代码需要一个args.lua的lua文件,要手工创建,我把它放到了C盘根目录下。[plai

2015-09-25 13:58:56 1363

转载 Lua中__index和__newindex之间的沉默与合作

为不想在一篇文章里挤太多知识点,所以,有些小知识点就集合到这样的文章里吧~1.沉默技能——拒绝__index和__newindex效果虽然__index和__newindex是很好用的功能,但是,有时候我们又希望很纯粹地去调用table或者给table赋值。那,这时候怎么办?给table重新设置一个元表?不,这个做法很糟糕~于是,体贴的Lua又给我们提供了这样的调用

2015-09-25 13:38:30 894

转载 Python快速入门

2015-09-24 16:17:34 978

转载 VS2013 配置全局 VC++ 目录

1. 随便打开一个项目,然后点击菜单中的 视图->其他窗口->属性管理器2. 打开属性管理器,点击项目前的箭头,展开项目,找到debug或者release下面的Microsoft.Cpp.Win32.user这个属性,3. 双击会出现一个跟在项目上右键属性一样的窗口,修改里面的“VC++目录”就是修改了全局的,1. 随便打开一个项目,然后点击菜单中的 视图->其他窗口-

2015-09-22 19:15:51 2374

转载 google protocol buffer -2-.proto 定义规则

message为主要关键字,类似于java中的class。定义简单message类型SearchRequest.proto定义了每个查询请求的消息格式,每个请求都会有查询关键词query,查询结果的页数,每页的结果数量这三个属性。于是 message SearchRequest{        required string query = 1;      

2015-09-20 11:44:30 1208

转载 Google Protocol Buffer 的使用和原理

作者:刘明来源:http://www.ibm.com/developerworks/cn/linux/l-cn-gpb/?ca=drs-tp4608  简介什么是 Google Protocol Buffer? 假如您在网上搜索,应该会得到类似这样的文字介绍:Google Protocol Buffer( 简称 Protobuf) 是 Google 公司

2015-09-20 11:43:35 991

转载 VS2012+LUA环境搭建

1 、启动VS2012,选择C++下的"win32"项目类型中的"Win2控制台应用程序"2、工具——选项——项目和解决方案——VC++目录——可执行程序(C:\Program Files\Lua\5.1);包含文件(C:\Program Files\Lua\5.1\include);库文件(C:\Program Files\Lua\5.1\lib);项目——'项目名'属性 子菜单——配置属性

2015-09-20 11:12:54 1230

转载 lua-vs开发环境配置

1.下载Lua库和其编译工具lua for window 下载地址:http://luaforwindows.luaforge.net/ 目前最常用的版本是5.1 ,点击下载 .安装完成后会有一个是lua的命令行程序(Lua),一个是SciTE编辑器(SciTE)。2.编辑插件 lua 自带sciTE这个编辑器,但是为了方便编写lua与c/cpp之间的互调而选用

2015-09-20 10:50:23 1274

转载 Lua中调用C函数

8

2015-09-19 12:10:15 1109

转载 C中调用Lua函数

我们先来看一个简单的例子:lua_State* L = NULL;// 内部调用lua函数double f(double x, double y){ double z; lua_getglobal(L, "f"); // 获取lua函数f lua_pushnumber(L, x); // 压入参数x和y lua_pushnumber(L,

2015-09-19 12:08:56 914

转载 为什么调用 lua_pcall

你应该是想说C和lua交互吧C和lua通过一个堆栈进行交互lua_pcall的用途就是执行堆栈里的函数先将lua里的函数压入堆栈然后再调用 lua_pcall就是c里的调用lua函数的函数 追问我不是这个意思,因为我看别人写的代码,c和lua交互,当加载一个lua脚本文件的时候调用了这么一个 iError = lua_pcall(L, 0, 0, 0);

2015-09-19 12:08:15 2936

转载 C 函数中调用Lua函数时,对于lua_pcall使用的困惑

最近在学习使用Lua,也通过基本的语法知识完成了公司的一个关于配置文件参数合法性检查的小任务。虽然任务完成了,但对于一些函数的调用目的还是搞不明白,这两天再次重看了Manual Reference,稍微梳理出了一点眉目,记录在此。首先看一段小小小程序//test.luafunction printmsg()print("hello world")end

2015-09-19 12:06:01 3525

转载 Redis学习手册(目录)

为什么自己当初要选择Redis作为数据存储解决方案中的一员呢?现在能想到的原因主要有三。其一,Redis不仅性能高效,而且完全免费。其二,是基于C/C++开发的服务器,这里应该有一定的感情因素吧。最后就是上手容易,操作简单。记得在刚刚接触Redis的时候,由于当时项目的工期相当紧张,留给我们做出选择的空间也是非常有限,一旦技术决策失误,造成的后果也比较严重。所以在做出决定之前,我不仅快速的浏览了R

2015-09-18 12:41:48 871

转载 Redis学习手册(实例代码)

在之前的博客中已经非常详细的介绍了Redis的各种操作命令、运行机制和服务器初始化参数配置。本篇博客是该系列博客中的最后一篇,在这里将给出基于Redis客户端组件访问并操作Redis服务器的代码示例。然而需要说明的是,由于Redis官方并未提供基于C接口的Windows平台客户端,因此下面的示例仅可运行于Linux/Unix平台。但是对于使用其它编程语言的开发者而言,如C#和Java,Redis则

2015-09-18 12:40:03 1124

转载 C++ 操作Redis 简单封装类

#include "stdafx.h"#include #include #include #include #include #include "../hiredis/hiredis.h"#pragma warning(disable: 4996)#pragma comment(lib, "ws2_32.lib")class Redis{public:     

2015-09-17 15:09:17 2129

转载 C++操作Redis数据库

今天,Mayuyu来学习如何用C++来操作redis数据库。通过hiredis.h接口来实现,目前只能在Linux环境使用。hiredis.h 的下载地址为: https://github.com/redis/hiredis主要包括如下四个方法1. redisContext* redisConnect(const char *ip, int port)该函数用来连接

2015-09-17 15:07:22 6041

转载 glog安装和使用方法

1、下载glog。http://code.google.com/p/google-glog/downloads/detail?name=glog-0.3.3.tar.gz2、安装glog。./configure --preifx=mypathmakemake install最终在mypath目录下会生成.a和.so两种类型li

2015-09-16 17:35:22 16308 1

原创 codeblocks 使用心得

Debian 7下安装CodeBlocks12.111. 安装编译器 Command代码  1. sudo apt-get install build-essential  (这个可以不选)2. 安装debug工具gdb Command代码  1. sudo apt-get install gdb  

2015-09-05 16:26:00 3132

转载 Lua和C++交互详细总结

Lua和C++交互详细总结转自:http://cn.cocos2d-x.org/tutorial/show?id=1474一、Lua堆栈要理解Lua和C++交互,首先要理解Lua堆栈。简单来说,Lua和C/C++语言通信的主要方法是一个无处不在的虚拟栈。栈的特点是先进后出。在Lua中,Lua堆栈就是一个struct,堆栈索引的方式可是是正数也可以是负数,区别是:正数

2015-09-01 12:23:50 1673

转载 大型网络游戏服务器的框架设计

服务器是用来处理高并发的请求,同时能够满足扩展的业务逻辑的需求,最重要的是满足三点:并发性,稳定性,扩展性。经历过两款上线游戏产品,见识到了游戏行业的杂乱无章,虽然和传统软件行业相比,少了那么些规范,但是对个人能力要求还真不比传统软件行业低。今天开始,陆续利用业余时间将自己设计的一个服务器的框架贴出来,也会包好一些基本的代码,也会用到一些开源库。从最基础的讲起,首先看看一个实时网络游戏服务

2015-08-15 15:20:29 2060

转载 Unity3D添加天空盒

添加天空盒 有两种方式 1 : 在当前相机上添加skybox 2 : 在当前场景上添加skybox上面的两种方式的结果是一样的   第一种方式的优势在于 如果 世界中有多个摄像机的话,切换摄像机 需要看不同的天空 就可以使用这种方式实现我们先来试试unity 给我们的提供的天空盒 吧 要使用 unity 当然要先导入天空资源包啦 导入方式 :

2015-06-06 11:17:58 4468

转载 skynet源码剖析02 socket-server下 具体实现

主要结构// socket_server_poll返回的socket消息类型#define SOCKET_DATA 0 // data 到来#define SOCKET_CLOSE 1 // close conn#define SOCKET_OPEN 2 // conn ok#define SOCKET_ACCEPT 3 // 被动连接建立 (Accept返回了连接的fd 但是未

2015-04-08 23:49:14 2445

转载 skynet-src下核心文件说明

------------------------------skynet-src下skynet核心文件说明------------------------------skynet核心就是消息调度rwlock.h   对读写锁的封装----------------------------------skynet_env.c   skynet环境配置 主要是获取和设置l

2015-04-08 23:48:17 985

转载 skynet消息队列源码分析

#include "skynet.h"#include "skynet_mq.h"#include "skynet_handle.h"#include#include#include#include#include#define DEFAULT_QUEUE_SIZE 64 //默认队列大小#define MAX_GLOBAL_MQ 0x10000 //6

2015-04-08 23:44:52 1688

转载 skynet定时器源码分析

#include "skynet.h"#include "skynet_timer.h"#include "skynet_mq.h"#include "skynet_server.h"#include "skynet_handle.h"#include#include#include#include#if defined(__APPLE__)#i

2015-04-08 23:42:06 2440

转载 skynet源码剖析06 service-src下的C服务实现文件说明

service-src这个目录下存放了skynet用到的c service的实现databuffer.hhashid.hservie_gate.c这3个文件时gate服务的实现 gate主要用于skynet与外部的tcp通讯 可以理解为将外部的tcp消息转换成skynet内部的消息所以像master harbor服务这些都需要以来gate与外界通信

2015-04-08 23:40:45 2221

转载 研究下skynet,云风大神的开源框架

转载于 http://no001.blog.51cto.com/1142339/1354154做游戏行业的大神众多。我是做应用server的,小打小闹,现在到处流行大数据,分布式。都是伪的。。做应用服务器开发的大神,没听说多。做webserver的一大堆电商。。只有做游戏服务器的比较多。基本上都是从做游戏架构等方面,学习开发应用server。skynet是云风用c和

2015-04-08 22:55:49 3386

原创 skynet任务调度分析

云风同学开源的skynet,当前规模是8K+ C代码和2K+ lua代码,实现了一个多线程高并发的在线游戏后台服务框架,提供定时器、并发调度、服务扩展框架、异步消息队列、命名服务等基础能力,支持lua脚本。单服务器支持10K+客户端接入和处理。     我个人比较关注高性能和并发调度这块,这两天分析了一下skynet的代码,简单总结一下。 1. 总体架构 

2015-04-08 22:53:18 3131

转载 网络游戏服务器构架设计(四):云风的轨迹

转载于 http://www.cnblogs.com/ychellboy/archive/2012/10/15/2723470.html 最近闲着没事把云风的《开发笔记》看了个遍,希望能从大牛的开发轨迹中得到一些启发。但可能是因为本人level太低,一遍看下来还是云里雾里,不甚明白。没办法只好再看一遍,希望能对他们的服务器端架构有个简单的认识,这里同时做些笔记。PS:本文是我个

2015-04-08 22:51:49 2768

转载 网络游戏服务器构架设计(三):刀剑Online - 总控服务器、场景服务器

转载于http://www.cnblogs.com/ychellboy/archive/2012/09/17/2675347.html 上一篇《网络游戏服务器构架设计(二)》介绍了刀剑Online的连接负载服务器CLS,博友提出质疑“说得不够详细,比如你怎么,场景服务器怎么才算一个场景服务器,场景服务器切换怎么处理不断线后连接另一个场景的,还有很多细节问题没有说到”,本篇就来介绍游戏服

2015-04-08 22:48:38 1710

转载 网络游戏服务器构架设计(二):刀剑Online - 连接负载服务器CLS

转载于 http://www.cnblogs.com/ychellboy/archive/2012/08/20/2648073.html 本文并没有涉及什么逆向工程,只是拜读刀剑Online服务器端主程的文章后[1],想结合自己的经验谈一谈。PS:由于题目范围太大,本系列的前言做了一些限制。 一、网络游戏服务器    要想设计好网络游戏服务器的构架,首先

2015-04-08 22:44:11 1685

转载 网络游戏服务器构架设计(一):前言

转载于http://www.cnblogs.com/ychellboy/archive/2012/08/14/2638847.html 这篇blog题目涉及的范围真大!以至于在这里需要先写一篇前言把范围缩小。选择写这样一个系列的文章,主要是想给工作了两年的自己一个交代,或者说是一个阶段性的总结。两年时间里,房价依然再涨,工资依然跑不赢CPI,某人依然在仰望星空。期间很多梦碎了,

2015-04-08 22:43:26 912

转载 Lua中的userdata

原文  http://www.jellythink.com/archives/587 话从这里说起在我发表《Lua中的类型与值》这篇文章时,就有读者给我留言了,说:你应该好好总结一下Lua中的function和userdata类型。现在是时候总结了。对于function,我在《Lua中的函数》这篇文章中进行了总结,而这篇文章将会对Lua中的userdata进行仔细的总结。对于文章,大家

2015-03-31 16:22:34 15573

转载 LUA的堆栈问题

学习LUA也有一些时日了,个人认为对于LUA中的栈的理解很重要,嗯,写个小文章(真的很小) 如果你看了LUA的文档,那么就应该很清楚LUA与C交互数据时都是用到LUA中所谓的stack。那么当我调用lua_open函数之后栈是什么样的呢?空的(luaopen_base等会往栈上加进一些东西)。那么至于如何操作栈上的数据,我想官方文档上已经说得很清楚了,不过最初我对于栈的顺序有一些迷糊,所以就说

2015-03-31 16:21:47 1223

转载 Cocos2d-x下Lua调用自定义C++类和函数的最佳实践

关于cocos2d-x下Lua调用C++的文档看了不少,但没有一篇真正把这事给讲明白了,我自己也是个初学者,摸索了半天,总结如下:cocos2d-x下Lua调用C++这事之所以看起来这么复杂、网上所有的文档都没讲清楚,是因为存在5个层面的知识点:1、在纯C环境下,把C函数注册进Lua环境,理解Lua和C之间可以互相调用的本质2、在cocos2d-x项目里,把纯C函数注册进Lua

2015-03-30 13:33:12 770

redis设计与实现(第二版) 带目录

《Redis设计与实现》全面而完整地讲解了Redis的内部机制与实现方式,对Redis的大多数单机功能以及所有多机功能的实现原理进行了介绍,展示了这些功能的核心数据结构以及关键的算法思想,图示丰富,描述清晰,并给出大量参考信息。通过阅读本书,读者可以快速、有效地了解Redis的内部构造以及运作机制,更好、更高效地使用Redis

2017-09-01

redis-3.0注释版源码

本项目是注释版的 Redis 3.0 源码, 原始代码来自: https://github.com/antirez/redis 。 这份注释是作者在创作新版《Redis 设计与实现》期间, 为了了解 Redis 的内部实现而制作的, 所有在书中有介绍的内容, 在源码中都进行了相应的注释。 在注释的过程中, 除了少量空格和空行方面的调整外, 没有对原始代码进行任何其他改动, 最大程度地保证了代码的“原汁原味”。 希望这份注释源码能给大家学习和了解 Redis 带来一点帮助

2017-09-01

空空如也

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

TA关注的人

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