自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(69)
  • 资源 (2)
  • 收藏
  • 关注

原创 Gitlab安装注意事项

修改Gitlab内置的nginx端口(不修改的话,默认是80端口)vi/var/opt/gitlab/nginx/conf/gitlab-http.conf重启Gitlabgitlab-ctlrestart

2020-04-18 21:23:54 226

转载 REDIS如何开启多个库,而不是增加其实例

(转:)来自运维生存时间: http://www.ttlsa.com/html/4010.html一台服务器上都快开启200个redis实例了,看着就崩溃了。这么做无非就是想让不同类型的数据属于不同的应用程序而彼此分开。那么,redis有没有什么方法使不同的应用程序数据彼此分开同时又存储在相同的实例上呢?就相当于mysql数据库,不同的应用程序数据存储在不同的数据库下。re

2017-12-20 16:42:15 9243

转载 Jedis操作Redis--String类型

/** * String(字符串) * APPEND,BITCOUNT,BITOP,BITFIELD,DECR,DECRBY,GET,GETBIT,GETRANGE,GETSET,INCR,INCRBY,INCRBYFLOAT,MGET,MSET,MSETNX,PSETEX,SET,SETBIT,SETEX,SETNX,SETRANGE,STRLEN */public class

2017-11-25 22:54:52 460

转载 C语言 struct结构体的变量声明加冒号

有些信息在存储时,并不需要占用一个完整的字节,而只需占几个或一个二进制位。例如在存放一个开关量时,只有0和1两种状态,用一位二进位即可。为了节省存储空间,并使处理简便,C语言又提供了一种数据结构,称为“位域”或“位段”。所谓“位域”是把一个字节中的二进位划分为几个不同的区域,并说明每个区域的位数。每个域有一个域名,允许在程序中按域名进行操作。这样就可以把几个不同的对象用一个字节的二进制位域

2017-11-20 17:47:58 1213

转载 深入研究Netty框架之ByteBuf类继承结构

ByteBuf类继承关系图如下:ReferenceCounted:对象引用计数器,初始化ReferenceCounted对象时,引用数量refCnt为1,调用retain()可增加refCnt,release()用于减少refCnt。refCnt为1时,说明对象实际不可达,release()方法将立即调用deallocate()释放对象。如果refCnt为0,说明对象被错误的引用。在Abs

2017-09-18 17:54:05 1276

原创 LoginServer的网络层(一)

今天开始构建LoginServer的网络层。本架构中,目前只有LoginServer和AgentServer是面向客户端的,由Java书写,使用Netty框架。两个Server有些相同的问题要面对:相同的编码解码;客户端连接上来后,久不操作的处理;客户端断线的处理;因此,我首先建立了一个新的Project,名为“network2client”,将两个Server共用的代码写在这

2017-09-16 18:55:56 619

转载 Redis中删除过期Key的三种策略

项目中有个接口要频繁调用查询数据库中的数据,为了降低数据库的压力,所以把一部分记录先缓存在redis中,对redis中的数据设置了期限。今天无意间发现一个问题,使用dbsize查询出来的数量,比实际缓存量要高一部分。用redis-cli keys '*'|wc -l1获取到的数据和实际情况是一样的。如下面两图:   对比发现,redis中key的总量为286957,比数据库

2017-09-14 17:10:37 554

原创 策划配置表的读取

我之前坚持把Excel表格的读取放到单独的project中,真的是太正确了。现在项目采用分布式结构,有好几个Server以及机器人程序都需要读取这些文件,秒加!Good

2017-09-13 20:22:57 1110

原创 支援CCYY——2017.9.9

今天周六,下午4点后,脑子比较清楚,称号系统做的七七八八了,周一回来再补充一下,应该周二就能和客户端联调。

2017-09-09 19:11:49 625

原创 支援

大约是9月1日,公司派我临时支援一下CCYY项目,为期大约2个月。同时,调配原CCSY的一个C++服务器程序员到本项目组,支援我开发。现在,我的工作节奏就是,在本项目中动脑和嘴,在CCYY项目中动手写一两个功能。

2017-09-08 11:27:07 448

转载 Java多线程——线程怎么来的?

并发处理的广泛应用是使得amdahl定律代替摩尔定律成为计算机性能发展源动力的根本原因,是人类压榨计算机运算能力的最有力武器。并发并非一定得用多线程,多进程也可以,不过java里面谈论并发,大多数与线程脱不开关系。因此我们从线程说起。本文主要包含以下内容:线程的实现 线程的调度 线程状态切换线程的实现线程是比进程更轻量级的调度执行单位,在linux里面,线程和进程没有什

2017-09-07 09:51:18 239

转载 Java虚拟机-JVM各种参数配置大全详细

