自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

开心

希望每天能看到自己一点点的成长!

  • 博客(165)
  • 资源 (15)
  • 收藏
  • 关注

转载 初识 GO

导读:2007年,受够了C++煎熬的Google首席软件工程师Rob Pike纠集Robert Griesemer和Ken Thompson两位牛人,决定创造一种新语言来取代C++,这就是Golang。出现在21世纪的GO语言,虽然不能如愿对C++取而代之,但是其近C的执行性能和近解析型语言的开发效率以及近乎于完美的编译速度,已经风靡全球。特别是在云项目中,大部分都使用了Golang来开发,不得不...

2018-09-20 10:45:03 336 1

原创 MySQL 优化查询

1、应尽量避免在 where 子句中使用!=或<>操作符,否则将引擎放弃使用索引而进行全表扫描。2、对查询进行优化,应尽量避免全表扫描,首先应考虑在 where 及 order by 涉及的列上建立索引。3、应尽量避免在 where 子句中对字段进行 null 值判断,否则将导致引擎放弃使用索引而进行全表扫描。如:select id from t where num is ...

2018-08-01 14:22:18 322

原创 Twitter-Snowflake,64位自增ID算法详解

Twitter-Snowflake算法产生的背景相当简单,为了满足Twitter每秒上万条消息的请求,每条消息都必须分配一条唯一的id,这些id还需要一些大致的顺序(方便客户端排序),并且在分布式系统中不同机器产生的id必须不同。Snowflake算法核心把时间戳,工作机器id,序列号组合在一起。  除了最高位bit标记为不可用以外,其余三组bit占位均可浮动,看具体的业务需求而定。默认情况下41...

2018-03-16 15:10:35 723

原创 C# 反射

一、概念:1、反射机制是一种运行时获取类(Type对象)和动态调用对象的成员的机制。a.可以获取有关已加载的程序集和在其中定义的类型(如类、接口和值类型)的成员信息;b.可以使用反射在运行时创建指定类的对象,以及调用和访问这些对象的成员。这种动态获取的信息以及动态调用对象的方法的功能称为反射机制。 2、C#编译原理:(1)C#生成exe文件后,放在bin目录

2017-11-02 13:23:40 482

转载 负载均衡

什么是负载均衡负载均衡(Load Balance)是分布式系统架构设计中必须考虑的因素之一,它通常是指将请求/数据【均匀】分摊到多个操作单元上执行,负载均衡的关键在于【均匀】。常见的负载均衡方案常见互联网分布式架构如上,分为客户端层、反向代理nginx层、站点层、服务层、数据层。可以看到,每一个下游都有多个上游调用,只需要做到,每一个上游都均匀访问每一个下游,就能实

2017-10-12 10:46:29 385

转载 单点系统架构的优化

一、需求缘起明明架构要求高可用,为何系统中还会存在单点?回答:单点master的设计,会大大简化系统设计,何况有时候避免不了单点在哪些场景中会存在单点?先来看一下一个典型互联网高可用架构。典型互联网高可用架构:(1)客户端层,这一层是浏览器或者APP,第一步先访问DNS-server,由域名拿到nginx的外网IP(2)负载均衡层,ngi

2017-10-12 10:40:55 1534

原创 mongo 脚本整理

1 修改某列名称 db.playerMgr.update({},{$rename:{"id":"playerId"}},false,true)2 删除某列db.players.update({},{$unset:{'stage':''}},false,true)

2017-09-23 16:56:40 977

原创 2017 原创整理 lua面试题

