ホームページ > php教程 > PHP开发 > 星际争霸之php代理模式

星际争霸之php代理模式

WBOY
リリース: 2016-06-07 17:23:09
オリジナル
1524 人が閲覧しました

星际争霸如果是多人对战模式,就会遇到一个问题:如何降低网络延时和负担。


为了确保数据的一致性,我们应该将每个玩家的发生变化的数据不停的传送到开地图的主机进行保存,一旦任何某个玩家的客户机读取数据,就必须向主机请求数据。


尽管大多数数据是交互性的,即使某个玩家的人口也是这样的,如果某个敌人的部队杀死了这个玩家的一个部队,立即影响了他的人口数量。


不过水晶矿和气矿有所不同,除了玩家自己的建造操作和农民采集,别的玩家影响不了这个数据。


所以我们考虑在客户机也放一个数据存储,玩家改变或者读取他的资源的时候,先操作本机数据,再通知主机。


代理(Proxy)模式示例:


为了方便,假设客户机已经通过远程包含或其他方法获取了主机上的php代码,它的代码如下:

也就是代理类

class ProxyDataProcess implements iDataProcess

{

  //主机操作数据的对象

  private $dataProcess;

  //构造函数

  public function 
ログイン後にコピー
関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のおすすめ
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート