
随记
小老鼠啊
erlang程序
展开
-
随记(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 · 334 阅读 · 0 评论 -
随记(17)场景AOI、游戏场景
1. 九宫格概念http://blog.chinaunix.net/uid-429659-id-5658868.html2.xxx1)xxx2)xxx原创 2019-05-09 11:02:11 · 828 阅读 · 0 评论 -
随机(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 · 367 阅读 · 0 评论 -
随记(15)网络编程
网络编程整理1. 精品:网络编程来源(必看)2. ISO七层模型、TCP/IP四层模型3. 短连接、长连接、websocket1. 精品:网络编程来源(必看)http://www.52im.net/thread-1095-1-1.html2. ISO七层模型、TCP/IP四层模型1)按照个人理解分为五层模型,分别是:应用层、传输层、网络层、链接层、实体层2)应用层即为用户可以看到的,程序...原创 2019-02-19 11:10:46 · 377 阅读 · 0 评论 -
随记(14)副本
一、副本系统1. 功能概述2. 协议参数//获取副本信息//挑战副本//挑战NPC//学习技能//获取离线游历信息//获取奇遇信息//回答问题//开始游历//结束游历//获取npc切磋次数//获取已学习的技能3. 数据结构 CREATE TABLE `mission` ( `id` INTEGER NOT NULL AUTO_INCREMENT COMM...原创 2019-01-23 15:16:16 · 189 阅读 · 0 评论 -
随记(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 · 495 阅读 · 0 评论 -
随记(11)创建角色(初始化)、添加经验
一、 角色创建(NickName, IsMale)(需要协议api,客户端调用,要抛异常)客户端向gate网关发送tcp连接,连接成功启动一个玩家进程玩家进程向login服务器请求token玩家进程向login服务器检验token,成功返回服务器id玩家进程向logic服务器发送登录请求,没有账号就创建一个账号(player表player_id),返回{Player_id, Nickna...原创 2019-01-08 20:20:45 · 490 阅读 · 0 评论 -
随记(10)静态缓存、动态缓存
静态缓存(1)(启动服务器时生成本地文件)在mod_codedb中添加方法,数据库表或者自定义列表 %%-------------------------------------------------------------------------------------------------------------- %% @doc %% 自定义列表,格式为:[{{Key},...原创 2019-01-08 19:41:06 · 474 阅读 · 0 评论 -
随记(12)背包系统、技能系统
最近半个月忙于新项目的开发,迟于一周更新博客,接下来打算把最近开发的新项目,开发系统的思路、优化和感悟系统地整理下来,方便以后查阅原创 2019-01-18 19:29:58 · 1288 阅读 · 0 评论 -
随记(9)分布式开发流程
以下部分内容仅针对当前所使用的分布式服务器架构,记录这些来巩固自己的理解,方便以后查阅一、杂记二、分布式开发流程(针对当前服务器架构)一、杂记进程可以相互连接,假设两个普通进程AB,A进程出于某种原因终止,就会向进程B发送一个错误信号,由于AB创建了连接,B又是普通进程,所以最后两个进程一起挂掉spawn创建的是普通进程,普通进程通过执行process_flag(trap_exit, tr...原创 2019-01-08 10:23:40 · 722 阅读 · 0 评论 -
随记(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 · 223 阅读 · 0 评论 -
随记(8)粘包的处理方式
路由解析中,关于数据包可能产生粘包的处理方式 解包 (数据包(可能有粘包)) -> <<包长:16/unsigned, 包内容:包长/binary,剩余包/binary>> = 数据包(可能粘包), <<ProId:16/unsigned, ActionId:16/unsigned,Arg/binary>&原创 2019-01-04 10:16:35 · 198 阅读 · 0 评论 -
随记(6)实用的函数命名规则、及注释格式
get //获得update //更新getInstance //获得实例upData //数据更新onRender //渲染init… //初始化…set… //设置/更改loadFile //装载文件add…by… //添加…moveDown //移动backup //备份...原创 2018-12-29 15:53:06 · 942 阅读 · 0 评论 -
随记(5)数据curd
一、select一般形式(表名、以这个字段为分表、查找指定条件的记录、可选条件空、返回当前满足的所有记录)game_db_data:select( player_effect, 1000000379, [{ #player_effect{ player_id = 1000000379, _ = '_' }, [], ['$_'] }]).条件放在...原创 2018-12-29 15:50:28 · 235 阅读 · 0 评论 -
随记(4)算法
一、查找最大值二、翻转列表三、插入排序四、冒泡排序五、快排原创 2018-12-29 15:44:56 · 190 阅读 · 0 评论 -
随记(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 · 396 阅读 · 0 评论 -
随记(2)socket套接字编程
一、简单版(接收一个连接,关闭监听)%%---------------------------------------------------------------------------------%% @doc %% 服务器%% @end%%-----------------------------------------------------------------------...原创 2018-12-29 15:25:47 · 284 阅读 · 1 评论 -
随记(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 · 271 阅读 · 0 评论