1、Lua中有8个基本类型分别为nil、boolean、number、string、userdata、function、thread和table。 2、给出下面 表达式的输出是什么print(type("Hello world"))        --> stringprint(type(10.4*3))             --> numberprint(type(p

2017-09-18 10:55:17 15896

转载 ZMQ和MessagePack的简单使用

近段日子在做一个比较复杂的项目,其中用到了开源软件ZMQ和MessagePack。ZMQ对底层网络通信进行了封装,是一个消息处理队列库, 使用起来非常方便。MessagePack是一个基于二进制的对象序列化类库,具有跨语言的特性,同样非常容易使用。在我做的项目中,消息类通过 MessagePack进行压包,然后写入ZMQ的消息结构体,通过ZMQ传递,最后接收者利用MessagePack进行解包,从

2017-09-14 20:19:32 916 1

原创 mongodb常用命令脚本化-自动化运维

mongodb常用命令脚本化-自动化运维把一些运维中常用到的mongodb命令写成shell脚本,极大的方便了维护1 设置副本集#!/bin/bash#mongodb 进入client 并use admincd /usr/mongodb/binMongoDB='./mongo 192.168.1.7:37017'$MongoDB use admin

2017-09-04 10:07:08 667

原创 游戏服务器架构图

1:ARPG类型游戏2:MMORPG3:MOBA4:卡牌类5:棋盘类

2017-08-24 10:52:06 4721 4

原创 王者荣耀的帧同步机智

这是王者荣耀技术分析系列第二篇,有兴趣请持续关注。1、像《王者荣耀》一样红过2、从《王者荣耀》来聊聊游戏的帧同步3、游戏服务器的架构演进农药自从上线以来,依靠着强大的产品力以及腾讯的运营能力,在游戏市场上表现可谓是风生水起,根据第三方的调研数据显示,《王者荣耀》渗透率达到22.3%,用户规模达到2.01亿人,每日的日活跃用户(DAU)均值为5412.8万

2017-07-05 17:25:51 8036 1

原创 Thrift server端的几种工作模式分析

Thrift服务器端几种工作模式分析与总结Thrift为服务器端提供了多种工作模式,本文中将涉及以下5中工作模式:TSimpleServer、TNonblockingServer、THsHaServer、TThreadPoolServer、TThreadedSelectorServer,这5中工作模式的详细工作原理如下:1.      TSimpleServer模式TSim

2017-06-29 15:11:57 412

原创 ZeroMQ

1  ZeroMQ概述ZeroMQ是一种基于消息队列的多线程网络库,其对套接字类型、连接处理、帧、甚至路由的底层细节进行抽象,提供跨越多种传输协议的套接字。ZeroMQ是网络通信中新的一层,介于应用层和传输层之间(按照TCP/IP划分),其是一个可伸缩层,可并行运行,分散在分布式系统间。2  系统架构2.1总体架构ZeroMQ几乎所有的I/O操作都是异步的,主线程不

2017-06-13 16:08:18 23485

原创 Nlog配置实例 彩色Console target

<nlog xmlns="http://www.nlog-project.org/schemas/NLog.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <target name="coloredConsole" xsi:type="ColoredConsole" useDefaultR

2017-03-14 16:35:58 4352

原创 c#实现的LRU算法

using System.Collections.Generic;using System.Threading;namespace Lru{ public class LRUCache { const int DEFAULT_CAPACITY = 255; int _capacity; ReaderWriterLockSli

2017-02-17 17:13:28 2496 1

原创 windows 平台 mongo 主从配置

sc create MongoDB binPath= "\"I:\mongodb\mongodb-win32-x86_64-3.0.6\bin\mongod.exe\" --service --config=\"D:\Mongodb\mongo.cfg\"" DisplayName= "MongoDB" start= "auto"sc create MongodbSlave binPat

2017-02-14 11:23:53 996

转载 游戏服务端究竟解决了什么问题?

转自:点击打开链接1.写在前面既然是游戏服务端程序员,那博客里至少还是得有一篇跟游戏服务端有关的文章,今天文章主题就关于游戏服务端。写这篇博客之前也挺纠结的,一方面是因为游戏服务端其实不论架构上还是具体一些逻辑模块的构建,都属于非常成熟的技术,举个简单的例子,像端游的多zone/scene/game进程+单全局进程架构,网上随便一搜能搜出来几十篇内容差不多的。另一方面是因为中国特色

2016-12-27 14:16:22 1922 2

转载 游戏服务器优化

网络游戏服务器注意事项,优化措施1:IO操作是最大的性能消耗点,注意优化余地很大。2:算法数据结构。排序寻路算法的优化。list,vector,hashmap的选择。大数据寻址,不要考虑遍历,注意考虑hash.3:内存管理。重载new/delete,内存池,对象池的处理。4:数据的提前准备和即时计算。5:CPU方面的统计监视。逻辑帧计数(应当50ms以内)。6:预分配池减少

2016-12-27 11:29:29 1968

转载 游戏服务器 数据同步方案

游戏数据同步方案     首先我们介绍实时对战手游中最难解决的技术问题——弱网络下的数据同步问题。  通过对玩家的游戏数据进行观察,发现玩家的游戏环境存在很大差异,不同玩家会使用不同的2G/3G/4G/Wifi网络,不同网络之间的延迟相差很大。另外移动网络质量不稳定,且都是按流量收费,这些都是需要考虑的问题。手机在网络间的切换,又会造成底层网络断线、地址变化等问题,都是常见

2016-12-26 15:26:59 10709

转载 redis简单应用

redis简单应用启动和结束--启动redis服务E:\redis>redis-server.exe redis.windows.conf--结束redis服务127.0.0.1:6379> shutdownnot connected>3、修改配置文件的两种方式3.1、运行中使用config set命令修改--连接redis,-h ip> -a pwd>

2016-08-10 09:35:40 3533

原创 mongoVUE的增删改查操作使用说明

1、 精确查询 1)右键点击集合名,再左键点击Find 或者直接点击工具栏上的Find 2)查询界面,包括四个区域 {Find}区,查询条件格式{"sendId":"000101"}表示查询sendId=000101的记录,(注:mongodb区分大小写,写成{"sendid":"000101"}会查询不到)查询条件包含and时,格式为:{"sendId":

2016-05-13 16:34:15 13804 4

转载 Nlog 配置总结

Writes log messages to one or more files.Since NLog 4.3 the ${basedir} isn't needed anymore for relative paths.Supported in .NET, Silverlight, Compact Framework and Mono.Configuration Sy

2016-04-05 10:43:35 7239

原创 Python 将Excel转为Xml

python Excel xml

2016-03-18 20:04:26 7325

原创 Redis 主从复制

一、Redis的Replication:    这里首先需要说明的是,在Redis中配置Master-Slave模式真是太简单了。相信在阅读完这篇Blog之后你也可以轻松做到。这里我们还是先列出一些理论性的知识,后面给出实际操作的案例。    下面的列表清楚的解释了Redis Replication的特点和优势。    1). 同一个Master可以同步多个Slaves。  

2016-03-01 17:27:00 344

原创 Redis : ServiceStack.Redis之IRedisClient

事实上,IRedisClient里面的很多方法,其实就是Redis的命令名。只要对Redis的命令熟悉一点就能够非常快速地理解和掌握这些方法,趁着现在对Redis不是特别了解,我也对着命令来了解一下这些方法。一、属性  IRedisClient的属性如下:属性说明ConnectTimeout 连接超时Db当前数据库的ID或下标

2016-03-01 17:06:08 1028

原创 redis 五种数据类型的使用场景

1.String常用命令:除了get、set、incr、decr mget等操作外,Redis还提供了下面一些操作:获取字符串长度往字符串append内容设置和获取字符串的某一段内容设置及获取字符串的某一位(bit)批量设置一系列字符串的内容应用场景:String是最常用的一种数据类型,普通的key/value存储都可以归为此类,value其实不仅是Stri

2016-03-01 14:05:21 507

原创 NetMQ 测试用例

近期研究了一下NetMQ,设想把他用在分布式爬虫上面,NetMQ是一个封装了Socket队列的开源库,他是ZeroMQ的.net移植版,而ZeroMQ是用C写成的,有人测试过他的性能,几乎可以秒杀其他所有的MQ(MSMQ,RabitMQ等等,都不是他的对手),不过他也有一个弱点,消息不支持持久化!当然,这个功能可以自己实现,我这里只讲性能,不需要持久化下面的例子是我基于NetMQ官网的例子

2016-01-22 20:51:25 2757

原创 Redis和 NetMQ对比

Redis是一个高速缓存K-V数据库,而NetMQ是ZeroMQ的C#实现版本,两者是完全不同的东西。最近做游戏服务器的时候想到,如果选择一个组件来做服务器间通信的话,ZeroMQ绝对是一个不错的选择,而我们的服务器是用C#的开发的,就这样,找到了NetMQ。NetMQ上手很简单。总结一下大致如下几个步骤:NuGet安装类库引用创建NetMQContext根据需要的通讯模型

2016-01-22 20:34:24 1345

原创 C#高效编程改善C#程序的50种方法 读书笔记

第一部分:C#的语言元素  一、用属性代替可访问的字段  1、.NET数据绑定只支持对属性的数据绑定,而不支持公有数据成员;  2、在属性的get和set访问器中可使用lock添加多线程的支持。  二、用readonly(运行时常量)而不是const(编译时常量)  1、const只可用于基元类型、枚举、字符串,而readonly则可以是任何的类型;  2、const在编译

2016-01-22 15:13:08 2911 1

转载 服务器 开发技术详解

版权声明:本文为博主原创文章,未经博主允许不得转载。欢迎转载,转载请注明原文地址:http://blog.csdn.net/majianfei1023/article/details/46716073从事游戏服务器开发差不多两年时间,两年间参与了不少项目,学到了很多游戏服务器开发技术,参与过几个不同架构的服务器开发,就随便聊聊游戏服务器开发需要的技术。(以下所指游戏

2016-01-22 11:56:38 1584

转载 全球同服 游戏服务器架构设计

著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。作者:马剑飞链接:https://www.zhihu.com/question/31103751/answer/64631116来源:知乎首先,游戏服务器是IO密集型服务器,它的主要瓶颈在网络IO,而不是CPU,这点要记住了。所以经常服务器问题都会出现在网络IO,带宽,数据库磁盘读写上面,而非CPU上面。

2016-01-22 11:46:58 13143 1

原创 unity 更换鼠标图标 脚本

#pragma strictvar myCursor : Texture2D;var myClickCursor : Texture2D;var nextpagecur: Texture2D;var lastpagecur: Texture2D;var cursorWidth : float;var cursorHeight : float;var now:Texture2D

2016-01-20 15:19:35 1894

原创 window 守护进程

这个脚本提供两种方式守护,一种是通过进程名,但对于进程名都是java.exe的java程序不适用,另一种是通过netstat查找应用程序所监听的端口是否正在被监听。这两种方式可以在脚本中通过两个冒号注释来选择切换。下面是设置成通过端口来守护的,当端口没被监听则打开一个zip文件,所以运行后会发现没过5秒会重复打开这个zip文件,除非这个zip文件打开后会自动监听8080端口,那当然是不可能的!脚本

2016-01-09 11:01:22 1809

原创 C#集合总结

2015-07-23 13:46:55 947

原创 加班是什么,可以吃吗?

打从我上小学开始,凡事时间表或议程以外的事务,我都很抗拒,就如学校下课后,学校给我补课一样,在我还是学生的时候,为了抗议学校这种恶势力的「加」课行为,我都不出席表示抗议,在老师眼里,我是个坏学生。因为有一个大原则,补课的东西,我已经会了,既然懂了为何还要补!没错就是这个大原则。瞬间逃离了传统封建思维的教育制度,我彷彿能够感应到自由社会给我的空间感,在踏入「上班」这个行列之前,我都是这样想的。别以为「

2015-07-06 16:36:03 660

原创 MongoDB官方C#驱动中查询条件Query用法

Query.All("name", "a", "b");//通过多个元素来匹配数组  Query.And(Query.EQ("name", "a"), Query.EQ("title", "t"));//同时满足多个条件  Query.EQ("name", "a");//等于  Query.Exists("type", true);//判断键值是否存在  Query

2015-05-23 17:57:01 5124

原创 NGUI 制作超链接

1、添加Lable 菜单NGUI-create-lable2、在Lable的Inspector中 设置 Text :[url=http://www.baidu.com/][u]Open then baidu[/u][/url]3、为Lable 添加Box Collider组件 勾选 Is trigger4、为Lable添加OpenURLOnClick 脚本   脚本在NGUI自带

2015-05-21 11:05:43 4824

原创 NetworkSocket C# 网络通讯 组件

本项目已迁移到 https://github.com/xljiulang/NetworkSocket这是.net4.0下一个高性能、高可扩展性的Tcp异步通讯组件,内部基于SocketAsyncEventArgs封装,发送和接收完全分离,用户可基于底层的NetworkSocket.dll实现某种协议的高效服务器和客户端,也可以直接使用NetworkSocket.Fast.dll来快速实现自

2015-05-19 10:47:40 8663

转载 NGUI 相关插件总结

NGUI 3.8.2 - 开发者必备的GUI制作插件http://www.narkii.com/club/thread-358262-1.html NGUI: HUD Text v1.13 - NGUI辅助插件http://www.narkii.com/club/thread-358259-1.htmlFastGUI 3.0 for NGUIhttp

2015-05-19 10:43:23 1820

网易云相册PC客户端安装包

网易云相册要关闭了,使用的小伙伴需要备份自己的照片,但是官网的批量下载链接好像无法下载; 本软件亲测,好用,支持批量下载;

2019-03-08

H5版切水果

H5版切水果 源码 新手学习必备。包含源代码,声音,可以直接运行看效果。

2017-11-24

eclipse默认配色恢复文件

eclipse默认配色(内含恢复文件和恢复方法)

2013-03-14

Visual Assist X 1840 安装文件及破解文件

Visual Assist X是一款非常好的Microsoft Visual Studio 2005和Visual Studio .NET插件,支持C/C++,C#,ASP,Visual Basic,Java和HTML等语言,能自动识别各种关键字、系统函数、成员变量、自动给出输入提示、自动更正大小写错误、自动标示错误等,有助于提高开发过程的自动化和开发效率。 该安装文件适用于VC++6.0 VS2003 VS2005 VS2008 VS2010。

2012-04-05

50家顶尖企业笔试题大全

作者针对50家企业笔试题做的精心整理;包括大量笔试真题及答案;其中包括巨人网络java笔试基础题分享 3 百度笔试题 7 百度2010校招运维部门笔试 8 百度2010年校园招聘软件测试笔试题 9 2009.10.18-百度质量部笔试试题 12 百度08-9-24成都电子科技大学笔试题(第一套) 14 迅雷上机笔试 16 迅雷广州C++二笔题09.10.13ZZ 17 EMC--笔试 19 方正笔试 21 搜狐齐全的笔试题 22 Xml方面笔试题 24 网易游戏游戏开发工程师 25 SAP笔试(技术部分) 28 Oracle的网上测试 30 千橡笔试题 31 华为面试/笔试题目(附答案) 34 华为笔试网络题(3) 41 华为硬件笔试题 43 Adobe 笔试 46 Adobe公司笔试题 49 北京-泡泡网笔试题 51 微软的笔试题目 52 盛大笔试题 56 .net面试题 57 .net笔试题超级集合 58 阿尔卡特NGN software dev.笔试题目 64 广州-数数网笔试题 65 广州-领先面试题笔试题 67 Google中国笔试题目 68 中兴笔试题 72 intel的笔试题 83 微软的面试题及答案-超变态但是很经典 89

2010-10-19

最新华为java笔试题

最新的华为java笔试题,希望对即将JAVA面试的朋友们有所帮助!

2010-10-19

C、C++ 网络通讯笔试题大全

精心整理的很多笔试题,其中包括C、C++、网络、通讯,希望对您的笔试有帮助!

2010-10-18

Android SDK--开发环境详解

Android SDK 开发环境 详解

2010-10-18

SQL经典笔试题分享

SQL经典笔试题分享,希望对有数据库笔试的朋友们有帮助!

2010-10-14

根据窗体大小改变控件大小

MFC 界面 拖动 窗体大小改变控件大小

2010-10-14

C语言笔试试题.pdf

3套C语言的笔试题及答案!希望能对马上参加笔试的你有帮助!

2010-10-11

Modbus 调试精灵 V1.024

Modbus调试精灵采用vc编写,运行时不需要其它任何文件。可以调试具有modbus协议的所有设备,现在功能只涉及到了 03 06 16这几条常用的命令,我想用好这几条命令应该是满足现场调试了,软件非常小巧,但功能强大,是现场工程调试人员必备软件。

2010-08-27

MODBUS-TCP 协议 介绍

关于MODBUS-TCP 协议的介绍,详细介绍了MODBUS-TCP 的使用和基础! 初学的可以看一下!

2010-08-20

VC++ MFC 磁性窗体

VC++ MFC 界面开发 磁性窗体 类似是 千千静听 的界面!

2010-07-27

拖动没有标题栏的窗体

VC++ MFC 界面开发 拖动没有标题栏的窗体

2010-07-27

空空如也

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

TA关注的人

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