usr/local/jdk/bin/java -Dresin.home=/usr/local/resin -server -Xms1800M -Xmx1800M -Xmn300M -Xss512K -XX:PermSize=300M -XX:MaxPermSize=300M -XX:SurvivorRatio=8 -XX:MaxTenuringThreshold=5 -XX:GCTimeRatio

2017-09-05 14:24:44 573

转载 JVM调优:选择合适的GC collector

正文之前,先介绍一人:Jon Masamitsu。此人背景不详,不过他在SUN做的就是JVM,所以他的blog我认为是每一个想对JVM调优的人都应该读一读的。本文的很多观点和一些图也是取自他的blog。blog link:http://blogs.sun.com/jonthecollector/ 在他的一篇blog【1】中,写到了GC调优的最重要的三个选项:排在第三位的是young

2017-09-04 17:51:59 219

转载 深入分析IntHashMap

[-] 一IntHashMap   11 准备  12 IntHashMap类图  13 IntHashMap流程图 二IntHashMap与HashMap比较   21 运行效率比较   22 Visual GC比较   23 结果分析   24 差异一   25 差异二 一、IntHashMap   1.1 准备  先

2017-09-02 10:29:23 1382

原创 头像

我的工作电脑的登录界面的ICON默认是“彩笔”,我想了想,没有改,因为貌似自己现在确实比较“菜逼”,等哪天觉得自己不是了,再改

2017-08-22 22:22:58 194

原创 森雅S80停产

家中的第一台车是森雅S80,今天看到“汽车之家”APP中将其划为了停产车型,最新的一版车型为2015款。这车其实是很怪的,4.1米的车长,7座,其实是面包的小改款。前身是日本大发,这也就可以理解了。

2017-08-09 17:17:17 1722

转载 C++ 全局变量 静态全局变量 傻傻分不清

今天上午写C++代码,被神马全局变量和静态全局变量困住了,出现了各种“重定义”和“链接”相关的error。到底在哪里声明,在哪里定义,哪里使用extern?傻傻分不清~ 本来我想自己总结一下的,后来看到网上的总结太详细了,我就直接转载一下,以下文章转自网站“脚本之家”,看这篇文章还顺带复习编译原理呢~(1)编译单元(模块) 在VC或VS上编写完代码,点击编译按钮准备生成exe文件时,编

2017-08-01 17:11:54 264

转载 C++11 新的计时方法——std::chrono 大法好

计时有很多用途,比如:测试某一段代码的运行时间,时间越短,则性能相对越高。计时有很多方法,我将首先给出我以前常用的一种计时方法,然后给出我认为的最佳方法(采用了C++11的标准技术)。首先给出我以前常用的一种“传统”的计时方法:#include using namespace std;clock_t start = clock();// do something...cloc

2017-08-01 16:54:14 1570

转载 Life is short, use emplace_back()。探究一下C++11的push_back, move, rvalue, emplace_back

前言一直以来写代码,vector想都没想就是push_back,今天发现的C++11的emplace_back碾压了传统的push_back总结一句话:Life is short, use emplace_back()。简单叙述原因:emplace_back可以“同时构造和插入,一次搞定”,push_back需要“先构造,后插入,而且插入的时候还伴随着拷贝或者移动”。

2017-08-01 16:17:28 1022

转载 C++11 thread_local 关键词

前言在C++11多线程编程中,thread_local 这个关键词在一些特定场合挺有用的。什么是thread_local,关于thread_local。thread_specific_ptr代表了一个全局的变量,而在每个线程中都各自new一个线程本地的对象交给它进行管理,这样,各个线程就可以各自独立地访问这个全局变量的本地存储版本,线程之间就不会因为访问同一全局对象而引起资源竞

2017-08-01 15:34:37 710

转载 非阻塞同步算法与CAS(Compare and Swap)无锁算法

锁(lock)的代价锁是用来做并发最简单的方式,当然其代价也是最高的。内核态的锁的时候需要操作系统进行一次上下文切换,加锁、释放锁会导致比较多的上下文切换和调度延时,等待锁的线程会被挂起直至锁释放。在上下文切换的时候,cpu之前缓存的指令和数据都将失效,对性能有很大的损失。操作系统对多线程的锁进行判断就像两姐妹在为一个玩具在争吵,然后操作系统就是能决定他们谁能拿到玩具的父母,这是很慢的。用

2017-08-01 11:57:10 557

转载 通过Actor模型解决C++ 并发编程的一种思维 — Theron 库简述

愈发紧迫的挑战现今,单台机器拥有多个独立的计算单元已经太常见了,这点在服务器的处理器上表现尤为明显,据 AMD 的一张 2012-2013 服务器路线图显示,服务器处理器的核心数将在 2013 年达到 20 颗之多。合理的利用 CPU 资源已是一个不得不考虑的问题。不少 C++ 程序员依然使用着多线程模型,但是对多线程的掌控并不是一件容易的事情,开发中容易出错、难以调试。有些开发者为了避免

