自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(21)
  • 收藏
  • 关注

原创 随记(18)杂

1)to_list的方法to_list(Msg) when is_list(Ms) -> Msg; to_list(Msg) when is_atom(Ms) -> atom_to_list(Msg); to_list(Msg) when is_binary(Ms) -> binary_to_list(Msg); to_list(Msg) when is_integer(Ms)...

2019-09-02 14:35:57 259

原创 随记(17)场景AOI、游戏场景

1. 九宫格概念 http://blog.chinaunix.net/uid-429659-id-5658868.html 2.xxx 1)xxx 2)xxx

2019-05-09 11:02:11 817

原创 随机(16)单节点架构

1. 脚本创建数据库表:updata.bat,按照changes的php脚本更新数据库结构 2.工具生成服务端代码:tool.bat, 生成路由、映射数据库 1)根据协议生成路由文件:router_lib.erl/router_encode.erl/router_decode.erl/ 2)根据数据库生成数据库映射文件:database.hrl包含了数据库表结构(recordpk_player表...

2019-02-20 18:20:47 356

原创 随记(15)网络编程

网络编程整理1. 精品:网络编程来源(必看)2. ISO七层模型、TCP/IP四层模型3. 短连接、长连接、websocket 1. 精品:网络编程来源(必看) http://www.52im.net/thread-1095-1-1.html 2. ISO七层模型、TCP/IP四层模型 1)按照个人理解分为五层模型,分别是:应用层、传输层、网络层、链接层、实体层 2)应用层即为用户可以看到的,程序...

2019-02-19 11:10:46 364

原创 随记(14)副本

一、副本系统 1. 功能概述 2. 协议参数 //获取副本信息 //挑战副本 //挑战NPC //学习技能 //获取离线游历信息 //获取奇遇信息 //回答问题 //开始游历 //结束游历 //获取npc切磋次数 //获取已学习的技能 3. 数据结构 CREATE TABLE `mission` ( `id` INTEGER NOT NULL AUTO_INCREMENT COMM...

2019-01-23 15:16:16 181

原创 随记(13)ETS详解-未

一、 ets内存表中,数据库载入的表以t_开头,自己创建的就不以t_开头,observer:start() 数据库用户数据载入内存ets的用database:read(#pk_player_data) 创建的ets表可以在一个节点(服务器)的不同进程之间共享访问 ets:new(person, [set, public, named_table, {write_concurrency, true...

2019-01-22 20:23:43 484

原创 随记(12)背包系统、技能系统

最近半个月忙于新项目的开发,迟于一周更新博客,接下来打算把最近开发的新项目,开发系统的思路、优化和感悟系统地整理下来,方便以后查阅

2019-01-18 19:29:58 1262

原创 随记(11)创建角色(初始化)、添加经验

一、 角色创建(NickName, IsMale)(需要协议api,客户端调用,要抛异常) 客户端向gate网关发送tcp连接,连接成功启动一个玩家进程 玩家进程向login服务器请求token 玩家进程向login服务器检验token,成功返回服务器id 玩家进程向logic服务器发送登录请求,没有账号就创建一个账号(player表player_id),返回{Player_id, Nickna...

2019-01-08 20:20:45 479

原创 随记(10)静态缓存、动态缓存

静态缓存(1)(启动服务器时生成本地文件) 在mod_codedb中添加方法,数据库表或者自定义列表 %%-------------------------------------------------------------------------------------------------------------- %% @doc %% 自定义列表,格式为:[{{Key},...

2019-01-08 19:41:06 465

原创 随记(9)分布式开发流程

以下部分内容仅针对当前所使用的分布式服务器架构,记录这些来巩固自己的理解,方便以后查阅一、杂记二、分布式开发流程(针对当前服务器架构) 一、杂记 进程可以相互连接,假设两个普通进程AB,A进程出于某种原因终止,就会向进程B发送一个错误信号,由于AB创建了连接,B又是普通进程,所以最后两个进程一起挂掉 spawn创建的是普通进程,普通进程通过执行process_flag(trap_exit, tr...

2019-01-08 10:23:40 710

原创 随记(8)粘包的处理方式

路由解析中,关于数据包可能产生粘包的处理方式 解包 (数据包(可能有粘包)) -> <<包长:16/unsigned, 包内容:包长/binary,剩余包/binary>> = 数据包(可能粘包), <<ProId:16/unsigned, ActionId:16/unsigned,Arg/binary>&amp

2019-01-04 10:16:35 194

原创 随记(7)InnoDB和Mysiam引擎的区别与应用场景

区别: (1)事务处理: MyISAM是非事务安全型的,而InnoDB是事务安全型的(支持事务处理等高级处理); (2)锁机制不同: MyISAM是表级锁,而InnoDB是行级锁; (3)select ,update ,insert ,delete 操作: MyISAM:如果执行大量的SELECT,MyISAM是更好的选择 InnoDB:如果你的数据执行大量的INSERT或UPDATE,出于性能...

2019-01-01 20:18:43 218

原创 随记(6)实用的函数命名规则、及注释格式

get //获得 update //更新 getInstance //获得实例 upData //数据更新 onRender //渲染 init… //初始化… set… //设置/更改 loadFile //装载文件 add…by… //添加… moveDown //移动 backup //备份 ...

2018-12-29 15:53:06 931

原创 随记(5)数据curd

一、select 一般形式(表名、以这个字段为分表、查找指定条件的记录、可选条件空、返回当前满足的所有记录) game_db_data:select( player_effect, 1000000379, [{ #player_effect{ player_id = 1000000379, _ = '_' }, [], ['$_'] }] ). 条件放在...

2018-12-29 15:50:28 227

原创 随记(4)算法

一、查找最大值 二、翻转列表 三、插入排序 四、冒泡排序 五、快排

2018-12-29 15:44:56 183

原创 随记(3)排行榜功能-未

一、通过记录实现 %% 首部 -module(rank). -behaviour(gen_server). -export([ start_link/0, get_count/2, stop/0]). -export([init/1, handle_call/3, handle_cast/2, handle_info/2, terminate/2, code_change/3])...

2018-12-29 15:28:47 387

原创 随记(2)socket套接字编程

一、简单版(接收一个连接,关闭监听) %%--------------------------------------------------------------------------------- %% @doc %% 服务器 %% @end %%-----------------------------------------------------------------------...

2018-12-29 15:25:47 276 1

原创 随记(1)常用函数

这部分是之前刚接触erlang时记录的基础内容,存档在pc中,现在整理到博客一、常用函数二、函数大全 一、常用函数 lists:map返回列表-----执行返回结果,组成列表 lists:map(fun(X)->[X,X] end, [a,b,c]). 结果:[[a,a],[b,b],[c,c]] lists:filte返回列表-----挑选符合的,组成列表 lists:filter...

2018-12-29 15:15:06 322

原创 erlang面试经(2)

面试经(2)一、OTP相关二、定时器三、运算符四、算法五、Erlang有哪些运算符六、请写出Erlang条件表达式、循环七、如何匹配binary(二进制位也就是字节,默认的话是比特位)从第三字节开始的八、请举例替换二进制字符串中的指定字符串九、怎么使用Erlang语言实现Key和Value的存储十、跨进程通信、跨节点(服务器)通信方式有哪些十一、请简述一下服务器上线出问题处理的流程十二、有哪些调试...

2018-12-29 15:00:42 2863

原创 erlang面试经(1)

下面的内容一部分来自于网上,一部分来自于自己,都是对经常遇到的知识点的总结,初学erlang,若有错误可指出,望键下留情~一、进程二、erlang数据读写分离(以及数据持久化)功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可...

2018-12-29 11:31:22 3075 1

原创 第一篇博客

erlang的优点 1)高并发 2)可容错 3)上手快 4)天生分布式 5)完善的opt库 6)开发速度快,成本低 erlang的缺点 1)编译完,执行速度较慢 2)函数式编程,语法比较特别,学习渠道比较少,社区不完善 综上,较低的成本低就可以开发出高并发可容错的应用,所以目前许多中小型游戏创业公司还是保留对erlang的偏好 现将之前的学习笔记、以及一系列面试相关的资料整理...

2018-12-29 10:21:26 201

空空如也

空空如也

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

TA关注的人

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