文档章节

随便聊聊游戏服务器

东方先生
 东方先生
发布于 2017/06/20 09:49
字数 349
阅读 42
收藏 0

码上生花,ECharts 作品展示赛正式启动!>>>

    游戏服务器到底是什么?这个问题一直不太好回答。是游戏业务处理?还是游戏的数据分享?还是其他。

    估计每个做过游戏服务器的技术都会有自己的见解。

    今天就一个java新手制作服务器的过程谁便聊聊。为什么使用java?因为我一直用java写服务器啊2333

     既然开始做服务器,那首先就要联网啊。自己写socket,使用框架?我们今天以MINA开始吧。最简单的方式。虽然MINA已经好多年不更新了。

     MINA最新的版本2.0.16

    

import java.io.IOException;
import java.net.InetSocketAddress;

import org.apache.mina.core.filterchain.DefaultIoFilterChainBuilder;
import org.apache.mina.transport.socket.nio.NioSocketAcceptor;

public class Server {
public static void main(String[] args) throws IOException {
	   NioSocketAcceptor acceptor = new NioSocketAcceptor();
       //获得过滤器
	   DefaultIoFilterChainBuilder chain = acceptor.getFilterChain();
       //设置Io处理handler
	   acceptor.setHandler(new IoHandler());
	   //绑定7788端口
	   acceptor.bind(new InetSocketAddress(7788));
}
}

最简版的服务器启动,并未加入编解码器

import org.apache.mina.core.service.IoHandlerAdapter;
import org.apache.mina.core.session.IdleStatus;
import org.apache.mina.core.session.IoSession;

public class IoHandler extends IoHandlerAdapter{
	/**
	 * 收到网络消息
	 */
	@Override
	public void messageReceived(IoSession session, Object message) throws Exception {
		super.messageReceived(session, message);
	}
	/**
	 * 网络关闭
	 */
	@Override
	public void sessionClosed(IoSession session) throws Exception {
		// TODO Auto-generated method stub
		super.sessionClosed(session);
	}
	/**
	 * 网络创建
	 */
	@Override
	public void sessionCreated(IoSession session) throws Exception {
		// TODO Auto-generated method stub
		super.sessionCreated(session);
	}
	/**
	 * 网络闲置
	 */
	@Override
	public void sessionIdle(IoSession session, IdleStatus status) throws Exception {
		// TODO Auto-generated method stub
		super.sessionIdle(session, status);
	}
	/**
	 * 网络开启
	 */
	@Override
	public void sessionOpened(IoSession session) throws Exception {
		// TODO Auto-generated method stub
		super.sessionOpened(session);
	}

	
	
}

最简版的 

© 著作权归作者所有

上一篇: LibGdx 安装使用
下一篇: LibGdx 常用API
东方先生

东方先生

粉丝 0
博文 3
码字总数 904
作品 0
技术主管
私信 提问
加载中
请先登录后再评论。
创业:产品经理诚找IOS工程师与服务器端工程师开发app产品

本人是一个具有几年经验的产品经理PM,现在已经辞职准备做自己的产品。产品原型demo,以及开发需求文档等都准备好了。 1、招募需求:现在需要找IOS开发工程师和服务器端开发工程师合作,一起...

NicLiang
2013/01/05
615
6
怎么看待领导叫你到办公室“随便聊聊”?

切记,在职场就没有“随便聊聊”这回事。 领导闲的没事干,找你聊闲篇,想把自己200多斤的大外甥女介绍给你,可能吗? 他吃饱了啊…… 放心吧,不会的。 不管形式看着多么随意,都一定有目的...

明哥聊求职
2018/06/22
0
0
聊聊创业

刚刚看了CTO们接着吼:创业公司几乎全是坑! 有一些感触,我们出来创业也有8,9个月了。我们肯定无法和文章中的那些人和团队比,我们技术就一个人,ui一人,商务1人,内容运营2人。我作为团队...

黑狗
2015/07/01
1.3K
17
我所知道的事情——前奏&怎样度过大学

混迹OSC有几个月了,看多了各种经历,听多了争吵,本来世界就五彩纷呈,我也把我所知道的以及我自己的看法分享出来。 内容组织随意,多一家之言,不喜欢的随便拍,反正我也不认识你,也为了让...

-放弃OSC-
2014/09/25
402
4
游戏服务器中的日志处理方式之一

在游戏开发的过程中,我们需要记录一些日志,以便以后了解游戏运行的情况,以及根据日志发现并处理游戏中的突发情况。 一,游戏日志可以分为以下几种: 1)系统日志 2)用户操作日志 3)异常日志...

shezjl
2015/07/05
1.8K
0

没有更多内容

加载失败,请刷新页面

加载更多

Springboot Actuator

Springboot Actuator 1. 启用springboot actuator <dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-actuator</artifactId></dependency>dep......

AngerWind
今天
18
0
OSChina 周日乱弹 —— 一个幼小的猕猴桃等待食物转身

1@ 辽元 起床以后, 突然发现时间已经10点啦! 不会晚了吧? 忽然想起来今天是周末, 13 “梦见自己变成猫后,一下子惊醒了,不对是笑醒了。” @冰峰雪座 觉得昨晚的睡眠质量实在不是很好, ...

小小编辑
今天
33
0
【第一行代码--Android】Kotlin入门教程精简版

Google在2017年的I/O大会上宣布Kotlin正式成为Android的以及开发语言,Android Studio也对Kotlin提供了全面支持。 怎样运行kotlin的代码?通过https://try.kotlinlang.org 或者 IDEA 以及 其...

Drop_Table_User
今天
11
0
解决Cannot download "https://github.com/sass/node-sass/releases/download/binding.nod的问题

输入命令解决即可 npm i node-sass --sass_binary_site=https://npm.taobao.org/mirrors/node-sass/

千年典韦
今天
10
0
测试jar 是否完整有错

cd WEB-INF/lib/for j in *.jar; do echo $j; jar tvf $j > /dev/null ; echo $j done; done

xiaodong16
今天
32
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部