[返回] [最新] [最热门] [最高评价]

谈谈我们的游戏逻辑服务器实现(二)

原文链接:http://codemacro.com/2012/04/25/game-server-info-2/

上一篇谈了一些关键技术的实现方案。本篇描述一些遇到的问题。



在策划制作完了几个职业后(主要是技能制作),大概去年年底公司内部进行了一次混战测试。30个角色在一个场景进行混战,测试结果从技术上来说非常不理想。首先是客户端和服务器都巨卡无比。服务器CPU一直是满负载状态。而客户端
...

Kevin Lynx 2012-04-25 16:55 | 查看: 1493

使用erlang实现P2P磁力搜索(开源)

接上回对DHT网络的研究,我用erlang克隆了一个磁力搜索引擎。我这个实现包含了完整的功能,DHT网络的加入、infohash的接收、种子的获取、资源信息的索引、搜索。

如下图:

在我的笔记本上,我开启了100个DHT节点,大致均匀地分布在DHT网络里,资源索引速度大概在1小时一万个左右(包含重复资源)。

这个程序包含三大部分:

DHT实现,kdht,https://github.com
...

Kevin Lynx 2013-06-20 00:00 | 查看: 1911

使用Clang实现C语言编程规范检查

概述

Clang是LLVM编译器工具集的前端部分,也就是涵盖词法分析、语法语义分析的部分。而LLVM是Apple在Mac OS上用于替代GCC工具集的编译器软件集合。Clang支持类C语言的语言,例如C、C++、Objective C。Clang的与众不同在于其模块化的设计,使其不仅实现编译器前端部分,并且包装成库的形式提供给上层应用。使用Clang可以做诸如语法高亮、语法检查、编程规范检查方面
...

Kevin Lynx 2013-02-12 00:00 | 查看: 2517

c/c++中几种操作位的方法

参考How do you set, clear and toggle a single bit in C?

c/c++中对二进制位的操作包括设置某位为1、清除某位(置为0)、开关某位(toggling a bit)、检查某位是否为1等。这些操作较为常见并且可以作为其他位运算的基础接口,以下罗列几种方法:

传统方法

设置某位为1

number |= 1 << x; // 设置第x
...

Kevin Lynx 2012-09-04 19:49 | 查看: 1329

为什么处理排序的数组要比非排序的快?

参考Why is processing a sorted array faster than an unsorted array?

问题

看以下代码:

#include <algorithm>
#include <ctime>
#include <iostream>

int main()
{
// generate data
const
...

Kevin Lynx 2012-08-29 19:55 | 查看: 1540

开始记录编程方面的技巧

原文地址:http://codemacro.com/2012/07/18/start-to-write-tips/

回首上篇博客的发表时间,又2个月时间过去了。在我博客生涯的过去两三年里,总会有好几个月的时间没有编写任何文章。我觉得这真是一个不好的习惯。这个情况的产生,有很多原因。例如自己太懒、工作偶尔忙、自己偶尔处于混沌时期、自己偶尔怀疑人生,如是种种。但最大的原因还是,不敢写。

在刚出来工
...

Kevin Lynx 2012-07-18 17:52 | 查看: 1042

使用Github Page来写博客

原文链接http://codemacro.com/2012/04/20/blog-on-github/

最开始知道Github Page,是通过codertrace上的某些注册用户,他们的BLOG就建立在Github Page上,并且清一色的干净整洁(简陋),这看起来很酷。

Github提供了很多很合coder口味的东西,例如Gist,也包括这里提到的Page。Page并不是特用于建立博客的产
...

Kevin Lynx 2012-04-20 16:21 | 查看: 2279

poj 1005 I Think I Need a Houseboat 解题报告

这道题的大致意思:

  圆表示一块面积可扩展的区域,开始时,面积是0,在(0,0)处开始以每年50平方米的速度同样呈半圆扩展,输入一个正整数N,然后输入N对坐标,对于每一对坐标值:求出面积扩展到该点的年数,坐标值单位为米。

 理解意思后此题就水很多了。细心的话一次搞定~
 
#include <iostream>
#include <cstdio
...

C小加 2011-11-19 14:39 | 查看: 1553

MMO游戏对象属性设计

MMO游戏对象属性设计

Author:
Kevin Lynx

Date:
5.2.2011

一般的MMORPG中,游戏对象主要包括怪物和玩家。这两类对象在经过游戏性方面的不断“进化”后,其属性数量及与之相关的逻辑往往会变得很巨大。如何将这一块做得既不损失效率,又能保证结构的灵活、清晰、可维护?本文将提供一种简单的结构。

原始结构

最原始的结构,极有可能为这样:
...

Kevin Lynx 2011-05-02 19:19 | 查看: 2439

Kubernete APIServer Sample

kubernetes从apiserver中独立出来了一个项目:apiserver,可以基于这个库快速实现一个类似kubernetes apiserver的服务。

Generic library for building a Kubernetes aggregated API server.

如果直接阅读kubenetes的apiserver源码,会发现很多实现都位于这个项目中。kubenete
...

Kevin Lynx 2018-05-30 08:00 | 查看: 306

kubernetes网络相关总结

要理解kubernetes的网络模型涉及到的技术点比较多,网络上各个知识点讲得细的有很多,这里我就大概梳理下整个架构,方便顺着这个脉络深入。本文主要假设kubernetes使用docker+flannel实现。

整体上,了解kubernetes的网络模型,涉及到以下知识:

linux网络及网络基础

docker网络模型

kubernetes网络需求,及flannel网络实现

最后大家就可
...

Kevin Lynx 2018-04-01 08:00 | 查看: 597

使用Kubeadm在CentOS部署Kubernets 1.8.7

主要参考:

官方文档

如何在国内愉快的安装 Kubernetes

kubernetes 1.8.7 国内安装(kubeadm)

建议都大致浏览下。这里我也是简单地记录,估计每个人遇到的细节问题不一样。

环境准备

我拿到手的环境docker已经ready:

docker (alidocker-1.12.6.22)

CentOS 7

上面博客提到的一些系统设置可以先做掉:

1
2
...

Kevin Lynx 2018-03-08 00:00 | 查看: 587

...更多...