2017-07-31 14:51:04 1940

转载 用C++11的std::async代替线程的创建

原文地址:http://www.cnblogs.com/qicosmos/p/3534211.htmlc++11中增加了线程,使得我们可以非常方便的创建线程,它的基本用法是这样的:void f(int n);std::thread t(f, n + 1);t.join();  但是线程毕竟是属于比较低层次的东西,有时候使用有些不便,比如我希望获取线程函数的返

2017-07-25 18:39:05 324

原创 游戏的AOI算法

本文参考了一些Blog:http://blog.csdn.net/zhanghefu/article/details/25833535云风的Blog并进行整理而写。AOI(Area Of Interest),中文就是感兴趣区域。通俗一点说,感兴趣区域就是玩家在场景实时看到的区域;也就是AOI会随着英雄的移动改变而改变。游戏的AOI算法应该算作游戏的基础核心了,许多逻辑都

2017-07-21 19:15:58 1974

转载 十字链表的AOI算法实现

AOI主要有九宫格、灯塔和十字链表的算法实现。本文阐述十字链表的实现和尝试。1. 基本原理根据二维地图,将其分成x轴和y轴两个链表。如果是三维地图,则还需要维护多一个z轴的链表。将对象的坐标值按照大小相应的排列在相应的坐标轴上面。2. 基本接口对对象的操作主要有以下三个接口:add:对象进入地图;leave:对象离开地图;move:对象在地图内移动。2. 算

2017-07-20 16:09:37 1583

转载 MMORPG服务器架构

一.摘要1.网络游戏MMORPG整体服务器框架,包括早期,中期,当前的一些主流架构2.网络游戏网络层,包括网络协议,IO模型,网络框架,消息编码等。3.网络游戏的场景管理,AI,脚本的应用等。4.开源的网络服务器引擎5.参考书籍,博客二.关键词网络协议 网络IO 消息 广播 同步 CS TCP/UDP IP 集群 负载均衡 分布式 网关服务器

2017-07-20 15:24:02 735

转载 常用 Java 静态代码分析工具的分析与比较

简介      本文首先介绍了静态代码分析的基本概念及主要技术,随后分别介绍了4种现有的主流Java静态代码分析工具 (Checkstyle,FindBugs,PMD,Jtest),最后从功能、特性等方面对它们进行分析和比较,希望能够帮助Java软件开发人员了解静态代码分析工具,并选择合适的工具应用到软件开发中。 引言      在Java软件开发过程中

2017-07-19 20:28:28 283

转载 对寄存器ESP和EBP的一些理解

PS:EBP是当前函数的存取指针,即存储或者读取数时的指针基地址;ESP就是当前函数的栈顶指针。每一次发生函数的调用(主函数调用子函数)时,在被调用函数初始时,都会把当前函数(主函数)的EBP压栈,以便从子函数返回到主函数时可以获取EBP。下面是按调用约定__stdcall 调用函数test(int p1,int p2)的汇编代码假设执行函数前堆栈指针ESP为0xAAAAAAA ;

2017-07-18 16:04:14 590

原创 Eclipse历代版本

Eclipse是日食的意思(是不是针对Sun公司呢?)Eclipse最初是由IBM公司开发的替代商业软件Visual Age for Java的下一代IDE开发环境,2001年11月贡献给开源社区,现在它由非营利软件供应商联盟Eclipse基金会(Eclipse Foundation)管理。2001年11月7日 ,Eclipse 1.0发布。半年之后,2002年6月27日E

2017-07-12 10:50:44 967

转载 Java并发编程:深入剖析ThreadLocal

Java并发编程:深入剖析ThreadLocal  想必很多朋友对ThreadLocal并不陌生,今天我们就来一起探讨下ThreadLocal的使用方法和实现原理。首先,本文先谈一下对ThreadLocal的理解,然后根据ThreadLocal类的源码分析了其实现原理和使用需要注意的地方,最后给出了两个应用场景。  以下是本文目录大纲:  一.对ThreadLocal的理解

2017-07-07 14:43:48 248

原创 项目启动,时间规划

今天,项目经理HZ同学着急主美、前后端主程开了个会,制定了大致的项目计划时间表。由于本项目是和腾讯对接的,所以会严格遵守腾讯的GR流程。GR1&GR2合并阶段,2017-7-6到2017-10-31。前端完成3D大场景编辑器、寻路、美术工作流、状态机;后端完成架构搭建、登陆、行走、寻路、切换场景。GR3阶段,2017-11-1到2018-2-15。完成2个职业的战斗、任务系统。GR4阶

2017-07-06 19:14:02 693

转载 lua 5.3开发调试环境搭建

版权声明:博客地址:blog.csdn.net/x356982611,未经允许不得转载。目录(?)[+]简介5.1 以后就没有很好的lua IDE可用了,luastudio不错但是小贵,发现有位仁兄写了个 visual studio code的lua调试插件,试了一下还不错 插件源码环境搭建去微软官方下载vscode 软件下载地址

2017-06-27 18:18:08 559

原创 服务端架构设计中的语言选择

由于TD项目对战斗中延迟的严格要求,所以负责场景各实体交互、移动、战斗的MapServer必然用非虚拟机语言写,那基本就是C++了。而且有大芒果魔兽SF的代码可以参考。对于其他业务逻辑服,我希望结构清晰、便于调试、能够动态更新代码,同时不能太慢。首先,JAVA其实是个不错的选择:优点:Eclipse等编译器可以远程调试Windows、Linux上的JAVA程序;优点:JAVA代

2017-06-27 11:13:56 1500

原创 职业生涯的转折

2017-6-15那天,我和CM聊了一下,本想聊聊1.本项目的主策的问题;2.正要开始的TD项目的服务端技术选型问题(C++ or JAVA),秀一波技术流;没想到,老大一开口就邀请我去做TD的服务端主程。有句话怎么说来着,no zuo no die哈。经过三天慎重的考虑,我最终决定放弃现在“项目经理”的位置,答应老大的要求。原因如下:1.在本公司,做纯“项目经理”没有晋升空间,而

2017-06-22 22:13:11 273

转载 Linux各发行版本优缺点简介 点评时间:2015-03-12

Linux最早由Linus Benedict Torvalds在1991年开始编写。在这之前,Richard Stallman创建了Free Software Foundation(FSF)组织以及GNU项目,并不断的编写创建GNU程序(此类程序的许可方式均为GPL: General Public License)。在不断的有杰出的程序员和开发者加入到GNU组织中后,便造就了今天我们所看到的L

2017-06-21 16:32:10 415

转载 快速解读GC日志

本文是 Plumbr 发行的 Java垃圾收集指南 的部分内容。文中将介绍GC日志的输出格式, 以及如何解读GC日志, 从中提取有用的信息。我们通过 -XX:+UseSerialGC 选项,指定JVM使用串行垃圾收集器, 并使用下面的启动参数让 JVM 打印出详细的GC日志:-XX:+PrintGCDetails-XX:+PrintGCDateStamps-XX:+PrintGCTim

2017-06-19 22:03:31 245

转载 《守望先锋》架构设计与网络同步 -- GDC2017 精品分享实录

Overwatch Gameplay Architecture and NetcodeTimothy FordLead Gameplay EngineerBlizzard Entertainment翻译:kevinan 在GDC2017【Overwatch Gameplay Architecture andNetcode 】的分享会上,来自暴雪的Tim Ford介绍了《守望

2017-06-19 20:43:07 14662

原创 浮空、击飞动作方案《ccsy》

早在去年9月份,我发现角色浮空下落时,会落到半空,停顿一会儿,然后突然出现在地上。将这个问题改好,动作正常播放,才能证明这样的设计方案是正确的,才能批量发美术动作需求。由于负责做战斗功能的程序比较忙,忙着做LS给的一些需求,所以我先跟他说了一下,但被他驳回。他认为机制没问题,就这么做。后来今年1月份我又提过一次,又被驳回。结果今年6月6日,我直接找程序查这个问题,验证了这是bug,美术所有的浮空上

2017-06-06 16:10:21 1643

原创 2011年时我的自评

从小学到高中的我,是个学习上的佼佼者,小学6次升学考试5次全班第一,初中一直是全班第一,高中高考时是全校第一。大二时迷上了网络游戏“传奇三”后来总共花在网游中的时间,按每天8小时算,有传奇三1.5年,天骄二4个月,梦幻西游8个月,奇迹MU 2个月,完美国际8个月,魔兽世界2个月,总计三年半,同时也因此大学延期一年毕业。对于数值和游戏系统策划,我有着自己的理解,不客气的说可以做小项目的主策。

2015-12-05 21:16:20 392

原创 足球联赛赛程算法

我们项目要做一个类似联赛的功能,就需要联赛的赛程分组算法,上网搜了一下,找到了如下算法。比如,输入六个球队:1、2、3、4、5、6,一共要打30场。 1234561 12131415162

2013-04-01 21:28:58 5129

windowsAPI函数

windows API 函数挺详细的,有一定的实用价值,希望对大家有用

2009-12-18

C++标准函数库(html)

html格式 速查手册 包含标准库及STL

2009-12-07

空空如也

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

TA关注的人

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